# /dev/kvm lxc.cgroup2.devices.allow = c 10:232 rwm lxc.mount.entry = /dev/kvm dev/kvm none bind,optional,create=file
宇宙の晴れ上がり
Linux, OSS, Software
LXCコンテナの中からKVMを使用する設定
ホストOSの/var/lib/lxc/[CONTAINER NAME]/configに以下を追加して再起動。(ホストOSがcgroup v1を使っている場合、cgroup2をcgroupに変更する)
USBストレージから起動するテキストベースLinuxイメージ
標記のひとつにDebian Liveイメージがある。
上記のサイトには各種Linuxディストリビューションのイメージがある。特に好みがなければ、以下のようなstandard版を使う。
上の画面でLive system (amd64)を選択する(ENTERキーを押す)と、次のようにコンソール画面が表示される。
配布サイト
上記のサイトには各種Linuxディストリビューションのイメージがある。特に好みがなければ、以下のようなstandard版を使う。
- debian-live-12.5.0-amd64-standard.iso
USBストレージへの書き込み
以下の例では、青色の/dev/sdxがUSBストレージのデバイス。/proc/partitionsやdmsgの出力などから実際に接続しているデバイスを特定してそれに変更するdd if=debian-live-12.5.0-amd64-standard.iso of=/dev/sdx bs=1M上記のbs=1Mは、ブロックサイズを1MiBにするオプション。昔、特定の環境でブロックサイズを一定サイズ以上に設定しないと極端に遅いことがあったので習慣として付与している。最近のほとんどのLinux環境では、なくても問題ないと思われる。
おまけ:QEMUの実行例
#!/bin/sh QEMU=qemu-system-x86_64 IMAGE=debian-live-12.5.0-amd64-standard.iso MEMORY=2048 ${QEMU} \ -cpu host \ -enable-kvm \ -m ${MEMORY} \ -device nec-usb-xhci,id=xhci \ -drive id=DRIVE_ID,format=raw,file=${IMAGE},if=none \ -device usb-storage,bus=xhci.0,drive=DRIVE_ID上記スクリプトを実行する次のような画面が表示される。
参考
QEMUでドライブを追加するオプション例X11でのWindowsのスクリーンショットの撮り方
対象WindowのIDを取得
xwininfoを使用wxdコマンド実行
下記では青字部分がWindow ID。適宜変更。wxd -id 0x1000011 | convert xwd:- screenshot.png上記のパイプの右側は、ImageMagickを使って画像をpngに変換する。
Linuxのコンソールのディスプレイをオフする
kernelのコマンドラインにconsoleblank=[N] (Nはオフまでの秒数)を追加する。
DebianやUbuntuでは、/etc/default/grubのGRUB_CMDLINE_LINUX_DEFAULTに以下のようにconsoleblankオプションを追加する。
GRUB_CMDLINE_LINUX_DEFAULT="quiet consoleblank=60"その後、grub.confを更新して再起動する。
update-grub2 reboot
LXCコンテナにログインできない、または、時間がかかる時の対処
ホストOSのログに次のメッセージがある場合、AppArmorによってコンテナ内の動作 (この場合mount) がブロックされている。
このログは、ホストOSがUbuntu 20.04、コンテナがDebian 12のケース。
kernel: audit: type=1400 audit(1705193372.029:49): apparmor="DENIED" operation="mount" info="failed perms check" error=-13 profile="lxc-sakura_</var/lib/lxc>" name="/run/systemd/unit-root/" pid=4456 comm="(d-logind)" srcname="/" flags="rw, rbind"ホストOSの/var/lib/lxc/[Container名]/configに次の2行を加えて、LXCコンテナを起動
lxc.apparmor.profile = generated lxc.apparmor.allow_nesting = 1
参考
LXCコンテナの中でDockerを使用するための設定gradleでのテスト関係のオプション例
ビルドのみ(テストしない)
./gradlew build -x test
指定のテストを実行
./gradlew test --tests "SomeTest.*"
登録:
投稿 (Atom)