http://blog.csdn.net/qq_20480611/article/details/51017033

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

1. 什么是Linux主机名

无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号。但IP地址不方便记忆,所以又有了域名。域名只是在公网(Internet)中存在(以实验为目的的局域网域网实验性除外),每个域名都对应一个IP地址,但一个IP 地址可有对应多个域名。域名类似www.example.com这样的;

主机名是用于什么的呢?在一个局域网中,每台机器都有一个主机名,用于主机与主机之间的便于区分,就可以为每台机器设置主机名,以便于以容易记忆的方法来相互访问。比如我们在局域网中可以为根据每台机器的功用来为其命名。主机名相关的配置文件:/etc/hosts;

2. Linux主机名配置文件

主机名的配置文件大多是/etc/hosts ;hosts - The static table lookup for Linux hostname(主机名查询静态表);由于 Linux发行版本众多,与主机名相关的配置文件有时也有所不同。现在我们说说常见版本的主机名配置文件;

2.1 Linux主机名置文件 /etc/hosts

Fedora/Redhat 或以Fedora/Redhat为基础打包的发行版,主机名配置文件是 /etc/hosts Debian或以Debian为基础打包的发行版,主机名配置文件是 /etc/Linux hostname 和/etc/hosts Slackware的主机名配置文件是 /etc/hosts

hosts 配置文件是用来把主机名字映射到IP地址的方法,这种方法比较简单。但这种映射只是本地机的映射,也就是说每台机器都是独立的,所有的计算机都不能相互通过Linux hostname来访问。注:在debian 中还有一个/etc/Linux hostname的文件,这个文件就是直接把本地主机名写进去就行了,但要和 /etc/hosts中的本地主机名保持一致。

/etc/hosts 的内容一般有如下类似内容:

IP地址 主机名.域名 主机名(主机名别名)
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6

注:一般情况下hosts的内容关于主机名(Linux hostname)的定义,每行为一个主机,每行由三部份组成,每个部份由空格隔开。其中#号开头的行做说明,不被系统解释。

127.0.0.1 是回环地址,比如我们不想让局域网的其它机器看到我们测试的网络程序,就可以用回环地址来测试。 为什么需要定义域名呢?其实理解也简单,比如我们有三台主机,每台做不同的事,一台做MAIL服务器,一台做FTP服务器,一台做SMB服务器,所以我们就可以这样来设计Linux hostname;

IP地址 主机名.域名 别名
127.0.0.1 localhost.localdomain localhost
192.168.1.2 ftp.localdomain ftp
192.168.1.3 mail.localdomain mail
192.168.1.4 smb.localdomin smb

把这上面这个配置文件的内容分别写入每台机器的/etc/hosts内容中,这样这三台局域网的机器就可以通过Linux hostname来访问了。

2.2 主机名(Linux hostname)和域名(Domain)的区别

主机名就机器本身的名字,域名是用来解析到IP的。但值得一说的是在局域网中,主机名也是可以解析到IP上的;比如我们前面所说举的例子;

2.3 局域网的机器,不能通过主机名互访的原因

有的可能会说,我的Linux hostname彼此不能互访,其实这也问题也简单,我们前面已经提到了一个简单的解决办法。就是要让局域网中的所有主机都有一个通用的,并且包含所有主机的/etc/hosts文件;

另一个是做解决办法是做局域网DNS服务器,如果您的主机特别少,就用前面所说的简单方法就行;如何做DNS服务器,我将在以后的文档中专题介绍;不过我值得一提的是做任何服务器都是以效率优先的原则为基础。

比如在局域网中两台机器,还有必要做DNS服务器吗?

3. 主机名修改

3.1 查看主机名

以根用户登录,或者登录后切换到根用户,然后在提示符下输入hostname命令,可以看出当前系统的主机名为localhost.localdomain。

3.2 更改/etc/sysconfig/network

在提示符下输入vi /etc/sysconfig/network,然后将HOSTNAME后面的值改为想要设置的主机名。

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=localhost.localdomain

3.3 更改/etc/hosts

在提示符下输入vi /etc/hosts,然后将localhost.localdomain改为想要设置的主机名。

3.4 重启

在提示符下输入reboot命令,重新启动服务器。

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

hostname 命令查询当前主机名称

更改/etc/sysconfig下的network文件,在提示符下输入vi /etc/sysconfig/network,然后将HOSTNAME后面的值改为想要设置的主机名。

更改/etc下的hosts文件,在提示符下输入vi /etc/hosts,然后将localhost.localdomain改为想要设置的主机名。

在提示符下输入reboot命令,重新启动服务器。

重启完成后用hostname命令查询系统主机名

