首页 >> 大全

/etc/hostname和/etc/hosts区别

2023-10-06 大全 31 作者:考证青年

1.在终端窗口中输入命令:或uname –n,均可以查看到当前主机的主机名

2、临时修改主机名

命令行下运行命令:“ 新主机名” 或 set-新主机名 或echo "新主机名" >/proc/sys//

其中“新主机名”可以用任何合法字符串来表示。不过采用这种方式,新主机名并不保存在系统中,重启系统后主机名将恢复为原先的主机名称。

例子: -temp

这样主机名字就临时被修改为-temp,但是终端下不会立即显示生效后的主机名,重开一个终端窗口(通过ssh连接的终端需要重新连接才可以);

3、永久修改主机名

在系统中永久修改主机名也比较简单。主机名存放在/etc/文件中,修改主机名时,编辑文件,在文件中输入新的主机名并保存该文件即可。重启系统后,参照上面介绍的快速查看主机名的办法来确认主机名有没有修改成功。

值的指出的是,在其它Linux发行版中,并非都存在/etc/文件。如,,发行版将主机名存放在/etc//文件中。所以,修改主机名时应注意区分是哪种linux发行版。

4、/etc/与/etc/hosts的区别

/etc/中存放的是主机名,文件的一个例子:

v-jiwan--temp

/etc/hosts存放的是域名与ip的对应关系,域名与主机名没有任何关系,你可以为任何一个IP指定任意一个名字,文件的一个例子:

127.0.0.1

127.0.1.1 v-jiwan-

======================

修改了后,如何使其立即生效而不用重启操作系统。

方法1:修改了/etc//下的后,然后使用echo > /proc/sys//。

[root@DB- ~]# echo Test >/proc/sys//

注意当前会话还是不会变化,但是后续新建会话则会生效。

方法2:修改了/etc//下的后,然后使用 .命令使其立即生效

[root@DB- ~]# .=Test2

. = Test2

注意当前会话还是不会变化,但是后续新建会话会生效。

方法3:修改了/etc//下的后,然后使用命令使其生效

_区别英语_区别词

[root@Test ~]# DB-

注意当前会话还是不会变化,但是后续新建会话会生效。

其实呢,这几种方式只是结合永久性修改和临时性修改,使其不必重启Linux服务器,哈哈,不知道你明白没。

修改有几种方式?

1: DB- --运行后立即生效(新会话生效),但是在系统重启后会丢失所做的修改

2: echo DB- > /proc/sys// --运行后立即生效(新会话生效),但是在系统重启后会丢失所做的修改

3: .=DB- --运行后立即生效(新会话生效),但是在系统重启后会丢失所做的修改

4: 修改/etc//下的变量 --需要重启生效,永久性修改。

问题4:跟/etc/hosts 下配置有关系吗?

如果从我上面的实验来看,其实跟/etc/hosts下的配置是没有关系的。的修改、变更完全不依赖hosts文件。 其实hosts文件的作用相当如DNS,提供IP地址到的对应。早期的互联网计算机数量少,单机hosts文件里足够存放所有联网计算机。不过随着互联网的发展,这就远远不够了。于是就出现了分布式的DNS系统。由DNS服务器来提供类似的IP地址到域名的对应。具体可以man hosts查看相关信息。

Linux系统在向DNS服务器发出域名解析请求之前会查询/etc/hosts文件,如果里面有相应的记录,就会使用hosts里面的记录。/etc/hosts文件通常里面包含这一条记录

127.0.0.1 .

hosts文件格式是一行一条记录,分别是IP地址 、、 ,三者用空白字符分隔,可选。

127.0.0.1到这一条建议不要修改,因为很多应用程序会用到这个,比如,修改之后这些程序可能就无法正常运行。

但是呢,其实也不是说跟/etc/hosts一点关系都没有。在/etc/rc.d/rc.中,有如下逻辑判断,当为后.时,将会使用接口IP地址对应的来重新设置系统的。

# In there be no more than one

# this early in the boot -- the one we're from.

# Use the to set the of the . This

# must be done even if we have local .

=

if [ "$" = "" -o "$" = "." ]; then

=$(ip addr show to 0/0 scope | awk '/[[:space:]]inet / { print ("/.*","","g",$2) }')

if [ -n "$" ]; then

eval $( -h $ 2>/dev/null)

${}

_区别英语_区别词

fi

fi

我们来实验一下吧,修改hosts、文件,修改后的值如下所示:

[root@localhost ~]# more /etc/hosts 

# Do not remove the following line, or various programs 

# that require network functionality will fail. 

::1 localhost.localdomain localhost 

127.0.0.1 localhost.localdomain localhost 

192.168.244.128 DB-Server.localdomain DB-Server 

[root@localhost  ~]# more /etc/sysconfig/network 

NETWORKING=yes 

NETWORKING_IPV6=yes 

HOSTNAME=localhost.localdomain

重启系统后,我们再截图看看情况:

clipboard[4]

所以这也是有时候人们以为的值跟hosts文件有关系的缘故。

问题5:如何查看的值,以那个为准?

[root@DB-Server ~]# hostname 

DB-Server

[root@DB-Server ~]# more /proc/sys/kernel/hostname 

DB-Server 

[root@DB-Server ~]# more /etc/sysconfig/network 

NETWORKING=yes 

NETWORKING_IPV6=yes 

HOSTNAME=localhost.localdomain

以那个为准呢,如果你理解了前面4个问题,那么理解这个问题就很简单了。

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了