如何在 CentOS 6.5 上更改主机名?

如何在 CentOS 6.5 上更改主机名?

我似乎无法更改 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

除了已经为 CentOS 6.5 提供的答案之外,

操作系统7还有一个用于更改主机名的基于文本的用户界面工具和其他网络设置),网络管理器的一部分:

nmtui

启动此用户界面:

在此输入图像描述

其中有一个选项Set system hostname

NetworkManager 的文本用户界面默认安装在 CentOS-7-x86_64-DVD-1511.iso 映像、基本安装中。如果你的没有它,你可以使用以下命令安装它:

yum install NetworkManager-tui

答案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)

相关内容