Every Linux machines comes with a host name, which is normally configured during system installation. It is stored in /etc/hostname and normally displayed at the terminal as \h in the PS1 environment variable.

Current host name of the system can be viewed via hostname command line tool or by viewing the content of the /etc/hostname.

System host name in Linux could be changed via hostname command as below but it is not persistent and will return to the original host name after system reboot.

user@host:~$ hostname
host
user@host:~$ sudo hostname newhost
user@host:~$ hostname
newhost
user@host:~$ cat /etc/hostname
host

The proper way to change system host name in Linux is by using hostnamectl tool at the terminal.

Change system hostname in Linux:

  1. Launch a terminal application.
  2. Check current host name.
    user@host:~$ hostname
    host
  3. Change host name with hostnamectl.
    user@host:~$ sudo hostnamectl set-hostname newhost
  4. Check current hostname again to confirm.
    user@host:~$ hostname
    newhost
  5. Check /etc/hostname to ensure change is saved and persistent.
    user@host:~$ cat /etc/hostname
    newhost
  6. Launch new shell to test if change is successful.
    user@host:~$ bash
    user@newhost:~$
Leave a comment:
Share!