Fedora34 qcow2 镜像无法密码登录解法

Fedora34 qcow2 镜像无法密码登录

fc34 qcow2 版本的镜像, 给 QEMU 使用.
能搜索的资料基本都是过时的, 没有 fedora 这个账号供登录

要看以下官方链接:
https://docs.fedoraproject.org/en-US/fedora-server/virtualization-vmcloud/#_installation_alternative_1_minimal_configuration_effort

This type of installation uses the --cloud-init parameter without any value or subparameters. This approach causes the generation and display of a root password shortly after the start of installation, enabling a one-time login.

官方资料是用 virt-install 在初始安装完成时动态显示个一次生 root 的密码,
看来给 qemu 使用, 想登录进系统, 还得另寻方法.

解法:

  1. 以 single 模式, 启动系统;
  2. 给 root 账号设置一个密码;
  3. 屏蔽 selinux

设置启动参数, 以 single 启动

启动 qemu , 在出现 grub2 菜单时, 按 e 键, 进入编辑模式.
方向键移到加载内核的 linux 那一行末尾, 添加 single init=/sbin/bash selinux=0

grub2菜单修改内容

完成后, 按 ctrl-x 启动

设置密码

稍后片刻, 提示按 Enter 进入 emergency mode 时, 按回车得到一个位于 initramfs 中的 shell.
按以下命令进入根文件系统, 给 root 设置一个密码.

# 令根文件系统可写
mount -o remount,rw /sysroot  

# 切换到 qemu 镜像的根目录.
chroot /sysroot /bin/bash     

# 更改 root 密码
passwd root                   
 ## 此处根据提示设置 root 用户的密码

## 在测试中, 光是改密码还不能登录, 还要禁止 selinux, 即给内核加上参数 `selinux=0`
## 在 shell 中继续以下命令
sed -r -i -e 's@(^\s*^options\s+[^#]*)(#.*)?@\1 selinux=0 \2@g' /boot/loader/entries/*.conf

# 退出根文件系统, 返回 emergency mode 的 shell
exit

# 重启系统
reboot -f 

完成.

(实际此法也可更改任何Linux系统的密码,只要得到一个有必要工具的 shell)

posted @ 2021-08-07 17:39  陈tseesing  阅读(597)  评论(0编辑  收藏  举报