Linux中的hostname在大多数应用中至为重要,例如有些应用强制使用主机名称而不能使用IP地址,如果默认主机名称都为localhost.localdomain 的话那一定会出现问题,而且看起来也是那么的不尽人意。在CentOS6及其以下版本一般通过修改配置文件的办法来修改主机名,此配置文件一般为/etc/sysconfig/network,但在CentOS7中,很多系统管理工具都被替换了。

例如想更改主机名,就不能参考以前的方法了,新的配置文件已经更新为/etc/hostname,尽管修改/etc/sysconfig/network配置文件(此文件依然存在,只是是空的)可能起作用,但不得不考虑有些Linux软件是否会使用source此文件或是否使用环境变量$HOSTNAME。

在CentOS或RHEL中,有三种定义的主机名:a、静态的(static),b、瞬态的(transient),以及 c、灵活的(pretty)。“静态”主机名也称为内核主机名,是系统在启动时从/etc/hostname自动初始化的主机名。“瞬态”主机名是在系统运行时临时分配的主机名,例如,通过DHCP或mDNS服务器分配。静态主机名和瞬态主机名都遵从作为互联网域名同样的字符限制规则。而另一方面,“灵活”主机名则允许使用自由形式(包括特殊/空白字符)的主机名,以展示给终端用户(如Dan's Computer)。因此修改CentOS7主机名的方法有以下几种。

0.在安装操作系统的时候设定好主机名

1.直接使用文本编辑器修改/etc/hostname配置文件。

2.使用hostnamectl命令,hostnamectl set-hostname name ,再通过hostname或者hostnamectl status命令查看更改是否生效。

在CentOS/RHEL 7中,有个叫hostnamectl的命令行工具,它允许你查看或修改与主机名相关的配置。

要查看主机名相关的设置:

# hostnamectl status

只查看静态、瞬态或灵活主机名,分别使用“--static”,“--transient”或“--pretty”选项。
# hostnamectl status [--static|--transient|--pretty]

注意*:修改的主机名,带有任何的特殊字符或空白字符都将会被移除,并且提供的参数中任何大写字母都会自动转化成小写

要同时修改所有三个主机名:静态、瞬态和灵活主机名:
# hostnamectl set-hostname <host-name>

一旦修改了静态主机名,/etc/hostname 将被自动更新。然而,/etc/hosts 不会更新以保存所做的修改,所以你需要手动更新/etc/hosts。

如果你只想修改特定的主机名(静态,瞬态或灵活),你可以使用“--static”,“--transient”或“--pretty”选项。

例如,要永久修改主机名,你可以修改静态主机名:

# hostnamectl --static set-hostname <host-name>

注意,你不必重启机器以激活永久主机名修改。上面的命令会立即修改内核主机名。注销并重新登入后在命令行提示来观察新的静态主机名。

3.使用nmcli general hostname my-server 命令更改。

关于第2、3条更多操作提示可以参考红帽文档“Red Hat Enterprise Linux 7 Networking Guide”的3.3节和3.4节。

更多信息可以查询与hostname相关的man手册。systemd(1), hostname(1), hostname(5), machine-info(5), hostnamectl(1), sethostname(2)



CentOS7.0修改主机名(hostname)的更多相关文章

  1. Centos7.4修改主机名HostName颜色及格式

    一.打开 .bashrc文件 1.位置:~(cd ~)目录下 2.cat .bashrc 原文件内容如下: # .bashrc # User specific aliases and function ...

  2. CentOS6修改主机名(hostname)及 修改/etc/hosts 文件,增加ip和hostname的映射关系(转)

    CentOS修改主机名(hostname)  需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常.首先切换到root用户. ...

  3. Redhat修改主机名_Red hat怎么永久修改主机名hostname(转)

    有几种方式修改Redhat的主机名字,这些方法也适合其他的Centos系统,下面介绍Red hat怎么永久修改主机名hostname的三种方法. 方法一: 说明"hostname" ...

  4. centos7上修改主机名

    centos7上修改主机名 2017-10-09   13:45:17 个人原创,转载请注明,否则追究法律责任 1,临时修改: 和centos5,centos6 一样,重启失效 2,永久修改: 命令: ...

  5. CentOS7修改主机名(hostname)

    Linux中的hostname在大多数应用中至为重要,例如有些应用强制使用主机名称而不能使用IP地址,如果默认主机名称都为localhost.localdomain 的话那一定会出现问题,而且看起来也 ...

  6. linux centos7.5修改主机名和ip永久生效

    以centos7.5为例 1.修改主机名 [root@localhost ~]# hostname localhost.localdomain[root@localhost ~]# hostname ...

  7. CentOS(6、7)修改主机名(hostname)

    centos6需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常.首先切换到root用户. /etc/sysconfig/n ...

  8. Centos6.5 修改主机名(hostname)

    centos6需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常.首先切换到root用户. /etc/sysconfig/n ...

  9. Linux实战案例(1)CentOS修改主机名(hostname)

    1.临时修改主机名 显示主机名: oracle@localhost:~$ hostname localhost 修改主机名: oracle@localhost:~$ sudo hostname orc ...

随机推荐

  1. rn-fetch-blob+redux 取消请求

    其实取消请求对于普通的ajax请求rn-fetch-blob写法是比较简单的 let task = RNFetchBlob.fetch('GET', 'http://example.com/file/ ...

  2. java之ArrayList.add

    ArrayList添加 public boolean add(E e) { ensureCapacityInternal(size + 1); // Increments modCount!! ele ...

  3. 微信小程序--问题汇总及详解之form表单

    附上微信小程序开发文档链接:https://mp.weixin.qq.com/debug/wxadoc/dev/framework/MINA.html form表单: 当点击 <form/> ...

  4. angular2 表单的理解

    angular2表单分为两种,一种为模板驱动,一种为模型驱动: 个人理解两者的不同 模板驱动依靠H5规则进行验证,在提交表单时进行自定义验证: 模型驱动在加载时候已经加载了所有的验证自定义验证,所以不 ...

  5. tail /grep/more

    1.tail -f 文件名 不断的刷新日志信息,实时的得到新追加到文件中的信息,常用来跟踪日志文件,如tail -f err.log Ctrl+C退出 2.grep '内容' 文件名 3.more 分 ...

  6. react 当中当组件抛出的dom元素最外层不止一个的时候的写法

    在react16当中,对一个组件抛出多个dom进行了支持,写法 以数组形式抛出

  7. react 基础语法复习2- react入门以及JSX

    引入 react 以及 ReactDom import React from 'react'; import ReactDOM from 'react-dom'; 将react组件渲染到真实dom节点 ...

  8. Bzoj3652 大新闻

    Time Limit: 10 Sec  Memory Limit: 512 MBSec  Special JudgeSubmit: 215  Solved: 112 Description Input ...

  9. JS允许找不到对象 不必判断是否存在某个div

    原文发布时间为:2009-11-10 -- 来源于本人的百度文章 [由搬家工具导入] 加一个try catch 即可。。。。 例子: for(var i=0;i<10;i++)     {    ...

  10. android init.rc命令快速对照表

    注1:另外还讲述了怎样输出log: Debugging notes---------------By default, programs executed by init will drop stdo ...