我似乎无法更改 CentOS 6.5 主机上的主机名。我正在按照我找到的说明进行操作在此(现已不复存在)页面上。
我把我的/etc/hosts
喜欢这样...
[root@mig-dev-006 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain
192.168.32.128 ost-dev-00.domain.example ost-dev-00
192.168.32.129 ost-dev-01.domain.example ost-dev-01
...然后我/etc/sysconfig/network
像这样制作我的文件...
[root@mig-dev-006 ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=ost-dev-00.domain.example
NTPSERVERARGS=iburst
……然后我就hostname
这样跑……
[root@mig-dev-006 ~]# hostname ost-dev-00.domain.example
...然后我运行 bash ,一切似乎都很好...
[root@mig-dev-006 ~]# bash
...但是当我重新启动网络时,旧主机名又回来了:
[root@ost-dev-00 ~]# /etc/init.d/network restart
Shutting down interface eth0: Device state: 3 (disconnected)
[ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: Active connection state: activating
Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/6
state: activated
Connection activated
[ OK ]
[root@ost-dev-00 ~]# bash
[root@mig-dev-006 ~]#
答案1
要永久更改主机名,您需要在两个地方进行更改:
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=newHostName
并且:如果您有任何应用程序需要解析主机名的 IP,这是一个好主意)
vi /etc/hosts
127.0.0.1 newHostName
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
进而
rebooting the system
答案2
您可以使用单个命令更改主机名。
- 命令:
hostname
- 这显示旧主机名 - 命令:
hostname <new name>
-这设置新主机名
例子
$ hostname mynewhost
用于在重新启动后保留新主机名
编辑 /etc/sysconfig/网络文件如下所示
NETWORKING=yes
HOSTNAME=myhostanme
如需视频帮助
答案3
答案4
我必须对一堆机器执行此操作。这是一个简单的 python 脚本来帮助你。只需提供新主机的名称作为脚本的第一个参数即可。
例如:如果您将脚本命名为changeHost.py,则将其运行为
changeHost.py [NewHostName]
其中 NewHostName 是您所需的主机名。
另请确保以 root 身份运行此脚本。
#!/usr/bin/env python
import os
from sys import argv
script, newHostName = argv
print "Modifying network file..."
target = open("/etc/sysconfig/network","w")
target.truncate()
target.write("NETWORKING=yes\n")
target.write("HOSTNAME=")
target.write(newHostName)
target.write("\n")
target.close()
print "Modifying hosts file..."
target = open("/etc/hosts","w")
target.truncate()
target.write("127.0.0.1 ")
target.write(newHostName)
target.write(" localhost.localdomain localhosts\n")
target.close()
print "Set new hostname to %r" % newHostName
os.system('/bin/hostname ' + newHostName)