【Linux】【Ubuntu】 中更改 hostname
在 Ubuntu 中更改 hostname 有兩種常見方式,以下提供完整步驟:
1️⃣ 使用 hostnamectl
(推薦方式,Ubuntu 16.04 之後)
hostnamectl
是 systemd 提供的指令,可同時修改 暫時 與 永久 主機名稱。
# 查看當前 hostname
hostnamectl status
# 修改 hostname,例如改成 my-server
sudo hostnamectl set-hostname my-server
-
立即生效:不需重開機,新的主機名稱會寫入
/etc/hostname
並更新systemd
。 -
驗證:
hostname hostnamectl
⚠️ 有時候 shell 提示字仍顯示舊名稱,重新登入 SSH 或
su - $USER
會看到更新。
2️⃣ 手動編輯設定檔
如果是較舊版本或想手動修改,可直接編輯以下兩個檔案:
-
/etc/hostname
sudo nano /etc/hostname
把原本的名稱改成新的,如
my-server
。 -
/etc/hosts
sudo nano /etc/hosts
找到類似:
127.0.1.1 old-hostname
改成:
127.0.1.1 my-server
這步驟避免本機解析錯誤。
-
重新啟動或執行:
sudo systemctl restart systemd-logind
或乾脆
sudo reboot
。
補充建議
-
雲端平台(AWS EC2、GCP、Azure):有些 VM 啟動時會被 Cloud-init 覆蓋,建議同時修改
/etc/cloud/cloud.cfg
將preserve_hostname
設為true
。 -
影響範圍:只影響系統層主機名稱,不會自動更新 SSL 憑證或 DNS 設定。
總結
建議使用
sudo hostnamectl set-hostname <新名稱>
這是最簡單且官方推薦的方式,重登入即可生效。