主机名hostname详解.doc

上传人:壹****1 文档编号:560233616 上传时间:2024-03-16 格式:DOC 页数:6 大小:44KB
返回 下载 相关 举报
主机名hostname详解.doc_第1页
第1页 / 共6页
主机名hostname详解.doc_第2页
第2页 / 共6页
主机名hostname详解.doc_第3页
第3页 / 共6页
主机名hostname详解.doc_第4页
第4页 / 共6页
主机名hostname详解.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《主机名hostname详解.doc》由会员分享,可在线阅读,更多相关《主机名hostname详解.doc(6页珍藏版)》请在金锄头文库上搜索。

1、Linux主机名Hostname详解 关键字: linux主机名hostname详解 1、 什么是主机名: 无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号。但IP地址不方便记忆,所以又有了域名。域名只是在公网(INtERNET)中存在(以实验为目的的局域网域网实验性除外),每个域名都对应一个IP地址,但一个 IP地址可有对应多个域名。域名类型 linuxsir.org 这样的;主机名是用于什么的呢?在一个局域网中,每台机器都有一个主机名,用于主机与主机之间的便于区分,就可以为每台机器设置主机名,以便于以容易记忆的方法

2、来相互访问。比如我们在局域网中可以为根据每台机器的功用来为其命名。主机名相关的配置文件:/etc/hosts;2. 主机名配置文件; 主机名的配置文件大多是/etc/hosts ;hosts - The static table lookup for host name(主机名查询静态表);由于 Linux 发行版本众多,与主机名相关的配置文件有时也有所不同。现在我们说说常见版本的主机名配置文件;2.1 主机名配置文件 /etc/hosts解说;Fedora/Redhat 或以Fedora/Redhat为基础打包的发行版,主机名配置文件是 /etc/hostsDebian或以Debian为基础

3、打包的发行版,主机名配置文件是 /etc/hostname 和/etc/hostsSlackware的主机名配置文件是 /etc/hosts那我们来读读 /etc/hosts的内容,看这个文件是用来做什么的。hosts 配置文件是用来把主机名字映射到IP地址的方法,这种方法比较简单。但这种映射只是本地机的映射,也就是说每台机器都是独立的,所有的计算机都不能相互通过hostname来访问。注:在debian 中还有一个/etc/hostname的文件,这个文件就是直接把本地主机名写进去就行了,但要和 /etc/hosts中的本地主机名保持一致。/etc/hosts 的内容一般有如下类似内容:12

4、7.0.0.1 localhost.localdomain localhost192.168.1.195 debian.localdomain debian注:一般情况下hosts的内容关于主机名(hostname)的定义,每行为一个主机,每行由三部份组成,每个部份由空格隔开。其中#号开头的行做说明,不被系统解释。第一部份:网络IP地址;第二部份:主机名.域名,注意主机名和域名之间有个半角的点,比如 localhost.localdomain第三部份:主机名(主机名别名) ,其实就是主机名;当然每行也可以是两部份,就是主机IP地址和主机名;比如 192.168.1.195 debian127.

5、0.0.1 是回环地址,比如我们不想让局域网的其它机器看到我们测试的网络程序,就可以用回环地址来测试。为什么需要定义域名呢?其实理解也简单,比如我们有三台主机,每台做不同的事,一台做MAIL服务器,一台做FTP服务器,一台做SMB服务器,所以我们就可以这样来设计hostname;127.0.0.1 localhost.localdomain localhost192.168.1.2 ftp.localdomain ftp192.168.1.3 mail.localdomain mail192.168.1.4 smb.localdomin smb把这上面这个配置文件的内容分别写入每台机器的/et

6、c/hosts内容中,这样这三台局域网的机器就可以通过hostname来访问了。2.2 主机名(hostname)和域名(Domain)的区别;主机名就机器本身的名字,域名是用来解析到IP的。但值得一说的是在局域网中,主机名也是可以解析到IP上的;比如我们前面所说举的例子;2.3 局域网的机器,不能通过主机名互访的原因;有的弟兄可能会说,我的hostname彼此不能互访,其实这也问题也简单,我们前面已经提到了一个简单的解决办法。就是要让局域网中的所有主机都有一个通用的,并且包含所有主机的/etc/hosts文件;另一个是做解决办法是做局域网DNS服务器,如果您的主机特别少,就用前面所说的简单方

7、法就行;如何做DNS服务器,我将在以后的文档中专题介绍;不过我值得一提的是做任何服务器都是以效率优先的原则为基础。比如我们在局域网中两台机器,我们还有必要做DNS服务器吗?无论怎么解决,最终的都是用最有效率的办法解决问题;我们不能说明DNS多高级。如果DNS是为外网服务的,那就另说了,不做也得做。对不对?3、主机名修改工具 hostname; 其实主机名的修改也有专用工具,就是hostname ;我认为如果用这个工具来修改主机名,不如直接修改 /etc/hosts 来的方便;您可以查看 hosname help或 man hostname的帮助 。在这里我们只说简单的用法;hostname 工

