Linux中國

如何在Linux中顯示和設置主機名

隨著連接到網路的計算機數量越來越多,每一台計算機都需要有一個屬性來區別於其它計算機。和現實世界中的人一樣,計算機也有一個叫做hostname(主機名)的屬性。

什麼是hostname

從它的操作手冊來看,hostname是用來顯示系統的DNS名字以及為了顯示設置它的主機名或者NIS域名名字。所以hostname依賴於DNS(Domain Name System域名系統)或者NIS(Network Information System網路信息系統)。

怎麼顯示hostname

hostname是為每一個linux發行版的預安裝命令。通過在控制台輸入hostname,可以顯示你的機器的hostname。這裡有一個有個簡單的命令及其輸出。

$ hostname
ubuntu

上面的命令將會告訴你,計算機的名字是ubuntu

如何設置hostname

Hostname是在你第一次安裝Linux的時候設置。其中有一個步驟Linux會讓你輸入主機名稱的信息。不過,如果你願意的話,你在之後設置也可以。

設置你的hostname,你可以使用下面的命令:

# hostname dev-machine

$ hostname
dev-machine

需要使用root許可權,或者等同root的許可權來設置/修改你計算機的主機名。「#」標識證明你是root用戶。上述命令把你的計算機主機名設置成為dev-machine。如果你沒有收到任何報錯信息,那麼你的hostname已經改變了。再一次使用hostname命令檢查,看看結果。

使用hostname命令設置你的hostname 不是永久的 。當你重啟你的計算機,你的設定將會失效。 為了永久改變 ,你必須手動修改hostname配置文件。

Debian / Ubuntu系的Linux

你可以在 /etc/hostname/etc/hosts 文件夾中找到這個文件

下面是每一個文件的內容

/etc/hostname

# vi /etc/hostname
dev-machine

/etc/hosts

# vi /etc/hosts
127.0.0.1 localhost
127.0.0.1 dev-machine

你將會發現不用重啟你的linux它就即刻生效。

RedHat / CentOS系的Linux

你可以在 /etc/hosts/etc/sysconfig/networks 文件夾中找到這個文件。

下面是每一個文件的內容

/etc/hosts

127.0.0.1 localhost.localdomain localhost dev-machine
::localhost 127.0.0.1

/etc/sysconfig/network

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=dev-machine

怎麼顯示DNS域名

來自上面的hostname的定義,hostname也可以顯示你的Linux的DNS名字。如果你的hostname命令會顯示你的hostname,那麼dnsdomainname命令也就會顯示你的域名。來看看這個簡單的例子。

$ dnsdomainname
bris.co.id

在本篇文章,dnsdomainname命令的結果是 bris.co.id

如果你看見結果是 (none),那麼你的機器沒有配置FQDN(Fully Qualified Domain Name 完全符合標準的域名) 。dnsdomainname命令摘取來自/etc/hosts文件的信息。你應該配置它為FQDN格式。下面是一個簡單的例子:

/etc/hosts

127.0.0.1 localhost.localdomain localhost dev-machine
::localhost 127.0.0.1
192.168.0.104 dev-machine.bris.co.id dev-machine

為了顯示更多的細節,你可以使用參數-v

$ dnsdomainname -v
gethostname()=』dev-machine.bris.co.id』
Resolving 『dev-machine.bris.co.id』 …
Result: h_name=』dev-machine.bris.co.id』
Result: h_aliases=』dev-machine』
Result: h_addr_list=』192.168.0.104』

如何顯示hostname的更多細節信息

Hostname命令可以使用多個參數和一些別名,比如dnsdomainname命令就是它的一個別名。這些參數在每日操作中是有用的。下面這些命令的結果是基於/etc/hosts的上述配置。

顯示IP地址

$ hostname -i
192.168.0.104

顯示域名

$ hostname -d
bris.co.id

顯示短主機名 $ hostname -s dev-machine

這個命令將會產生與只輸入hostname同樣的結果

顯示FQDN格式

$ hostname -f
dev-machine.bris.co.id

顯示細節信息

所有的參數包括上述信息,都可以通過使用參數-v-d 來概括。讓我們來看一個例子。

$ hostname -v -d
gethostname()=』dev-machine.bris.co.id』
Resolving 『dev-machine.bris.co.id』 …
 Result: h_name=』dev-machine.bris.co.id』
Result: h_aliases=』dev-machine』
Result: h_addr_list=』192.168.0.104』 
bris.co.id

覺得熟悉嗎?沒錯,運行結果與上面提到的 dnsdomainname -v 命令式相同的。

via: http://linoxide.com/linux-command/display-set-hostname-linux/

譯者:Vic___ 校對:Caroline

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國