
Обычно имя хоста задается во время установки операционной системы или динамически назначается виртуальной машине при ее создании.
Существует ряд причин, по которым может потребоваться сменить имя хоста. Наиболее распространённая — это автоматическое назначение имени хоста при создании экземпляра.
В этом руководстве объясняется, как задать или изменить имя хоста в CentOS 8 без необходимости перезапуска системы.
Предпосылки
Прежде чем продолжить работу с этим руководством, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .
Понимание имен хостов
Имя хоста — это метка, идентифицирующая устройство в сети. Не допускается наличие двух или более устройств с одинаковым именем хоста в одной сети.
Существует три класса hostname : static , pretty и transient .
-
static— традиционное имя хоста. Оно хранится в файле/etc/hostnameи может быть задано пользователем. -
pretty— имя хоста в свободной форме в кодировке UTF8, используемое для представления пользователю. Например,Linuxize's desktop. -
transient— динамическое имя хоста, поддерживаемое ядром. DHCP-серверы или mDNS могут изменять временное имя хоста во время выполнения. По умолчанию оно совпадает соstaticименем хоста.
Рекомендуется использовать полное доменное имя ( FQDN ) как для static , так и для transient имен, например host.example.com .
Отображение текущего имени хоста
Чтобы просмотреть текущее имя хоста, выполните следующую команду:
hostnamectl

В этом примере текущее имя хоста — centos8.localdomain .
Изменение имени хоста
Метод 1: использование команды hostnamectl
В CentOS 8 и всех других дистрибутивах Linux, использующих systemd, вы можете изменить имя хоста системы и связанные с ним параметры с помощью команды hostnamectl . Синтаксис команды следующий:
sudo hostnamectl set-hostname host.example.comsudo hostnamectl set-hostname "Your Pretty HostName" --prettysudo hostnamectl set-hostname host.example.com --staticsudo hostnamectl set-hostname host.example.com --transient
Например, чтобы изменить статическое имя хоста системы на host.linuxgazette.ru , используйте следующую команду:
sudo hostnamectl set-hostname host.linuxgazette.ru
Чтобы задать красивое имя хоста для Linuxize's desktop , введите:
sudo hostnamectl set-hostname "Linuxize's desktop" --pretty
Команда hostnamectl не выводит данные. В случае успешного выполнения возвращается 0, в противном случае — ненулевой код ошибки.
Чтобы убедиться, что имя хоста было успешно изменено, используйте команду hostnamectl .
Способ 2: использование команды nmtui
nmtui — это инструмент на основе Curses для взаимодействия с NetworkManager. Его также можно использовать для установки или изменения имени хоста.
Запустите инструмент, введя его имя в терминале:
sudo nmtui
Используйте клавиши со стрелками для навигации по параметрам, выберите Set system hostname и нажмите Enter :

Введите новое имя хоста:

Нажмите Enter , чтобы подтвердить новое имя хоста:

Наконец, перезапустите службу systemd-hostnamed , чтобы изменения вступили в силу:
sudo systemctl restart systemd-hostnamed
Метод 3: Использование команды nmcli
nmcli — это инструмент командной строки для управления NetworkManager, который также может использоваться для изменения имени хоста системы.
Чтобы просмотреть текущее имя хоста, введите:
sudo nmcli g hostname
Чтобы изменить имя хоста на host.linuxgazette.ru используйте следующую команду:
sudo nmcli g hostname host.linuxgazette.ru
Чтобы изменения вступили в силу, перезапустите службу systemd-hostnamed :
sudo systemctl restart systemd-hostnamed
Заключение
Чтобы задать или изменить имя хоста в системе CentOS, используйте команду hostnamectl set-hostname за которой укажите новое имя хоста.
Если у вас есть вопросы, не стесняйтесь оставлять комментарии.
имя хоста centos Не используете CentOS 8?
Выберите другую ОС: центос 7 дебиан 10 дебиан 9 убунту 18.04 убунту 20.04 убунту 22.04
Связанные руководства