My system administrator installed minimal CentOS server and forgotten to setup the hostname. Now it has
localhost.localadmin. How would I change the hostname on CentOS?
Solution: A computer hostname represents a unique name that identifies a machine on a network. You need follow few rules in setting up the hostname:
- You shouldn’t assign the same hostname for two different machines on the same network.
- hostnames can contain letters, digits (from a to z, 0 to 9)
- hostnames can contain only the hyphen character
( - )as a special character
- hostnames can contain the dot special character
( . )
- hostnames can contain a combination of all three rules but must start and end with a letter or a number
- hostnames letters are case-insensitive.
- hostnames must contain between 2 and 63 characters long.
- recommended to use a fully-qualified domain name
This tutorial guides you through to change hostname on CentOS system.
Display the hostname on CentOS/RHEL 7/8
Below are few different ways you can view the current hostname:
-s flag is for the short name and
-f for the FQDN.
# hostname # hostname -s # hostname -f # cat /etc/hostname
# hostnamectl Static hostname: controller.tg.com Icon name: computer-server Chassis: server Machine ID: 79844c6ca7f24d85a5becbd55aa4a6c9 Boot ID: 406b7146411e403eaceefdc06a769eff Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-1160.80.1.el7.x86_64 Architecture: x86-64
Change Hostname on CentOS/RHEL 7/8
Open the file
/etc/hostname and change the
# vim /etc/hostname
/etc/hosts file and
replace any occurrence of the existing
computer name with the
# vim /etc/hosts
You can also use the
hostnamectl command as below:
# hostnamectl set-hostname your-new-hostname
Reboot the server for changes to take effect.
# systemctl reboot
Verify the Hostname on CentOS/RHEL 7/8
After the machine is rebooted, use the
hostnamectl command to verify that the hostname was successfully changed.