hostname command in Linux with examples
Last Updated :
19 Jul, 2024
hostname command in Linux is used to obtain the DNS (Domain Name System) name and set the system’s hostname or NIS (Network Information System) domain name. A hostname is a name given to a computer and attached to the network. Its main purpose is to uniquely identify over a network.
Syntax of the `hostname` command in Linux
hostname -[option] [file]
Example: We obtain the system hostname by just typing the hostname without any attributes.
hostname
Options |
Description |
Syntax |
-a |
This option is used to get the alias name of the host system (if any). It will return an empty line if no alias name is set. This option enumerates all configured addresses on all network interfaces.
|
hostname -a
|
-A |
This option is used to get all FQDNs (Fully Qualified Domain Name) of the host system. It enumerates all configured addresses on all network interfaces. An output may display the same entries repetitively.
|
hostname -A
|
-b |
Used to always set a hostname. Default name is used if none specified.
|
hostname -b
|
-d |
This option is used to get the Domain if local domains are set. It will not return anything (not even a blank line) if no local domain is set.
|
hostname -d
|
-f |
This option is used to get the Fully Qualified Domain Name (FQDN). It contains short hostname and DNS domain name.
|
hostname -f
|
-F |
This option is used to set the hostname specified in a file. Can be performed by the superuser(root) only.
|
sudo hostname -F filename
|
-i |
This option is used to get the IP (network) addresses. This option works only if the hostname is resolvable.
|
hostname -i
|
-I |
This option is used to get all IP(network) addresses. The option doesn’t depend on resolvability of hostname.
|
hostname -I
|
-s |
This option is used to get the hostname in short. The short hostname is the section of hostname before the first period/dot(.). If the hostname has no period, the full hostname is displayed.
|
hostname -s
|
-V |
Gives version number as output.
|
hostname -V
|
Outputs of Options available in `hostname` command
1) `-a` Option in `hostname` command in Linux
Display all aliases of the host.
Syntax:
hostname -a
hostname -a
2) `-A` Option in `hostname` command in Linux
Syntax:
hostname -A
hostname -A
3) `-b` Option in `hostname` command in Linux
Syntax:
hostname -b
hostname -b
4) `-d` Option in `hostname` command in Linux
Display the domain name of the host if any.
Syntax:
hostname -d
hostname -d
5) `-f` Option in `hostname` command in Linux
Display the fully qualified domain name (FQDN) of the host.
Syntax:
hostname -f
hostname -f
6) `-F` Option in `hostname` command in Linux
This option is used to set the hostname specified in a file. Can be performed by the superuser(root) only.
Syntax:
sudo hostname -F filename
sudo hostname -F filename
7) `-i` Option in `hostname` command in Linux
Display the IP address of the host
Syntax:
hostname -i
hostname -i
8) `-I` Option in `hostname` command in Linux
This option is used to get all IP (network) addresses. The option doesn’t depend on resolvability of hostname.
hostname -I
hostname -I
9) `-s` Option in `hostname` command in Linux
Display the short hostname of the host.
Syntax:
hostname -s
hostname -s
10) `-V` Option in `hostname` command in Linux
Display the version information about the hostname
Syntax:
hostname -V
hostname -V
11) How to set hostname in Linux
Set the hostname of the system temporarily.
Syntax:
sudo hostname NEW_HOSTNAME
sudo hostname geeksforgeeks
Replace NEW_HOSTNAME with the new hostname you want to set. (Here we have changed it to “geeksforgeeks”)
Set the hostname of the system permanently.
To set the hostame of our system permanently we have to go inside “/etc/hostname” using text editor and change hostname to the hostname we want.
here we can change hostname permanently.
Conclusion
This command `hostname` in Linux seems so simple but at the same time it is a very powerful command that allows users to view or set the hostname of the system. It is important for users to know the `hostname` command to manage their Linux system effectively. One can easily understand by this article, as we have discussed many options and also their output, options like `-a`, `-A`, `-b`, `-d`, `-f`, `-F`, `-i`, `-I`, `-s` and `-V`.
hostname command in Linux with examples – FAQs
What is the hostname command used for in Linux?
The hostname
command in Linux is used for showing or setting the system’s hostname. The hostname is a label that is assigned to a device (a server, a computer, or any other device) connected to a network, which is used to identify the device in various forms of electronic communication such as the World Wide Web, email, or in user interfaces.
How to display the current hostname?
To display the current hostname of your system, you can use the hostname
command without any additional options:
hostname
This command will output the current hostname to your terminal window.
How to set a new hostname?
To temporarily change the hostname of your Linux system, you can use the hostname
command followed by the new hostname. For example, to change the hostname to new-hostname
, you would use:
sudo hostname new-hostname
This change will not persist across reboots. It only affects the current session.
How to make the hostname change permanent?
To permanently change the hostname on most modern Linux distributions (like Ubuntu, Debian, CentOS), you need to edit the hostname file and possibly other configuration files:
1. Edit the /etc/hostname
file: This file contains only the hostname of the system.Replace the current hostname with your new hostname in this file.
sudo nano /etc/hostname
2. Edit the /etc/hosts
file: This file maps hostnames to IP addresses. Add a new entry for your hostname or modify the existing one.Find the line starting with 127.0.0.1
or 127.0.1.1
and replace the old hostname with the new one.
sudo nano /etc/hosts
3. Use hostnamectl (systemd systems): If your system uses systemd
, you can use hostnamectl
to change the hostname permanently:
sudo hostnamectl set-hostname new-hostname
After these changes, reboot your system to apply them.
Can hostname be used to display the FQDN?
Yes, the hostname
command can display the Fully Qualified Domain Name (FQDN) of the host. The FQDN is the complete domain name for a specific computer, or host, on the Internet. To show the FQDN, you can use the -f
option:
hostname -f
This command will display the full domain name, which includes the hostname and all domain levels. For the hostname -f
command to return the FQDN, the hostname must be correctly set in the /etc/hosts
or in the DNS system, associating the hostname with its full domain counterpart.