20191213 克隆一個 ubuntu 1804虛擬機,按照以前記錄的克隆ubuntu 1604 方式,在修改主機名這裏有些不一樣,乾脆重新記錄一下,以便下次參考!
20200615 發現以前的一個修改主機明的方法
-
使用 hostnamectl 修改主機名稱
hostnamectl --static
hostnamectl --transient
hostnamectl --pretty -
重設主機名稱
sudo hostnamectl set-hostname ubuntu1804-76
sudo hostnamectl set-hostname ubuntu1804-76 --transient
sudo hostnamectl set-hostname ubuntu1804-76 --pretty -
修改 hosts
vim /etc/hosts
直接查看名稱已經改變
sudo reboot 才能看到顯示改變了?
1、修改主機名和 ip
-
修改 cloud.cfg
sudo vim /etc/cloud/cloud.cfg
preserve_hostname: false
修改爲 true -
修改 hostname
sudo vim /etc/hostname -
修改 hosts
sudo vim /etc/hosts
發現裏面沒有對應 hostname 得了,所以,無需修改了! -
確認
cat /proc/sys/kernel/hostname*** 不要重啓,等後續 ip 修改完成之後再 reboot
2、修改 ip 地址
-
cd /etc/netplan
ls 確認一下配置文件名
sudo vim 50-cloud-init.yaml -
查看IP和gateway
ip aroute -n
-
查看 DNS 地址
$ ls -l /etc/resolv.conflrwxrwxrwx 1 root root 29 Jan 21 2019 /etc/resolv.conf -> …/run/resolvconf/resolv.conf
$ systemd-resolve --status
systemd-resolve: unrecognized option ‘–status’
$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 223.5.5.5
-
應用生效
sudo netplan apply*** 修改完一旦 apply ,ip 地址生效,遠程 ssh 鏈接就斷開了!但是,再次 ssh 連接會發現 主機名並沒有改變,所以,只有 reboot !
*** 如果不需要修改用戶名、組名的話,到這裏直接重啓!
3、 修改用戶名、組名
*** 假設舊組名和用戶名是 sftpold:sftpold
*** 將要改成 sftpnew:sftpnew
1. kill 該用戶的進程
sudo pkill -u sftpold
sudo pkill -9 -u sftpold
2. 修改用戶名
sudo usermod -l sftpnew sftpold
** sudo groupmod -n 新用戶名 舊用戶名
** 將 sftpold 改名爲 sftpnew
4. 修改組名
sudo groupmod -n sftpnew sftpold
** sudo groupmod -n 新組 舊組
** 將 組sftp075 改名爲 組sftp073
5、確認
cat /etc/passwd | grep sftpnew
4、 修改 sshd config
** 如果沒有限制該賬號的 ssh ,可以忽略這一步
cd /etc/ssh
sudo vim sshd_config
找到最後設置的 ssh 賬號限制,修改爲新的用戶名
Match User sftpnew
ForceCommand internal-sftp