LXCのコンテナから、ホストのHDDを参照したい。
色々やり方がある。一番かんたんなのは privileged をつけて特権コンテナにする。
lxc launch ubuntu:xenial <container name> -c security.privileged=true
実際にやってみると。次のようになる。ちゃんとホスト側のブロックデバイスやUSBデバイスが見え、マウントはできることがわかる。
takuya@raspberrypi:~ $ lxc launch ubuntu:xenial test -c security.privileged=true takuya@raspberrypi:~ $ lxc shell test root@test:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop1 7:1 0 54.3M 1 loop loop4 7:4 0 4.7G 0 loop / loop2 7:2 0 83.6M 1 loop loop0 7:0 0 20K 1 loop sda 8:0 0 447.1G 0 disk `-sda1 8:1 0 447.1G 0 part mmcblk0 179:0 0 29.7G 0 disk |-mmcblk0p2 179:2 0 29.5G 0 part `-mmcblk0p1 179:1 0 256M 0 part loop3 7:3 0 45.9M 1 loop root@test:~# lsusb Bus 002 Device 002: ID 056e:6a06 Elecom Co., Ltd Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 25a7:fa61 Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
非特権コンテナでも見えるには見えるのだけれど。マウントはできません。
root@nonpre-container:~# mount /dev/sda1 /mnt mount: /mnt: permission denied.
config disk add
ディスクをAddすることもできる。
lxc config device add container01 homedir disk source=/home/ path=/home/