问题描述: 修改了Linux7.5的 /etc/passwd 里的root用户名导致系统无法登陆,开机后无法正常启动,页面停留在piix4 SMBus Host Controller not enabled 就不继续了。开始以为是SMBus的问题,所以按照方法一修补了SMbus问题。但还是不能登陆系统。所以采用了方法2重装了系统的内核,把问题解决了。
方法1:
开机后按上下方向键,会暂停启动,然后根据下面的提示说明在你的操作系统选项上按 e 键会进入编辑 启动加载项 的模式
然后再linux16那一项末尾添加 rd.break。
然后根据下面的提示按Ctrl+x可以启动系统,进入救援模式。
在这个救援模式下输入以下命令
mount -o remount ,rw /sysroot #以读写方式进入重新挂载根目录系统
chroot /sysroot #切换到root用户,执行操作后会进入 sh-4.2#模式
输入 pwd 先看看当前处在什么目录,然后cd到你想去的那个目录,比如 modprobe.d 目录 然后vim 里面那个blacklist.conf 或dccp-blacklist.conf 可以编辑了
在文件添加
blacklist i2c_piix4
另一种情况是:
在虚拟机上运行Linux内核版本为4.7或以上的系统都在安装过程中或在启动时会因为加载intel_powerclamp驱动而导致崩溃
所以就要 blacklist inter_powerclamp
完成操作后在 sh-4.2# 下输入 exit 会返回 switch_root 然后这个界面才能输入 reboot 重启。
然后可以执行相应的查改命令了。注意这个时候vim命令是用不了的,可以使用vi命令。
方法2:
虚拟机开机后,按【F2】进BIOS 然后设置成光盘启动。这个步骤跟真机启动的时候设置是一样的。注意一定要在虚拟机的屏幕里点进去鼠标,然后马上按【F2】。注意,如果之前有进过系统,那么在虚拟机重启的时候按【F2】是不管用的,必须把虚拟机关闭再启动虚拟机才能进入BIOS的设置。,
光盘启动后,进入Troubleshootiing的模式。选那个 Rescue a Red Hat Enterprise System的救援模式。接下来按照屏幕提示按Enter,接下来会提示你输入1回车,进入 continue的那个选项。
然后屏幕上会告诉你现在在 /mnt/sysimage 文件夹里挂载了一个临时的系统。输入回车,这时候你就进入了救援模式的命令行。
现在屏幕会提示你输入 chroot /mnt/sysimage 才会切换到救援模式的临时系统,并且用户是这个系统的 root。所以你可以按照屏幕的提示,输入chroot /mnt/sysimage,然后你才算进入了这个救援模式的临时系统了。这一步很重要,因为只有在这个救援模式的临时系统下,你才能把光驱挂载和使用。尽管你的这个光驱本来就已经挂载到你的机器上作为你的启动盘了。
然后新建一个文件夹,比如 mkdir /mnt/cdrom1 ,然后输入 mount /dev/cdrom /mnt/cdrom1 ,把dev下的光驱挂载到你的这个临时系统,这之后屏幕会提示你光驱已经以只读模式加载了。
现在输入 rpm -ivh /mnt/cdrom1/Packages/kernel-3.10... --force,强制重装内核。 其中/kernel后面是一长串字符,是系统内核的名称,可以按 【tab】键自动补全的。如果 字符输入有误,按【tab】键会出来哔哔声。
内核装好后,执行 grub2-install /dev/sda 重装grub2文件。正确执行完毕后会显示 No erro reported
接下来执行 grub2-mkconf -o /boot/grub2/grub.cfg 重新安装grub的配置文件。
然后输入exit退出临时系统的root用户,返回救援系统的命令行,再输入 reboot 重新启动,大概就可以正常启动系统了。