1、远程修改虚拟机密码
1.1在虚拟机上安装Qemu Guest Agent
yum -y install qemu-guest-agent --enablerepo=C7.4*
systemctl enable qemu-guest-agent
systemctl start qemu-guest-agent
vim /etc/sysconfig/qemu-ga #注释此行
systemctl restart qemu-guest-agent.service
1.2在宿主机上修改虚拟机密码
virsh qemu-agent-command test -cmd '{"execute":"guest-info"}'
virsh set-user-password test --user root --passwd 12345
2、破解虚拟机密码,无密码登录
2.1安装guestmount工具
- Centos系统:
yum -y install libguestfs-tools-c
- Ubuntu系统:
apt -y install libguestfs-dev guestmount
参考:
apt-get install guestfsd libguestfs-dev guestfish libguestfs0 libguestfs-tools python-guestfs guestmount seabios
2.2关闭虚拟机"
virsh destroy test
2.3挂载虚拟磁盘
mkdir /tmp/virimage
guestmount -d test -i /tmp/virimage
2.4 把虚拟机root设置为空
将passwd中密码占位符号x删除,该帐户即可实现无密码登录系统。
sed -i "/^root/s/x//" $mountpoint/etc/passwd
注:$mountpoint为空,请使用挂载目录/tmp/virimage/etc/passwd
2.5 去挂载
umount /tmp/virimage
注:上面test为虚拟机的名称。