宿主机是centos 7,上面安装了一台虚拟机(操作系统也是centos 7)。
一段时间之后,虚拟机的root口令忘记了,下面给出一种简便的解决方法:
1、在宿主机中安装libguestfs套件,libguestfs是一个工具集,用以访问和修改虚拟机的磁盘映像,功能非常丰富。
yum install libguestfs-tools
2、可以先行备份虚拟机中待修改的文件,在宿主机中执行
virt-copy-out -a c7.img /etc/shadow /tmp
备份虚拟机中的/etc/shadow文件到宿主机的tmp目录下,其中c7.img是虚拟机的磁盘映像。
3、直接编辑虚拟机中的口令文件,在宿主机中执行
virt-edit -a c7.img /etc/shadow
此时打开一个vi编辑窗口,口令文件包含多行,每个用户一行,root用户的信息通常在第一行。
每行都包含冒号分隔的多个域,第二个域是加密之后的口令。
清空root用户的第二个域,存盘退出,这样root用户的口令为空。
4、以正常方式启动虚拟机,以root用户登录,提示输入密码时直接回车,登录成功
5、登录虚拟机root用户后,可以运行passwd命令重新设置root用户的新口令。
本文介绍如何利用libguestfs工具集简便地解决在CentOS7宿主机上安装的CentOS7虚拟机遗忘root口令的问题。通过安装libguestfs套件、备份文件、编辑虚拟机文件等步骤,实现root口令的恢复与重新设置。

91

被折叠的 条评论
为什么被折叠?



