我们需要在远程托管的 Ubuntu VM 上重置 root 密码。没有已知的 sudo 帐户可用。我们只能通过基于 Web 的控制台访问 VM。在启动时使用 Shift 键进入 Grub 似乎不起作用。托管公司提供的控制台只有一个选项“启动 Linux 救援模式”。托管公司不想在这件事上支持我们。
当使用此选项时,我们发现自己被限制在恢复环境中,似乎无法在实际的虚拟机上改变任何东西。
问题:
A. Shift 键启动到 Grub 是否可行,即使通过 Web 浏览器控制台远程启动?B. 我们需要如何才能在“启动 Linux 救援模式(实际上是“SystemRescue-Cd 4.7.2”)”中成功重置关联 VM 上的 root 密码?
到目前为止我们尝试做的是:
- 选择“启动 Linux 救援模式”后重启
- 检查根文件系统的分区
- 创建目录 /media/vda1 来挂载根文件系统
- 将虚拟机的根文件系统挂载到 /media/vda1
- 尝试 chroot 到 /media/vda1
执行passwd root修改root密码
- @安慰:
root@sysresccd /root%fdisk-l
... 设备启动开始结束扇区大小ID类型 /dev/vda1 * 2048 499711 497664 243M 83 Linux /dev/vda2 501758 314570751 314068994 149.8G 5 扩展 /dev/vda5 501760 314570751 314068992 149.8G 8e Linux LVM ... root@sysresccd /root%mkdir/media/vda1 root@sysresccd /root%挂载/dev/vda1/media/vda1 root@sysresccd /root%ls/media/vda1 abi-3.13.0-55-通用 配置-3.13.0-55-通用 grub(目录) initrd.img-3.13.0-55-通用 失物招领(目录) System.map-3.13.0-55-通用 vmlinuz-3.13.0-55-通用
看起来 /media/vda1 不包含虚拟机的根文件系统。请继续执行 chroot /media/vda1:
root@sysresccd / root % chroot /dev/vda1
chroot: failed to run command /bin/zsh: no such file or directory
任何建议都值得赞赏。谢谢。