宇宙ドーナツ研究会

セキュリティ系お勉強メモ

LXCコンテナの移動

lxcコンテナを、デフォルトの /var/lib/lxc ではなく、/mnt/container に移したい。

コンテナの作成

ここの通りにやる。
CentOS7でLXC - Qiita

コンテナのアーカイブ

コンテナをアーカイブ化する。
--numeric-owner は、ファイルの所有者やグループの情報が、移動先でおかしくならないためのオプション。

# cd /var/lib/lxc/$NAME/
# tar --numeric-owner -czvf container_fs.tar.gz ./*

移動先で展開。

# cd /mnt/container
# tar --numeric-owner -xzvf container_fs.tar.gz ./*

ここ参考 ubuntu - How do I Backup / Move LXC containers? - Stack Overflow

デフォルトのディレクトリを変更する

方法はいくつかある。
Change lxc container directory - Stack Overflow

  • /etc/lxc/default.conf を修正する
  • lxc-xxx 系のコマンドを実行する時、-P オプションで目的のディレクトリを指定する
    – こっちの方法でやってみた。
lxc-start --name centos7 -P . -d
lxc-attach --name centos7 -P .

無事、/mnt/container 配下に置かれたコンテナを起動できた。