单用户启动CentOS跳过密码实例2
本文紧跟上一篇,结合一实际例子进行密码绕过,并对部分方法、参数进行说明。
第一句:linux /boot/vmlinuz-2.6.18-419.el5 root=UUID=d66e30d1-5ad3-4a52-992e-d1d47f1cbbf9 ro ide0=noprobe console=tty0 console=ttyS0,115200n8 net.ifnames=0 idle=halt
linux与linux16的区别:
Linux:从file加载Linux内核映像。该行的其余部分逐字传递为内核命令行。使用此命令后,必须重新加载任何initrd。在x86系统上,将使用32位启动协议启动内核。
Linux16:从文件以16位模式加载Linux内核映像。该行的其余部分逐字传递为内核命令行。使用此命令后,必须重新加载任何initrd。
参数一:ide0=noprobe。Linux内核支持使用引导时指定的命令行参数来避免探测特定的IDE驱动器和IDE接口的能力。在系统启动期间,探测IDE设备可能需要花费几秒钟的时间。探测已知在嵌入式设备中不使用的接口尤其麻烦。所以在启动内核前,验证没有对ide1做任何探测。
网搜问题:
Kernel command line: root=/dev/hde3 ro hda=none hdb=none ide0: BM-DMA at 0xd800-0xd807, BIOS settings: hda:pio, hdb:pio
Probing IDE interface ide0... hda: IRQ probe failed (0xfffffdb8)
same for hda=noprobe hdb=noprobe,Nothing helps.
Is this a bug or not? I'd think that saying "noprobe" means "do NOT probe" - but it probes anyway.
回答:If your kernel uses modular IDE drivers and an initrd/initramfs that loads them, your result is the expected one (not a bug). One should add the following or similar options into /etc/modprobe.conf in the initrd in order to get the result:
options ide_core options="ide0=noprobe hda=noprobe hdb=noprobe"
If you don't use initrd, or have a non-modular IDE driver, please ignore this message.
参数二:console=tty0
为了支持没有控制台的计算机,GRUB提供了远程终端支持,因此您可以从远程主机控制GRUB。目前仅实现串行终端支持。
参数三:console=ttyS0,115200n8
其中“ttyS0”,“0”表示串口使用COM1;“115200”表示波特率为115200bps;“n”表示无校验位;“8”表示有8位数据位。
跳过密码过程:
第一步:删除掉无用参数,增加init=/bin/sh。
Ctrl+X重启,并重新挂载rw权限的硬盘。
Passwd直接修改密码,并touch记录。
重启后,重新登陆成功。