Linux命令之hostname-显⽰或设置主机名
我使⽤过的Linux命令之hostname - 显⽰或设置主机名
⽤途说明
hostname命令可以⽤来显⽰或者设置主机名(show or set the system’s host name)。环境变量HOSTNAME也保存了当前的主机名。在使⽤hostname命令设置主机名后,系统并不会永久保存新的主机名,重新启动机器之后还是原来的主机名。如果需要永久修改主机名,需要同时修改/etc/hosts
和/etc/sysconfig/network的相关内容。某些依赖于系统主机名的软件,在修改主机名之后可能会出现问题,⽐如为mysql配置了同步复制时,修改主机名前最好先停⽌其运⾏(经验之谈,本⼈就因此折腾了很久)。
常⽤参数
不带参数时显⽰主机名。
格式:hostname
带上-i参数时显⽰ip地址。
格式:hostname -i
带上-f参数时显⽰全域名(FQDN,Fully Qualified Domain Name)。
格式:hostname -f
修改主机名时,后⾯跟上新的主机名即可。(注意此⽅法⽴即⽣效,但不会永久保存,详见后⾯的⽰例)。
格式:hostname newhostname
使⽤⽰例
⽰例⼀显⽰主机名
[root@jfht ~]# hostname
jfht
[root@jfht ~]# echo $HOSTNAME
jfht
[root@jfht ~]# grep jfht /etc/hosts
127.0.0.1              jfht localhost.localdomain localhost
注:这台机器的hosts设置有些问题的,应该另开⼀⾏设置ip fqdn hostname,⽐如192.168.1.191  jfht。
[root@jfht ~]# hostname -i
127.0.0.1      <== 由于/etc/hosts⽂件设置不够合理,所以显⽰回环地址(loopback 127.0.0.1)。
[root@jfht ~]# hostname -f
jfht              <== 由于/etc/hosts⽂件中没有设置FQDN,所以⽆法显⽰fqdn。
[root@jfht ~]# grep jfht /etc/sysconfig/network
HOSTNAME=jfhtlinux登录命令
[root@jfht ~]# cat /proc/sys/kernel/hostname
jfht
[root@jfht ~]#
⽰例⼆修改主机名
现在演⽰⼀下将原来的主机名rhel55改成new55,并增加FQDN设置。
[root@rhel55 ~]# hostname
rhel55
[root@rhel55 ~]# hostname -i
127.0.0.1
[root@rhel55 ~]# hostname -f
rhel55
[root@rhel55 ~]# hostname new55
[root@rhel55 ~]# echo $HOSTNAME
rhel55
[root@rhel55 ~]# hostname
new55
[root@rhel55 ~]# vi /etc/hosts
打开/etc/hosts,将
127.0.0.1              rhel55 localhost.localdomain localhost
改为
127.0.0.1              localhost.localdomain localhost
并增加⼀⾏
192.168.6.55            new55.somedomain  new55
[root@rhel55 ~]# vi /etc/sysconfig/network
HOSTNAME=rhel55
改成
HOSTNAME=new55
现在退出当前shell重新登录看看。
[root@rhel55 ~]# exit
logout
Last login: Sat Nov  6 17:00:08 2010 from 192.168.6.106
[root@new55 ~]# echo $HOSTNAME
new55
[root@new55 ~]# hostname
new55
[root@new55 ~]# hostname -i
192.168.6.55
[root@new55 ~]# hostname -f
new55.somedomain
[root@new55 ~]#
重启⼀下Linux,然后再登录,可以看到主机名修改⽣效了。
[root@new55 ~]# reboot
Last login: Sat Nov  6 17:10:08 2010 from 192.168.6.106
[root@new55 ~]# echo $HOSTNAME
new55
[root@new55 ~]# hostname
new55
[root@new55 ~]# hostname -i
192.168.6.55
[root@new55 ~]# hostname -f
new55.somedomain
[root@new55 ~]#
在此,总结⼀下修改主机名的⽅法:
1. 停⽌与主机名相关的软件运⾏,⽐如mysql。
2. 先使⽤ hostname newname 设置主机名。
3. 在/etc/hosts中修改或增加 ip fqdn newname⾏,并检查原来127.0.0.1⾏的设置。
4. 在/etc/sysconfig/network中修改HOSTNAME=newname。
5. 重新启动机器并确认是否修改成功。
问题思考
相关资料
【1】cnblogs [Linux.Bash]
【2】互动百科
【3】百度空间
【4】LinuxSir.Org
【5】ChinaUnix
【6】robinwu的⽇志
返回

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。