hostname命令用于显示和设置系统的主机名称。环境变量HOSTNAME也保存了当前的主机名。在使用hostname命令设置主机名后,系统并不会永久保存新的主机名,重新启动机器之后还是原来的主机名。如果需要永久修改主机名,需要同时修改/etc/hosts和/etc/sysconfig/network的相关内容,可以使用hostnamectl命令。
用uname -n也可以查看主机的hostname值
[root@aha ~]# uname -n
aha
[root@aha ~]# hostname
aha
具体参数
hostname - 用来显示或者设置当前系统的主机名,主机名被许多网络程序使用,来标识主机。
-a,--alias
显示主机的别名(如果使用了的话).
-d,--domain
显示DNS域名.不要使用命令 domainname 来获得DNS域名,因为这会显示NIS域名而非DNS域名.可使用 dnsdomainname 替换之.
-F,--file filename
从指定文件中读取主机名.注释(以一个`#'开头的行)可忽略.
-f,--fqdn,--long
显示FQDN(完全资格域名).一个FQDN包括一个短格式主机名和DNS域名.除非你正在使用bind或 者NIS来作主机查询,否则你可以在/etc/hosts文件中修改FQDN和DNS域名(这是FQDN的一 部分).
-h,--help
打印用法信息并退出.
-I, --all-ip-addresses all addresses for the host
显示主机的所有地址
-i,--ip-address
显示主机的IP地址(组).
-n,--node
显示DECnet节点名.如果指定了参数(或者指定了 --file name ),那么root也可以设置一个新的节点名.
-s,--short
显示短格式主机名.这是一个去掉第一个圆点后面部分的主机名.
-V,--version
在标准输出上打印版本信息并以成功的状态退出.
-v,--verbose
详尽说明并告知所正在执行的.
-y,--yp,--nis
显示NIS域名.如果指定了参数(或者指定了 --file name ),那么root也可以设置一个新的NIS域.
实例
1、hostname -i
先查看一下当前主机的hostname值,如果该值在主机的/etc/hosts下面有解析的话,显示主机的IP;如果没有解析的话,显示的就是一堆乱七八糟的玩意儿。
[root@aha ~]# hostname #查看当前主机名
aha
[root@aha ~]# cat /etc/hosts #查看hosts文件
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
#10.10.10.12 mini1 controller
#10.10.10.13 mini2 computer1
#10.10.10.14 mini3 computer2
#10.10.10.14 mini4
[root@aha ~]# hostname -i #因为hosts文件没有对应的hostname解析IP地址,显示一堆乱七八糟的玩意儿
fe80::d0bb:871:6470:541e%ens34 192.168.56.201 10.10.10.12 172.17.0.1
[root@aha ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.10.10.12 aha mini1 controller #增加aha的解析记录
#10.10.10.13 mini2 computer1
#10.10.10.14 mini3 computer2
#10.10.10.14 mini4
[root@aha ~]# hostname -i #显示hostname名对应的主机IP
10.10.10.12
来源:https://blog.csdn.net/qq_34208467/article/details/102775832