在Ubuntu 16.04及多數Linux版本中,如需要修改hostname,直接修改/etc/hostname文件即可。
但是在Ubuntu 18.04及18.10中,修改/etc/hostname文件后,重啟電腦就會恢復原始的設置。
原因:
Ubuntu在新版中默認安裝了cloud-init工具,是一個自動化的雲服務工具。
當系統啟動時,cloud-init會從nova metadata服務或config drive中獲取metadata,完成包括但不限於下面的定制化工作:
1.設置default locale
2.設置hostname
3.添加ssh keys到.ssh/authorized_keys
4.設置用戶密碼
5.配置網絡
6.安裝軟件包
解決方法:
sudo vim /etc/cloud/cloud.cfg
找到preserve_hostname: false這行,把false改成true。
作用是保存用戶修改的hostname值,不重新從雲端同步hostname。
然后就可修改hostname了。附上修改的3種方法(任意一種均可修改):
1.輸入命令(舊版)
sudo hostname myHostname #這里的myHostname就是修改的名字
2.輸入命令(新版)
sudo hostnamectl set-hostname myHostname #這里的myHostname就是修改的名字
3.修改/etc/hostname文件中的值
sudo vim /etc/hostname
修改后重啟電腦。