1. 程式人生 > >CENTOS修改主機名

CENTOS修改主機名

1.臨時修改主機名

顯示主機名:

[email protected]:~$ hostname
zhh64

修改主機名:

[email protected]:~$ sudo hostname zzofs
[email protected]:~$ hostname
zzofs

看一下$PS1

[email protected]:~$ echo $PS1
/[/e]0;/[email protected]/h: /w/a/]${debian_chroot:+($debian_chroot)}/[email protected]/h:/w/$
@符號後面跟/h即主機名。

命令列前的提示符主機名怎麼沒有更新呢?

重新開啟一個終端,就看到更新了。

[email protected]:~$

2.永久修改主機名

以上的修改只是臨時修改,重啟後就恢復原樣了。

redhat/centos上永久修改

[[email protected] ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=localhost.localdomain
GATEWAY=192.168.10.1

修改network的HOSTNAME項。點前面是主機名,點後面是域名。沒有點就是主機名。

[[email protected] ~]# vi /etc/sysconfig/network

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=gdbk

這個是永久修改,重啟後生效。目前不知道怎麼立即生效。

想立即生效,可以同時採用第一種方法。

還有一個就是修改

/etc/hosts

127.0.0.1              localhost.localdomain
::1             hdirect30 hdirect30

127.0.0.1後面的那一部分。

deb/ubuntu上修改

hostname
localhost.localdomain

sudo vi /etc/hostname

在/etc/hostname裡面直接填上hostname

[email protected]:~$ cat /etc/hostname
zhh64

重啟後,提示符變成了。

[email protected]:~$

如果不想重啟,則用hostname名令。

3. 其他修改方式

用sysctl 修改kernel.hostname

檢視:

[email protected]:~$ sysctl kernel.hostname
kernel.hostname = zhh64

修改:

[email protected]:~$ sudo sysctl kernel.hostname=zzh
kernel.hostname = zzh

重新開啟shell就變成如下hostname了zhh

[email protected]:~$

4. hosts檔案與主機名修改無關

一些網路文章中提出修改主機名還需修改Hosts檔案,其實hosts檔案和主機名修改無關。

cat /etc/hosts

127.0.0.1       localhost
192.168.11.116  zhh64
192.168.12.14 centdev

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

hosts檔案是配本地主機名/域名解析的。

如我本機ip是192.168.11.116名字是zhh64.就可以直接訪問主機名。

[email protected]:~$ ping zhh64
PING zhh64 (192.168.11.116) 56(84) bytes of data.
64 bytes from zhh64 (192.168.11.116): icmp_seq=1 ttl=64 time=0.077 ms

[email protected]:~$ ping centdev
PING centdev (192.168.12.14) 56(84) bytes of data.
64 bytes from centdev (192.168.12.14): icmp_seq=1 ttl=63 time=0.726 ms

如果是小型區域網,就可以將hosts檔案機器配全了,拷貝到每個機器,然後在ssh訪問時用主機名直接訪問。

[email protected]:~$ ssh centdev
[email protected]'s password:
Last login: Wed Feb  3 10:03:09 2010 from 192.168.11.116
[[email protected] ~]$
[[email protected] ~]$ ifconfig eth0 | grep inet
          inet addr:192.168.12.14  Bcast:192.168.12.255  Mask:255.255.255.0
          inet6 addr: fe80::21e:c9ff:fe57:2575/64 Scope:Link

4.參考

http://www.ducea.com/2006/08/07/how-to-change-the-hostname-of-a-linux-system/