[Sysadmins] Поломалось lxc-create если на lvm

Максим Васюк vasukma на yandex.ru
Пт Дек 14 14:19:58 MSK 2018


Всем, привет!

alt-server-8.2-x86_64

Всё было хорошо.
lxc-create -n test_04 -t altlinux -B lvm --vgname vg_test --lvname test_04_root --fstype ext4
отрабатывало как надо.
Конфиг падал в /var/lib/lxc/test_04/config
Автоматом создавался том lvm. Затем я запускал контейнер и он работал.
И
lxc-destroy -n test_04 
отрабатывала как надо.
Удаляла контейнер и том lvm автоматически.
По кругу несколько раз, было всё пучком.

Потом я решил посмотреть, как себя ведёт lxc-create c параметром -P
lxc-create -P /root/tmp -n test_04 -t altlinux -B lvm --vgname vg_test --lvname test_04_root --fstype ext4
Контейнер создался и lvm том создался.
Часть конфига лежала в /var/lib/lxc/test_04, а часть в /root/tmp/test_04.
Меня это не устроило и решил удалить контейнер.
Уже не помню точно, вроде как, в /var/lib/lxc каталог удалился, а вот в /root/tmp нет, и самое подозрительное что том lvm тоже остался.
Т.к. lxc-create у меня не хотел создавать контейнеры на уже созданном lvm томе, я его удалил руками.

После этого lxc-create перестала создавать контейнеры, если указать в -B lvm.
Если -B dir то отрабатывает без ошибок. С lvm ни в какую.
Перезагрузка тоже не помогает. Что где прописалось где, непонятно.
Причем lvm том создается, а накатить туда фс и примонтировать она уже не в состоянии.
Кроме выхлопа в консоль, больше логов нигде не нашел.

# lxc-create /root/tmp -n test_06 -t altlinux -B lvm --vgname vg_test --fstype ext4
File descriptor 3 (/var/lib/lxc/test_06/partial) leaked on lvcreate invocation. Parent PID 1681: lxc-create
File descriptor 7 (pipe:[16464]) leaked on lvcreate invocation. Parent PID 1681: lxc-create
WARNING: ext4 signature detected on /dev/vg_test/test_06 at offset 1080. Wipe it? [y/n]: y
  Wiping ext4 signature on /dev/vg_test/test_06.
  Logical volume "test_06" created.
lxc-create: bdev/bdev.c: mount_unknown_fs: 780 failed to determine fs type for '/dev/vg_test/test_06'
lxc-create: lxccontainer.c: create_run_template: 1115 Error mounting rootfs
lxc-create: lxccontainer.c: create_run_template: 1290 container creation template for test_06 failed
File descriptor 3 (/run/lxc/lock/var/lib/lxc/.test_06) leaked on lvremove invocation. Parent PID 1680: lxc-create
File descriptor 7 (pipe:[16464]) leaked on lvremove invocation. Parent PID 1680: lxc-create
  Logical volume "test_06" successfully removed
lxc-create: tools/lxc_create.c: main: 318 Error creating container test_06

 --
Васюк Максим


Подробная информация о списке рассылки Sysadmins