linux修改主机名称的更多相关文章

  1. Linux修改主机名称方法

    碰到这个问题的时候,是在安装Zookeeper集群的时候,碰到如下问题 java.net.UnknownHostException: XXXX Name or service not knownjav ...

  2. 【Hostname】Linux修改主机名称

    环境:CentOS 6.5 方式一: 1.修改hosts文件 vi /etc/hosts 将本机ip地址后面的hostname改掉 2.修改network文件 vi /etc/sysconfig/ne ...

  3. Arch Linux 修改主机名称

    Hostname Set the hostname to your liking (e.g. arch): # echo myhostname > /etc/hostname Add the s ...

  4. Linux修改网卡名称、主机名

    Linux修改网卡名称.主机名 环境:VirtualBox 5.0.14 + RHEL 6.5 需求:个人实验搭建一套Standby RAC时,为了节约时间,直接复制之前安装RAC的主机模板. 但复制 ...

  5. CentOS Linux 修改主机名

    一.CentOS5 修改主机名 二.CentOS6 修改主机名 三.CentOS7 修改主机名 静态的(Static hostname)        "静态"主机名也称为内核主机 ...

  6. linux修改主机名的方法

    linux修改主机名的方法 用hostname命令可以临时修改机器名,但机器重新启动之后就会恢复原来的值. #hostname   //查看机器名#hostname -i  //查看本机器名对应的ip ...

  7. linux修改网卡名称

    本文转载自江一<linux修改网卡名称> 终端输入:vi /etc/udev/rules.d/70-persistent-net.rules 出现以下文件 # This file was ...

  8. linux修改主机名(hostname)转载

    Linux修改主机名的方法 用hostname命令可以临时修改机器名,但机器重新启动之后就会恢复原来的值. #hostname   //查看机器名#hostname -i  //查看本机器名对应的ip ...

  9. ubuntu修改主机名称

    一.为何要修改主机名称 在安装Ubuntu时,一不小心主机名称输入的“too long”了,导致命令行上就提示符占据了一行的1/3,迫使我产生修改主机名称的冲动. 二.操作方法 原理:系统启动时,会从 ...

随机推荐

  1. 几种方法实现ajax请求内容时使用浏览器后退和前进功能

    ajax是一个非常好玩的小东西,不过用起来也会存在一些问题. 我们可以利用ajax进行无刷新改变文档内容,但是没办法去修改URL,即无法实现浏览器的前进与后退.书签的收藏功能. 利用location的 ...

  2. BeanUtils.populate的作用

    它是在org.apache.commons.beanutils.BeanUtils包中的一个方法. 方法的作用:将一些 key-value 的值(例如 hashmap)映射到 bean 中的属性.   ...

  3. 16.2.2 Space Needed for keys

    myisam表使用btree索引,可以粗略计算出索引文件的大小,使用(key_length+4)/0.67,全部key的总和,全部key被排序顺序插入和表没有被任何压缩的时候,这是最坏的情况 stri ...

  4. Android 二维码 生成和识别(附Demo源码)

    今天讲一下目前移动领域很常用的技术——二维码.现在大街小巷.各大网站都有二维码的踪迹,不管是IOS. Android.WP都有相关支持的软件.之前我就想了解二维码是如何工作,最近因为工作需要使用相关技 ...

  5. vc++ 判断文件或是文件夹是否存在,比较好的做法

    #include <windows.h> void main() { //文件或文件夹都可以判断,最后的\\号有无都没关系 !=GetFileAttributes("D:\\My ...

  6. android ListView 九大重要属性详细分析、

    android ListView 九大重要属性详细分析. 1.android ListView 一些重要属性详解,兄弟朋友可以参考一下. 首先是stackFromBottom属性,这只该属性之后你做好 ...

  7. 移植milo的全局光照渲染器代码

    测试flascc的性能优化程度,http://bbs.9ria.com/thread-162705-1-1.html . 可以对比下猫粮的http://bbs.9ria.com/thread-5820 ...

  8. VS使用过程中,编写JS没有智能提示解决方法

    问题:编写基本Script代码没有问题,但是在编写DOM代码时候没有智能提示.也就是在编写一般javascript代码时候没有问题,但是要写DOM代码的时候发现没有智能提示,如document等都需要 ...

  9. 实现浏览器打开图片的url默认是下载

    在返回的response里面设置HTTP头的Content-Disposition=attachement;filename=xxxx,即可实现文件另存为"xxxx":Conten ...

  10. 循序渐进Python3(八) -- 1 -- socket进阶

    IO多路复用 I/O多路复用指:通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作. Linux中的 select,poll,epoll 都 ...