JeOS VM noDHCP
ИНСТРУКЦИЯ
Начальная настройка виртуального сервера alt-p10-starterkit-jeos-systemd (x86_64) в условиях отсутствия DHCP в сегменте.
Целью инструкции является описание последовательности действий, в результате которых будет получена готовая работоспособная минимальная система JeOS (Just Enough Operating System) с доступом по ssh.
Инструкция позволяет:
- Определить модуль сетевого контроллера, интерфейс которого не поднят, т.к. DHCP в сегменте отсутствует.
- Создать ранее не существующие настройки сети с помощью Etcnet.
- Создать первого пользователя, отличного от root, с доступом через ssh, правом вызова "su -" и дружественной локалью.
- Активировать сервис sshd для доступа к хосту по сети.
- Обновить систему и ядро.
- Установить необходимые пакеты по необходимости и по вкусу.
Для данного примера была создана виртуальная машина (ВМ) VMware со следущими установками:
Compatibility: "ESXi 6.7 and later (VM version 14)", OS type: "Linux -> Other 4.x or later Linux (64-bit)".
Минимальные рекомендованные параметры ВМ: CPU 1, RAM 1 GB, HDD 4 GB, а также Network adapter: VMXNET 3.
При установке ОС нужно выбрать "форматирование всего виртуального диска", EFI, а также задать пароль root'а.
По получению системного рутового приглашения посмотрим название сетевого контроллера:
# lspci
Например: "Ethernet controller: VMware VMXNET3 Ethernet Controller (rev 01)".
Ищем название соответствующего модуля:
# lsmod
Например, в нашем случае: vmxnet3
Если IPv6 не понадобится, выполним:
# echo 'net.ipv6.conf.all.disable_ipv6 = 1' >> /etc/sysctl.conf # sysctl -f
Поскольку инструкция для случая без DHCP, то сетевой контроллер присутствует, но его состояние "DOWN",
IP-адрес не назначен и имя хоста имеет вид типа "adbvkjh6gwhsu".
Смотрим имя контроллера:
# ip a
Например, это ens192. Пропишем настройки сети через Etcnet. Дополнительные предположения:
Хост 192.168.1.100, шлюз 192.168.1.254, DNS 192.168.1.1 и 192.168.2.1, доменное имя хоста thehost.domain1.tld
# mkdir /etc/net/ifaces/ens192/ # cd /etc/net/ifaces/ens192/ # echo MODULE=vmxnet3 > options # echo TYPE=eth >> options # echo BOOTPROTO=static >> options # echo ONBOOT=yes >> options # echo DISABLED=no >> options # echo CONFIG_IPV4=yes >> options # echo NM_CONTROLLED=no >> options # echo SYSTEMD_CONTROLLED=no >> options # echo 192.168.1.100/24 > ipv4address # echo default via 192.168.1.254 > ipv4route # echo nameserver 192.168.1.1 > resolv.conf # echo nameserver 192.168.2.1 >> resolv.conf # echo search domain1.tld domain2.tld >> resolv.conf # cp resolv.conf /etc/resolv.conf # echo thehost.domain1.tld > /etc/hostname
Добавим первого пользователя (например, theuser) и дадим ему руль (чтобы обретать права рута через "su -"):
# useradd theuser # passwd theuser # groups theuser # usermod -aG wheel theuser
А также включим ему англоязычную локаль, дружественную, например, к символам псевдографики через PuTTY (если актуально):
# cd /home/theuser/ # echo LANGUAGE=en_US.UTF-8 > .i18n # echo LANG=en_US.UTF-8 >> .i18n # chmod 600 .i18n # chown theuser:theuser .i18n
Активируем сервис OpenSSH (благо он уже установлен в JeOS) и перезагрузимся (заодно и демон загрузится):
# systemctl enable sshd # sync && reboot
Т.к. сеть уже работает, то обновим систему:
# apt-get update && apt-get dist-upgrade
Установим пакет для обновления ядер, Midnight Commander (если надо), демон агента VMware:
# apt-get install update-kernel mc open-vm-tools
Активируем демон агента VMware, почистим диск, полюбуемся на свободное пространство, перезагрузимся:
# systemctl enable vmtoolsd # apt-get clean ; df # sync && reboot
Обновим ядро:
# update-kernel # apt-get clean ; df # sync && reboot
Можно также удалить старые ядра:
# remove-old-kernels ; df # sync && reboot
Далее по вкусу.