Hostname в Ubuntu 22.04 не сохраняется

Hostname в Ubuntu 22.04 не сохраняется

Что делать, если hostname в Ubuntu 22.04 не сохраняется даже после перезагрузки? Разбираем причину и даём пошаговое решение с отключением cloud-init.

Иногда при смене имени хоста в Ubuntu 22.04 привычными способами, оно всё равно сбрасывается после перезагрузки. Чаще всего причина в cloud-init — службе, которая переустанавливает hostname при запуске. Это типично для VPS, LXC-контейнеров и облачных образов Ubuntu.

Стандартный подход

Меняем хостнейм и прописываем новый в файле hosts

sudo hostnamectl set-hostname my-hostname
sudo nano /etc/hosts

Замените строку:

127.0.1.1    старое_имя

на:

127.0.1.1    my-hostname

Если после перезагрузки имя всё ещё сбрасывается — виноват cloud-init.

Решение 1: Полное отключение cloud-init

Создайте файл-флаг, чтобы навсегда отключить cloud-init:

sudo touch /etc/cloud/cloud-init.disabled

Теперь снова задайте hostname:

sudo hostnamectl set-hostname my-hostname
sudo nano /etc/hosts

И перезагрузитесь:

sudo reboot

Решение 2: Без полного отключения cloud-init

Если cloud-init нужен, но менять hostname ему не надо:

    1. Создайте файл конфигурации:
sudo nano /etc/cloud/cloud.cfg.d/99_hostname.cfg
    1. Добавьте в него:
preserve_hostname: true
    1. Примените hostname как обычно:
sudo hostnamectl set-hostname my-hostname
    1. Обновите /etc/hosts и перезагрузите систему:
sudo reboot

Проверка

После перезагрузки проверьте:

hostnamectl

Теперь hostname не будет сбрасываться при запуске.


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Unlix.ru © Все права защищены 2015 - 2025

Копирование материалов с сайта Unlix.ru без указания полной ссылки на источник ЗАПРЕЩЕНО!