Как изменить имя хоста в CentOS 7/8 и Fedora 30/29/28?
Во время установки CentOS или Fedora вам предлагается указать имя хоста для сервера.
Это нормально, но изменение его после установки иногда неизбежно.
Имя хоста однозначно идентифицирует компьютер в сети.
Имя хоста сервера может содержать буквы (a-z, A-Z), цифры (0-9), дефис (-), точку (.), но должно заканчиваться буквой или цифрой.
Рекомендуется использовать описательное имя при назначении имен хостов для простой идентификации сервера / службы.
Прежде чем устанавливать имя хоста, сначала проверьте существующее имя хоста.
$ hostname -s cent-01 $ hostname -f cent-01 $ hostnamectl Static hostname: cent-01 Icon name: computer-vm Chassis: vm Machine ID: 596e865e6c594db98c4fd47fdb858138 Boot ID: 47d2f07eb2ea44b799ae6b0c0ba8600e Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-957.5.1.el7.x86_64 Architecture: x86-64
Где:
- -s, –short – используется для вывода короткого имени хоста
- -f, –fqdn, –long – используется для вывода полного имени хоста (FQDN)
Изменить имя хоста с помощью hostnamectl
Чтобы установить постоянное имя хоста с помощью команды hostnamectl, используйте команду.
sudo hostnamectl set-hostname <name> --static
Смотрите пример ниже:
sudo hostnamectl set-hostname backend-sms-app.mydomain.com --static
Подтвердите свое новое имя хоста.
$ hostnamectl Static hostname: backend-sms-app.mydomain.com Transient hostname: cent-01 Icon name: computer-vm Chassis: vm Machine ID: 596e865e6c594db98c4fd47fdb858138 Boot ID: 47d2f07eb2ea44b799ae6b0c0ba8600e Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-957.5.1.el7.x86_64 Architecture: x86-64
Этот параметр автоматически обновит файл /etc/hostname.
$ cat /etc/hostname
backend-sms-app.mydomain.com
Существует три класса имен хостов, которые можно установить с помощью команды hostnamectl.
- Transient hostname – это динамическое имя хоста, управляемое ядром, которое может быть изменено сервером DHCP или mDNS во время выполнения. Используйте флаг –transient, чтобы установить временное имя хоста.
- Pretty hostname – как следует из названия, это удобное имя хоста UTF8, используемое для представления пользователя машины. Используйте флаг –pretty, чтобы установить его.
- Static hostname – хранится в /etc/hostname для использования во время выполнения.
Назначьте Pretty hostname.
sudo hostnamectl set-hostname "Computingforgeeks PC" --pretty
Установить Transient hostname – обычно совпадает со статическим именем хоста.
sudo hostnamectl set-hostname backend-sms-app.mydomain.com --transient
Подтвердите свои настройки.
$ hostnamectl Static hostname: backend-sms-app.mydomain.com Pretty hostname: Computingforgeeks PC Icon name: computer-vm Chassis: vm Machine ID: 596e865e6c594db98c4fd47fdb858138 Boot ID: 47d2f07eb2ea44b799ae6b0c0ba8600e Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-957.5.1.el7.x86_64 Architecture: x86-64
Чтобы сопоставить новое имя хоста с IP-адресом, отредактируйте файл /etc/hosts и замените старое имя хоста новым.
$ sudo vim /etc/hosts
192.168.121.17 backend-sms-app.mydomain.com backend-sms-app
Там у вас есть это.
$ ping -c 2 backend-sms-app PING backend-sms-app.mydomain.com (192.168.121.17) 56(84) bytes of data. 64 bytes from backend-sms-app.mydomain.com (192.168.121.17): icmp_seq=1 ttl=64 time=0.019 ms 64 bytes from backend-sms-app.mydomain.com (192.168.121.17): icmp_seq=2 ttl=64 time=0.040 ms --- backend-sms-app.mydomain.com ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1000ms rtt min/avg/max/mdev = 0.019/0.029/0.040/0.011 ms