一般我们在安装操作系统的时候会设置主机的名字,但是很多时候,安装的过程中并不关注这个问题,而是希望更快地将系统安装完成。有时它们的名字可能会是bogon
,或者debian
等等。但是很多时候,我使用ssh来连接服务器的时候,希望在界面上直接显示出主机的名字,特别是在同时连接多于两个主机的时候,给我更直接的提示,提醒我当前操作的主机是哪一个。
更改主机的名称有多种方法。
临时更改运行中的主机的名字
在Linux主机上,可以使用hostname
命令来更改主机的名字。
hostname
不使用参数,将显示当前主机的名字。
hostname --fqd
以上将显示当前主机的绑定的域名。
hostname new_name
将主机名字设置为new_name
,直接就会生效,直到机器重启。
永久更改主机的名字
Debian
在基于Debian的系统中,系统启动时将读取/etc/hostname
文件来设置主机的名字。而使用的脚本为/etc/init.d/hostname.sh
。
所以可以直接编辑文件/etc/hostname
文件,然后运行如下脚本,命名更改生效。
/etc/init.d/hostname.sh start
这种更改在下一次系统启动时,仍然有效。
RedHat
在基于RedHat的系统中,启动时读取文件/etc/sysconfig/network
文件来设置主机名称。执行的脚本文件为/etc/rc.d/rc.sysinit
。
因此,只需要更改文件/etc/sysconfig/network
文件中的HOSTNAME
变量即可。如:
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=furzoom
使用sysctl
对于不同的系统使用不同的命令来更改主机的名字,总是会让人不爽的,那有没有一致的方法呢?当然有,那就是sysctl
命令了。
sysctl kernel.hostname
将显示当前的主机名称,可以使用该命令直接设置主机的名称,如:
sysctl kernel.hostname=furzoom
更多请参考Linux技巧。