8、具是用来显示和设置系统主机名,看下面的洋文;hostname - show or set the systems host name举例解说: 显示主机名:rootlinuxsir01 # hostnamelinuxsir01此主机的主机名是linuxsir01,不加参数是用来显示当前操作的主机的主机名;临时设置主机名:我们可以用 hostname 后接主机名,这样就可以设置当前操作的主机的主机名,比如我们想把主机名设置为linuxsir02;rootlinuxsir01 # hostname linuxsir02rootlinuxsir01 # hostname 注:显示主机名linuxsi

9、r02通过hostname 工具来设置主机名只是临时的,下次重启系统时,此主机名将不会存在;所以您想修改主机名,想一直有效的,还是用前面所说修改主机名配置文件 /etc/hosts; 显示主机IP:显示当前主机名的IP,可以用-i参数;rootlinuxsir01 # hostname -i192.168.1.34、本文未尽事宜; 有时我们在登入桌面时,会提示找不到hostname ,这时您要做的是修改/etc/hosts,为您的机器添加一个主机名;先用 ifconfig -a 来查看主机的IP地址,然后把你主机的IP地址,指定主机名。怎样修改Linux的hostname Linux操作系统的

10、hostname是一个kernel变量,可以通过hostname命令来查看本机的hostname。也可以直接cat /proc/sys/kernel/hostname查看。#hostname#cat /proc/sys/kernel/hostname上面两种输出结果相同。修改运行时Linux系统的hostname,即不需要重启系统 hostname命令可以设置系统的hostname#hostname newnamenewname即要设置的新的hostname,运行后立即生效,但是在系统重启后会丢失所做的修改,如果要永久更改系统的hostname,就要修改相关的设置文件。永久更改Linux的ho

11、stname man hostname里有这么一句话,”The host name is usually set once at system startup in /etc/rc.d/rc.inet1 or /etc/init.d/boot (normally by reading the contents of a file which contains the host name, e.g. /etc/hostname).” RedHat里没有这个文件,而是由/etc/rc.d/rc.sysinit这个脚本负责设置系统的hostname,它读取 /etc/sysconfig/networ

12、k这个文本文件,RedHat的hostname就是在这个文件里设置。所以,如果要永久修改RedHat的hostname,就修改/etc/sysconfig/network文件,将里面的HOSTNAME这一行修改成HOSTNAME=NEWNAME,其中NEWNAME就是你要设置的hostname。Debian发行版的hostname的配置文件是/etc/hostname。修该配置文件后,重启系统就会读取配置文件设置新的hostname。hostname与/etc/hosts的关系 很多人一提到更改hostname首先就想到修改/etc/hosts文件,认为hostname的配置文件就是/etc/

13、hosts。其实不是的。hosts文件的作用相当于DNS,提供IP地址到hostname的对应。早期的互联网计算机少,单机hosts文件里足够存放所有联网计算机。不过随着互联网的发展,这就远远不够了。于是就出现了分布式的DNS系统。由DNS服务器来提供类似的IP地址到域名的对应。具体可以man hosts。Linux系统在向DNS服务器发出域名解析请求之前会查询/etc/hosts文件,如果里面有相应的记录,就会使用hosts里面的记录。/etc/hosts文件通常里面包含这一条记录127.0.0.1 localhost.localdomain localhosthosts文件格式是一行一条记

14、录,分别是IP地址 hostname aliases,三者用空白字符分隔,aliases(第三个参数 上例即localhost)可选。127.0.0.1到localhost这一条建议不要修改,因为很多应用程序会用到这个,比如sendmail,修改之后这些程序可能就无法正常运行。修改hostname后,如果想要在本机上用newhostname来访问,就必须在/etc/hosts文件里添加一条newhostname的记录。比如我的eth0的IP是192.168.1.61,我将hosts文件修改如下:#hostname # cat /etc/hosts127.0.0.1 localhost.loca

15、ldomain localhost192.168.1.61 blog这样,我就可以通过blog或者来访问本机。从上面这些来看,/etc/hosts于设置hostname是没直接关系的,仅仅当你要在本机上用新的hostname来访问自己的时候才会用到/etc/hosts文件。两者没有必然的联系。RHEL还有个问题。我开始在测试的时候,只修改/etc/hosts,里面添加 192.168.1.61 blog,而/etc/sysconfig/network维持原状,也就是里面的HOSTNAME=localhost.localdomain。我重启系统后居然发现hostname给修改成了。这样看的话,倒真觉得/etc/hosts是hostname的配置文件。后来终于在/etc/rc.d/rc.sysinit这个启动脚本里发现了问题的所在。rc.sysinit文件里一开始就设置了hostnameif

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号