Очень краткая шпаргалка для себя, чтобы снова не искать инфу по осколкам памяти и закоулкам сети.
Итак, селим Ubuntu Server на статику. В моём случае — Ubuntu Server версии 20.04, но способ вполне рабочий и для других релизов начиная с 18.04 или везде, где есть netplan.
Ахтунг номер раз: я предпочитаю пользоваться редактором nano — поэтому все файлы конфигураций я открываю именно им.
Как правило, у утилиты netplan уже есть конфигурационный файл, настроенный на получение автоматического IP-адреса. Вот именно его и надо отредактировать:
sudo nano /etc/netplan/00-installer-config.yaml
Стандартное содержимое файла должно выглядеть примерно так:
Если nano вернул пустое содержимое файла — покиньте редактор без сохранения изменений и сгенерируйте файл конфигурации утилиты с помощью команды:
sudo netplan generate
Допустим у моего сервера должен быть статический адрес 192.168.1.100 с маской 255.255.255.0 (она же 24) и шлюзом 192.168.1.1. Тогда вид файла 00-installer-config.yaml должен быть приведён к такому виду:
# This is the network config written by 'subiquity'
network:
ethernets:
# Имя настраиваемого сетевого адаптера
eth0:
# Отключение автоматического IP для IPv4
dhcp4: no
# Отключение автоматического IP для IPv6
dhcp6: no
# Установка статического адреса и маски подсети
addresses: [192.168.1.100/24]
# Шлюз текущего адреса
gateway4: 192.168.1.1
# DNS серверы
nameservers:
addresses: [192.168.1.1, 8.8.8.8]
После сохранения конфигурации, тестируем наши настройки с помощью:
sudo netplan try
Если есть ошибки — исправляем. Если всё хорошо — сохраняем конфигурацию.
sudo netplan apply
Перезагружаться не обязательно. Только если очень хочется.
Ахтунг номер два: язык YAML очень чувствителен к пробелам. Старайтесь разделять блоки 2 пробелами. В процессе тестирования файла конфигурации netplan скажет, что и где не так.
В завершении — узнать текущий IP в Ubuntu можно так:
sudo ip a
А если есть выход в Интернет — устанавливаем утилиту net-tools:
sudo apt install net-tools
И вызываем знакомый и привычный ifconfig.
