How to Change Hostname on Linux: Quick Command-Line Methods

Table of Contents

Introduction to Changing Hostname in Linux

In the world of Linux administration, knowing how to change your system’s hostname is a fundamental skill. The hostname is a label that identifies your machine on a network. It’s how users and network services refer to your system. Whether you’re setting up a new server or configuring an existing one, changing the hostname can be essential for network management and system administration. In this article, I, Tracy, will guide you through the process of changing your Linux machine’s hostname with user intent in mind, providing a clear, step-by-step approach.

Understanding Hostname Types in Linux

Transient Hostname

This is the temporary name your system uses and can be changed easily without a reboot. It persists until the system is shut down or a new transient hostname is set.

Static Hostname

This is the name stored in the ‘/etc/hostname’ file and persists after a reboot. It’s the default and typically the fully qualified domain name (FQDN) of the machine.

Pretty Hostname

A more user-friendly name that is meant to be easily read and remembered by users. This can be a descriptive name of the device’s purpose or location.

Changing the Hostname Using Command Line

Using ‘hostnamectl’ Command

To change the hostname in most modern Linux distributions, you can use the ‘hostnamectl’ command. The ‘hostnamectl’ command allows you to change all three types of hostnames with ease.

sudo hostnamectl set-hostname new-hostname

Replace ‘new-hostname’ with your desired hostname. This method doesn’t require a system reboot, and changes are applied immediately.

Editing ‘/etc/hostname’ File

If you’re using an older version of Linux or prefer the traditional approach, you can edit the ‘/etc/hostname’ file directly:

sudo nano /etc/hostname

Replace the content of this file with your new static hostname and save the changes. To ensure the system recognizes these changes, you must reboot your system.

Updating Hosts File

After changing your hostname, you must update your ‘/etc/hosts’ file. This ensures the system can resolve the new hostname to its corresponding IP address properly.

sudo nano /etc/hosts

Locate the line starting with ‘’ or ‘’, followed by the old hostname, and replace it with the new one. Save the file once you’re done.

Verifying the Hostname Change

After making changes, it’s important to verify that the hostname was successfully updated:

hostnamectl status

This command will display the current system hostname and additional information.

FAQs on Changing Linux Hostname

Do I need to restart my network service after changing the hostname?

It is not typically necessary to restart the network service, but it’s a good practice to do so to ensure that all network services are aware of the new hostname:

sudo systemctl restart networking

Will changing the hostname affect installed applications?

It can, depending on the application. Some applications may rely on the hostname for licensing or configuration purposes. Review your application documentation to ensure no issues arise from a hostname change.

Can I change the hostname without sudo privileges?

No, changing the hostname requires administrative privileges, as it affects the entire system.

Is changing the hostname the same across all Linux distributions?

The ‘hostnamectl’ command is available on most modern Linux distributions, such as CentOS, Debian, Ubuntu, and Fedora. However, very old distributions or minimal installations might require manually editing configuration files.


Changing your Linux hostname is a straightforward process that helps maintain a cleaner, more organized network. Remember that proper system administration includes updating relevant files and services to reflect the change. If you’re looking to streamline your network setup or reorganize your server’s naming conventions, knowing how to change the hostname on a Linux system is a valuable skill. Feel free to revisit this article whenever you need a refresher on the steps involved.