Записки программиста Программирование и не только

25Дек/240

Поднимаем LXC (без LXD) на CentOS 9

Нужно было развернуть на сервере под CentOS 9 контейнеризацию LXC так, чтобы контейнеры получали свой собственный IP адрес из локальной сети и были доступны извне

Возникшие трудности: хост машина была развернута на VMWare с запрещенным "promiscuous mode" и контейнеры получали IP, но не имели доступа в локальную сеть и интернет. Пришлось выставить "Promiscuous Mode" = Accept и "Forged Transmits" = Accept

Ну, а дальше всё просто:

# install lxc

dnf update -y
dnf install -y epel-release
dnf install -y lxc lxc-templates container-selinux

# set up bridge network (dhcp container)

systemctl restart NetworkManager

nmcli connection add type bridge con-name br0 ifname br0
nmcli connection modify ens160 master br0
nmcli connection up ens160
nmcli connection up br0

# change default config

vi /etc/lxc/default.conf

lxc.net.0.link = lxcbr0
to
lxc.net.0.link = br0

# move lxc to another folder

mkdir /home/lxc/large_files/lxc-files
mkdir /home/lxc/large_files/lxc-files/{var_cache_lxc,var_lib_lxc}

mv /var/cache/lxc/* /home/lxc/large_files/lxc-files/var_cache_lxc/
rmdir /var/cache/lxc
ln -s /home/lxc/large_files/lxc-files/var_cache_lxc/ /var/cache/lxc

mv /var/lib/lxc/* /home/lxc/large_files/lxc-files/var_lib_lxc/
rmdir /var/lib/lxc
ln -s /home/lxc/large_files/lxc-files/var_lib_lxc/ /var/lib/lxc

# enable lxc service

systemctl start lxc
systemctl enable lxc

# use

DOWNLOAD_KEYSERVER="keyserver.ubuntu.com" lxc-create -n mycontainer -t download -- -d ubuntu -r jammy -a amd64
lxc-start -n mycontainer

# console dont worked - need attach

lxc-attach -n mycontainer

# change password and install openssh

passwd ubuntu
apt install openssh-server

# and exit
ctrl+d

Использованные источники

  • https://ahelpme.com/linux/centos-stream-9/run-lxc-centos-stream-9-container-with-bridged-network-under-centos-stream-9/
  • https://ahelpme.com/linux/centos-8/replace-current-interface-configuration-with-a-bridge-device-using-nmcli-networkmanager/
  • https://access.redhat.com/solutions/647383
  • 3Дек/180

    vboxwebsrv в Ubuntu 14.04

    После обновления Ubuntu с 10 до 14 через upgrade перестал запускаться vboxwebsrv.
    Причем в логах всё нормально.

    Конфиг vboxwebsrv (/etc/default/virtualbox):
    VBOXWEB_USER='box'
    VBOXWEB_HOST=127.0.0.1
    VBOXWEB_PORT=18083

    Конфиг phpvirtualbox (/var/www/html/vbox/config.php)
    /* Username / Password for system user that runs VirtualBox */
    var $username = 'box';
    var $password = '*';

    /* SOAP URL of vboxwebsrv (not phpVirtualBox's URL) */
    var $location = 'http://localhost:18083/';

    При попытке зайти на Веб после логина получаем стабильно:
    Could not connect to host (http://127.0.0.1:18083/)

    Все советы были испробованы и выяснилось, что vboxwebsrv, собсвенно и не запускается до конца. Т.е. его не видно при промотре открытых портов через
    # netstat -tln

    Далее пошел по подсказке - запустить vboxwebsrv вручную, а не как сервис.
    vboxwebsrv -v

    И, вот оно:
    00:00:00.150329 SQPmp #### SOAP FAULT: [SOAP-ENV:Server]

    И правда, сервер то не стартует.

    Причем ни:
    vboxwebsrv -H localhost -v
    vboxwebsrv -H 127.0.0.1 -v

    эффекта не дают...

    Была найдена чудесная статья:
    https://ubuntuforums.org/showthread.php?t=2196096
    Оказывается, глючная ubuntu 14.04 с, не менее глючным, virtualbox не умеют в ip4...

    Решение:
    Исправляем конфиги:
    * Конфиг phpvirtualbox (/var/www/html/vbox/config.php)
    /* SOAP URL of vboxwebsrv (not phpVirtualBox's URL) */
    var $location = 'http://ip6-localhost:18083';

    * Конфиг vboxwebsrv (/etc/default/virtualbox):
    VBOXWEB_HOST=::1

    И не забываем проверить /etc/hosts:
    # The following lines are desirable for IPv6 capable hosts
    ::1 ip6-localhost ip6-loopback

    Ключевые слова: phpvirtualbox, vboxwebsrv, ubuntu

    Метки записи: Нет комментариев
    24Апр/130

    Запуск инсталятора Fedora 18 на 256Мб ОЗУ

    Для установки ОС на машины с ОЗУ менее 512 Мб необходимо добавить в опцию загрузчика:
    inst.memcheck=0

    В общем строка будет выглядеть так:
    vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=Fedora\x2018\x20i386 quiet inst.memcheck=0

    Ключевые слова:
    fedora 18 installer 256 boot

    Метки записи: Нет комментариев