转贴:
一、假设原始状态:
1、Debian3.1环境,由于本贴是讨论主机名,不失一般性,其它系统也基本适用,有些系统我没用过,有不同的请指出。
2、“#cat /etc/hostname”显示“myhostname”。
3、“#cat /etc/hosts”显示“127.0.0.1 localhost.localdomain localhost myhostname”。
3、“#hostname”显示主机名为“myhostname”。
二、“#hostname myNEWhostname”命令更改主机名后:
1、用“#hostname”显示主机名已变为“myNEWhostname”。
2、此时“/etc/hostname”和“/etc/hosts”中的内容未变。Shell提示符中仍然是原来的主机名。
3、但用“#hostname”显示主机名已变为“myNEWhostname”。
问题1:请问这个更改主机名的操作结果是保存在哪里?缓存中吗?
4、现在注销一下,重新登录时将弹出对话框“无法查到myNEWhostname的互联网地址,这将妨碍GNOME正常操作。把myNEWhostname加到/etc/hosts文件中也许能解决这个问题”(注:如果不是在桌面注销后登录不会出现这个对话框,关于这个对话框暂时不关心原因,请继续往后看),“继续登录”进去后,终端提示符中已经变成了更改后的主机名“myNEWhostname”,用“#hostname”查看也显示是“myNEWhostname”,但“/etc/hostname”和“/etc/hosts”中的内容还是未变。
5、“#reboot”重新启动计算机后,所有的状态都将恢复原状,即终端提示符中和“#hostname”后的显示都已变回原来的“myhostname”了。
问题2:“#hostname 新主机名”命令是临时更改主机名吗?
三、在原始状态的基础上,只将“/etc/hostname”文件中的内容从“myhostname”改为“myNEWhostname”:
1、用“#hostname”显示的主机名和终端提示符中的主机名都不变,仍为“myhostname”。
2、现在注销然后重新登录,用“#hostname”显示主机名和终端提示符中的主机名也都不变。
3、“#reboot”重新启动计算机,在登录时又出现前面提到的对话框,不理它,“继续登录”进去,用“#hostname”显示的主机名和终端提示符中的主机名都已经变成了新主机名“myNEWhostname”。
问题3:为什么会出现这个对话框?
问题4:“/etc/hostname”中的主机名才是永久性决定的主机名吗?
问题5:直接修改“/etc/hostname”文件后,不重新启动计算机的情况下如何操作才能立即生效?
(注:本贴所涉及的操作尽量不要用图形界面的操作,因桌面上的操作各个发行版的差异性要大些)
四、在原始状态的基础上,只将“/etc/hosts”文件内容“127.0.0.1 localhost.localdomain localhost myhostname”中的“myhostname”改为“myNEWhostname”:
1、用“#hostname”显示的主机名和终端提示符中的主机名都不变,仍为“myhostname”。
2、现在注销然后重新登录(晕,又出现前面提到的对话框,如果你回答了前面的问题就知道什么原因了,不管了),用“#hostname”显示主机名和终端提示符中的主机名也都不变。
问题6:“#reboot”重新启动计算机所出现的结果跟第四-2步一样吗?
问题7:“/etc/hosts”文件内容“127.0.0.1 localhost.localdomain localhost myhostname”中的“myhostname”的含义是什么(先想想,想不出,哎,打开图形化的网络配置工具看看)?
问题8:将“/etc/hostname”和“/etc/hosts”中的“myhostname”都改为“myNEWhostname”后会出现什么样的结果呢?
问题9:“/etc/hostname”中的“myhostname”改为“myNEWhostname”后,不修改“/etc/hosts”中的“myhostname”而增加一个“myNEWhostname”可以吗?
问题10:跟主机名有关系但前面没有涉及到的请提出来。另外“/etc/host.conf”文件和主机名与域名的关系都没设计进去,你认为有必要也可讨论。
注:
1、发本贴的原意:通过这种技术性的操作步骤并设置问题,来诱发大家讨论其中涉及到的Linux系统设计与运行原理直至计算机学科方面的原理。不知用这种方法来讨论基础理论内容会不会没那么枯燥,也许举的这个例子太简单,引不出太多的理论,但我想游离在技术与理论的边缘的思路总该比直接把理论贴出来再来讨论理论要舒坦得多。说错了,别打我,你批评,我改正。
2、也许又有人会说,这种所谓的理论在基础建设版或其它版块里已经涉及到了。我的想法是把这些知识放在这里,一个知识点一个知识点的讨论,更系统一些,并尽可能的提升到理论上去。
3、回答问答时希望同时能看到理由,即相关的理论知识,如果直接回答问题,我倒,害我要改问题的提法。
4、帖子中设计过程如果有打错或设计步骤、思路有颠三倒四等,请指出,立即改正。
5、是不是感觉这个主题太基础了,若这种类型的设计大家认为可以的话,以后可以提些复杂点的。先增加点难度:能用Y文回贴更好,经常看翻译的东西总有知其然而不知其所以然的感觉,虽然自己不昨的,总希望从别人哪里学点。
sunhy1021 于 2009-10-16 17:12:07发表:
这么好的帖子都没有人顶啊!UP