Linux的主机名基础

来源:互联网 发布:java高并发项目源码 编辑:程序博客网 时间:2024/06/02 04:36

什么是主机名

主机名就是计算机的名称,局域网内计算机之间相互访问,可以通过主机名称来访问。

主机名修改

跟主机名有关的命令是hostname,可以用来显示当前机器的主机名,也可以修改主机名称。
永久修改主机名称的方法
1)hostname 主机名称,只会生效一次,机器重启主机名就会被还原。
2)修改/etc/sysconfig/network中的HOSTNAME属性名称与hostname设置的主机名称一致,以便永久修改主机名称。

NETWORKING=yesHOSTNAME=woodwangNTPSERVERARGS=iburst

3)不同的操作系统可能主机名称的存储文件不一样,如果没有这个文件,可以检查下当前主机是否有/etc/hostname文件,如果存在,修改该文件,以便永久修改主机名称。

主机名称相关文件

Linux操作系统与主机名有关的文件有四个
/etc/hosts
/etc/sysconfig/network
/etc/rc.d/rc.sysinit
/proc/sys/kernel/hostname

hosts文件

/etc/hosts文件是存放ip地址和主机名之间对应关系的文件,

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4::1         localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.10.177 win10

前两行是标准的localhost的配置信息,可以在该文件中添加任何ip和主机名称的映射关系,好处就是:在局域网内,我们不需要记住真正的IP,而只需要知道主机名称,就可以在通过主机名称来访问其他机器了。
例如:可以直接ping win10,等价于ping 192.168.10.177。

/etc/sysconfig/network

真正决定本机主机名的文件,当操作系统开机启动的时候,会读取该文件的内容,并存入/proc/sys/kernel/hostname文件中。所以,如果要永久修改主机名称,还需要修改该文件才行。

/proc/sys/kernel/hostname

存储本机主机名称的文件,hostname 命令就是读取或者修改改文件内容的。但是hostname只对本次操作有效,原理很简单:开机启动时该文件的内容被修改为network的内容了。

主机名的纠葛

在工作中使用主机名称,是在数据库连接的时候,由于项目有一个IP配置的功能,服务器的IP地址可能不固定,所以数据库的JDBC连接路径使用的是本机回环地址127.0.0.1,保证数据库连接操作的正确。
由于服务器使用的数据库需要修改hostname,部署操作统一规定需要设置的主机名称,然后数据库连接URL使用回环地址。为了保证IP修改操作不会影响主机名称,IP修改脚本执行完成后重写/etc/hosts文件,读取主机名称,同时写入到该文件中。

echo '127.0.0.1 '$(hostname)>>/etc/hosts

以此来保证/etc/hosts文件最后一行有回环地址和主机名的映射关系。

0 0
原创粉丝点击