Linux 提供多種修改主機名稱的途徑,但並非所有方法都能在重開機後保持。本文整理三種常見方式,並說明如何組合達到永久生效。
hostname # 查看目前主機名
hostname newname # 立即修改(需 root)
缺點:重開機後恢復原狀,僅適合臨時測試。
編輯檔案,確保 IP 對應新主機名:
127.0.0.1 localhost.localdomain localhost
192.168.0.2 newname newname
部分發行版僅修改此檔重開機仍會被覆蓋。
NETWORKING=yes
HOSTNAME=newname
此為開機腳本讀取的永久設定。
作者實測:單獨用 hostname 或只改 /etc/hosts 重開機會失效;同時更新 /etc/hosts 與 /etc/sysconfig/network,再重開機,方能永久生效。
RHEL 7 / CentOS 7 / Ubuntu 16.04 以上建議使用:
hostnamectl set-hostname newname
此指令會同步更新 /etc/hostname 及核心參數,無需手動編輯多個檔案,重開機永久有效。