Моя корневая файловая система заполнена, и я хотел бы создать контейнер в моем домашнем каталоге, в котором много свободного места. Я сделал такой конфигурационный файл:
LXC_AUTO="true"
LXC_DIRECTORY="/home/al/lxc"
И я создаю такой контейнер:
$ sudo lxc-create -f lxc.conf -t ubuntu -n foo
Но все равно заполняется / var.
Как я могу сказать lxc создать контейнер в моем домашнем каталоге?
РЕДАКТИРОВАТЬ № 2:
Вау, не могу поверить, что пропустил это:
При первой установке lxc (версия: 0.8.0 ~ rc1-8 + deb7u1) ("apt-get install lxc") он спросит вас, в какой каталог вы хотите поместить контейнеры.
РЕДАКТИРОВАТЬ # 2 КОНЕЦ
РЕДАКТИРОВАТЬ:
Видимо, если установить "lxc" из исходников командой:
make install --localstatedir=/home
он должен позволять автоматическое создание VE в каталоге / home. Это повлияет на все инструменты lxc- *.
ИЗМЕНИТЬ КОНЕЦ
Вам нужно отредактировать «lxc-create» (для меня он находится в «/ usr / bin»). В том файле, где определены localstatedir и lxc_path, вам нужно это изменить.
Исходя из того, что вы хотите, вам понадобятся:
localstatedir=/home
lxc_path=${localstatedir}/al/lxc
Или возможно:
localstatedir=/home/al
lxc_path=${localstatedir}/lxc
Моя установка:
localstatedir=/home
lxc_path=${localstatedir}/lxc
Я только что понял это; он создает контейнер без каких-либо ошибок, но я не тестировал его дальше. Что касается строки «LXC_DIRECTORY =» в файле конфигурации «/ etc / default / lxc», она должна соответствовать строке «lxc_path =» в файле «lxc-create», иначе она создаст rootfs в двух разных каталогах.
Итак, ваш файл конфигурации "/ etc / default / lxc" должен читать:
LXC_DIRECTORY="/home/al/lxc"
а мой гласит:
LXC_DIRECTORY="/home/lxc"
Это, конечно, обходной путь, и я не знаю, как это повлияет на другие инструменты lxc- *. Их также может потребоваться отредактировать по мере необходимости; возможно, кто-то еще может подсказать, как установить lxc с этим встроенным в программу.
Вы можете переопределить путь к контейнеру с помощью --lxcpath
/-P
такой вариант:
sudo lxc-create -P /home/al/lxc -f lxc.conf -t ubuntu -n foo