主機名是網絡上的服務器、計算機或設備的名稱。您可能會遇到需要更改主機名的業務場景。您還可以問自己為什麼需要更改主機名。很可能是因為域名更改、業務課程更改或其他更好的原因。

您可能會忘記在域名到期之前更新您的域名。結果,域名經紀人從您下面購買了域名。域名經紀人購買流行的網站名稱並保留它們,直到買家支付高價。

以下是在 Ubuntu 16.04 中更改主機名的步驟,無論您為什麼需要更改它。但是,在進入這些步驟之前,需要了解一些重要的術語和概念。

什麼是完全限定域名 (FQDN)?

完全限定域名 (FQDN) 是指示域名系統 (DNS) 層次結構中確切位置的域名。我們建議您使用 FQDN 作為主機名。

為什麼使用 FQDN?

FQDN 有助於提高域安全性、DNS 可預測性並減少延遲。

提高安全性

使用安全套接字層 (SSL) 證書來保護您的域名和主機名。 SSL 通過超文本傳輸協議 Secure (HTTPS) 提供安全連接,並為 Web 瀏覽會話提供加密和身份驗證。

DNS 可預測性

在註冊域中使用主機名允許您添加相應的 DNS 條目,以防止某些使用該主機名的服務出現意外行為。此外,您可以使用已註冊的域名作為主機名來設置反向查找 DNS 條目。這對於電子郵件驗證等服務至關重要。

例如,服務器當前用於減少電子郵件欺騙事件的預防措施之一是反向 DNS 查找。發送電子郵件時,接收服務器對發件人的主機名執行反向查找。反向查找允許收件人的服務器驗證主機名是否解析為匹配的 IP 地址。

減少延遲

此外,您可以通過使用唯一的域名來減少編輯時間。可能有一個腳本調用服務器的 IP 而不是主機名以正確執行。最佳做法是使用主機名,因為未來的遷移可能會更改 IP 地址/範圍。主機名最終可以為您節省大量時間,具體取決於您的基礎架構和編碼。

使用 SSH 更改主機名

要在 Ubuntu 16.04 中更改服務器的主機名,您需要連接到服務器。 使用 Secure Shell (SSH) 訪問服務器並發出本文中的命令。 SSH 是一個強大的工具,可讓您建立與服務器的安全連接、診斷問題和發出遠程命令。

有多種使用 SSH 的方法,具體取決於您的操作系統。下面是一些示例,後面是指向更多信息的鏈接。

視窗 10

Windows 10 使用 OpenSSH(一組基於 SSH 協議的安全網絡服務)通過不安全的網絡提供與服務器的安全連接。直到本地才引入 Windows 10 秋季創意者更新 (版本 1709)。

如果你想在本地使用 OpenSSH,你必須首先更新到至少這個版本的操作系統。如果由於某種原因您無法更新到該版本,請按照 Windows 10 教程中的本地 SSH 客戶端進行操作。

視窗 7/8

舊版本的 Windows 無法通過 SSH 連接到服務器,但某些應用程序可能有用。 MobaXterm 什麼時候 油灰 是一個免費且易於設置的安全選項。

蘋果系統

新的 macOS 操作系統帶有一個用於訪問 SSH 的強大實用程序,稱為終端。要訪問它:

  1. 應用 文件夾。
  2. 邀請 效用 文件夾。
  3. 打開 終端..

Terminal 是一個現成的實用程序,但您也可以下載 Putty 或 App Store 中可用的選項之一。

如何更改主機名

如何使用 VIM 更改主機名

現在您已經使用 SSH 訪問了服務器,切換到 root 用戶或使用 sudo 運行這些命令。要訪問的文件是需要 root 權限的 root 用戶文件。

步驟1

首先,打開您喜歡的文本編輯器並切換到 root。 我正在使用 VIM 文本編輯器。

# su - root

第2步

分別使用以下步驟編輯 /etc/hostname 文件和 /etc/hosts 文件,以更新主機名。

.1。 使用 #vim /etc/hostname 命令打開主機名文件,然後按 i 編輯文件。編輯說 投放 它位於文件的底部。

2. 轉到當前主機名並將其替換為新主機名。

3. 按 結束 退出插入模式。

4:使用 wq 命令寫入文件並退出編輯器。

5. 按照相同的步驟使用#vim /etc/hosts 編輯hosts 文件。

第 3 步

編輯文件後,結束 SSH 會話並重新啟動服務器。

# reboot

重新啟動服務器可能需要幾分鐘時間。當服務器重新聯機時,運行以下命令以查看更改。

# hostname

如果一切順利,終端應該打印新的主機名。

如何使用 sed 命令更改主機名

更改主機名的另一種方法是使用 sed 命令。包含使用此方法的命令。

注意:在本示例中,舊主機名是 host.oldhostname.com。 將 host.newhostname.com 更改為新的主機名。

在 /etc/hostname 文件和 /etc/hosts 文件的終端窗口中輸入以下命令。

# sed -i 's/host.oldhostname.com/host.newhostname.com/g' /etc/hostname
# sed -i 's/host.oldhostname.com/host.newhostname.com/g' /etc/hosts

完成後,重新啟動服務器。 您可以使用 hostname 命令查看更改。

更新主機名後的常見問題

啟動hostname.service失敗:如果/etc/hostname或者/etc/hosts文件有語法錯誤,或者這兩個文件之間的hostnames不匹配,那麼單元hostname.service就會得到一個被屏蔽的錯誤.在下面。

3-主機名更新後的常見問題

請務必檢查這兩個文件是否有錯誤,並在必要時進行更正。在較新版本的 Ubuntu 中,您還應該使用 hostnamectl 命令。

# hostnamectl set-hostname host.newhostname.com

請務必在修復後啟動主機名服務以查看問題是否消失。為此,請運行 systemctl 命令,如下所示。

# systemctl restart hostname

注意:我們建議您在進行這些更改後重新啟動服務器。

結論是

更改主機名既有價值又容易。我解釋瞭如何更改主機名和要使用的工具。通過遵循這些步驟和最佳實踐,您可以快速更改主機名並返回您的業務。

Liquid Web 客戶可以使用 24/7 全天候技術支持來幫助更改主機名等。 如果您不使用 Liquid Web Hosting,請聯繫您的銷售團隊,了解如何使用超快 VPS、僅雲或專用服​​務器。