Как изменить имя хоста в Ubuntu 22.04

Изменить имя хоста в Ubuntu

Имя хоста — это удобочитаемая метка, назначаемая устройству и используемая для его идентификации в сети. Имя хоста задаётся во время установки операционной системы или динамически назначается виртуальной машине при её создании.

Каждая машина в сети должна иметь уникальное имя хоста. Наличие двух или более машин с одинаковым именем хоста в одной сети может привести к проблемам.

Изменить имя хоста системы могут только пользователи с правами root или sudo . В Ubuntu изменить имя хоста системы и связанные с ним настройки можно с помощью графического интерфейса или команды hostnamectl .

В этой статье объясняется, как задать или изменить имя хоста в Ubuntu 22.04 без необходимости перезапуска системы, используя командную строку или графический интерфейс.

Отображение текущего имени хоста

Чтобы просмотреть текущее имя хоста, вызовите команду hostnamectl без аргументов:

 hostnamectl 
Ubuntu 22.04 hostnamectl

В этом примере текущее имя хоста — ubuntu2004.localdomain .

Изменение имени хоста системы с помощью hostnamectl

Эта команда hostnamectl распознает три различных класса имен хостов:

  • static — традиционное имя хоста. Оно хранится в файле /etc/hostname и может быть задано пользователем.
  • pretty — описательное имя хоста в свободной форме в кодировке UTF8, используемое для представления пользователю. Например, Linuxize's laptop .
  • transient — динамическое имя хоста, поддерживаемое ядром. DHCP-серверы или mDNS могут изменять временное имя хоста во время выполнения. По умолчанию оно совпадает со static именем хоста.

Как правило, рекомендуется использовать полное доменное имя ( FQDN ), например host.example.com , как для static , так и transient имен.

Изменение имени хоста системы — простая процедура. Синтаксис команды hostnamectl следующий:

 sudo hostnamectl set-hostname host.example.com sudo hostnamectl set-hostname "Your Pretty HostName" --pretty sudo hostnamectl set-hostname host.example.com --static sudo hostnamectl set-hostname host.example.com --transient

Например, чтобы изменить статическое имя хоста системы на zoe.linuxgazette.ru , используйте следующую команду:

 sudo hostnamectl set-hostname zoe.linuxgazette.ru

При желании вы также можете задать красивое имя хоста:

 sudo hostnamectl set-hostname "Linuxize's laptop" --pretty

hostnamectl не выводит данные. В случае успешного выполнения возвращается 0; в противном случае — ненулевой код ошибки.

Статическое имя хоста хранится в файле /etc/hostname , а корректное имя хоста хранится в файле /etc/machine-info .

Чтобы убедиться, что имя хоста было изменено, введите команду hostnamectl :

 sudo hostnamectl

Ваше новое имя хоста будет выведено на терминал:

 Static hostname: zoe.linuxgazette.ru Pretty hostname: Linuxize's desktop Icon name: computer-vm Chassis: vm Machine ID: a04e3543f3da460294926b7c41e87a0d Boot ID: aa31b274703440dfb622ef2bd84c52cb Virtualization: oracle Operating System: Ubuntu 22.04 LTS Kernel: Linux 5.4.0-26-generic Architecture: x86-64

Изменение имени хоста в графическом интерфейсе

Если вы используете Ubuntu Desktop, вы можете использовать настройки GNOME, чтобы изменить имя хоста вашего компьютера.

Откройте системное меню в правом верхнем углу и нажмите «Настройки», как показано ниже:

Настройки Ubuntu 22.04

В окне «Настройки» перейдите на вкладку «О программе» и нажмите «Имя устройства». Введите новое имя хоста вашей системы в открывшемся диалоговом окне и нажмите кнопку «Переименовать».

Ubuntu 22.04 hostname gui

Это изменит как статические, так и красивые имена.

Файл /etc/hosts

Если имя хоста вашей системы не имеет публичного DNS-имени, вам необходимо сопоставить имя хоста с локальным IP-адресом.

Файл /etc/hosts используется для сопоставления IP-адресов с именами хостов. Это сопоставление используется сетевыми приложениями, работающими на экземпляре.

Откройте файл и измените старое имя хоста на новое:

/etc/hosts

 127.0.0.1 localhost 127.0.0.1 zoe.linuxgazette.ru # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters

Облачный сервер Ubuntu

Если вы используете Ubuntu на облачном экземпляре и установлен пакет cloud-init , изменённое имя хоста будет восстановлено после перезагрузки системы. Этот пакет обычно устанавливается по умолчанию в образах, предоставляемых облачными провайдерами, и используется для инициализации облачных экземпляров.

Чтобы сделать изменение постоянным, отредактируйте файл /etc/cloud/cloud.cfg .

 sudo vim /etc/cloud/cloud.cfg

Найдите preserve_hostname и измените значение с false на true :

/etc/cloud/cloud.cfg

 # This will cause the set+update hostname module to not operate (if true) preserve_hostname: true

Сохраните файл и закройте редактор.

Если файл отсутствует в вашей системе, это означает, что пакет cloud-init не установлен и вам не нужно вносить никаких дальнейших изменений.

Заключение

Мы показали вам, как легко изменить имя хоста в установке Ubuntu 22.04 без перезагрузки компьютера.

Существует ряд причин, по которым может потребоваться изменить имя хоста. Наиболее распространённая — это автоматическое назначение имени хоста при создании экземпляра.

Если у вас есть вопросы, не стесняйтесь оставлять комментарии.

Имя хоста Ubuntu Не используете Ubuntu 22.04?
Выберите другую ОС:
центос 7 центос 8 дебиан 10 дебиан 9 убунту 18.04 убунту 20.04

Связанные руководства

Источник

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

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