我不知道我做了什么,但是当我启动时,我在 BusyBox 中收到以下消息:
Give up waiting for root file system device. Common problems:
-Boot args (cat /proc/cmdlines)
-Check rootdelay= (did the system wait long enough?)
-Missing modules (cat /proc/modules; ls /dev)
ALERT! UUID=eb253f2f-5fbd-4952-810a-2841b01e3425 does not exist. Dropping to a shell!
blkid
返回这个:
/dev/sda1: LABEL="ESP" UUID="9C01-5EBA" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="74264bc4-8b04-48bc-8fc7-406f87a01438"
/dev/sda3: LABEL="Acer" UUID="826E03A86E0393D7" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="d770662a-4898-40e9-ba97-0d576451a126"
/dev/sda4: LABEL="Recovery" UUID="5624055124053611" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="a4611369-500b-4582-8af6-7a50a221f972"
/dev/sda5: UUID="eb253f2f-5fbd-4952-810a-2841b01e3425" TYPE="ext4" PARTUUID="30a44434-207e-44f6-a85e-ff516aed39b2"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
/dev/loop3: TYPE="squashfs"
/dev/loop4: TYPE="squashfs"
/dev/loop5: TYPE="squashfs"
/dev/sda2: PARTLABEL="Microsoft reserved partition" PARTUUID="073584e1-fef1-420b-92b8-25bebfc7e809"
所以它应该可以工作,并且当我从 Grub 中的“恢复模式”启动系统时它实际上可以工作。我只需要在某个时候按CTRL+即可。D但当我像往常一样启动计算机时,它会直接进入 BusyBox。我不知道该怎么办,因为我已经浏览了很多论坛。
[编辑已解决] 我编辑/etc/default/grub
并添加了导致我的启动失败的行。把它们去掉,就恢复正常了。吸取的教训,不要改变你不知道的事情,记录你改变的事情......
答案1
因此,当引导过程尝试挂载根文件系统时,UUID=eb253f2f-5fbd-4952-810a-2841b01e3425
无法找到,但是一旦您进入 shell 并输入命令blkid
,实际上就可以找到它。正确的?
然后,看起来您已经设法使系统启动过程如此之快,以至于系统在/dev/sda
正确检测到并准备使用之前尝试挂载根文件系统。 (也许“这是一个好问题”?)
正如消息中所建议的,您可以尝试添加启动选项rootdelay=5
来延迟挂载根文件系统 5 秒,以便首先完成硬件检测。如果这允许系统正常启动,请尝试使用较小的rootdelay
值,直到找到允许系统可靠启动的最小值。
您还可以使用例如检查磁盘的健康状态smartctl -H -i -A -f brief -l xerror,error -l devstat -l sataphy /dev/sda
。首先,注意这部分:
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
如果它显示“通过”以外的信息,则说明您的磁盘已处于最后状态或已经出现故障,这可能可以解释为什么磁盘启动速度可能会变慢。 SMART 属性列表和可能的硬件错误日志(如果您的磁盘型号支持)可能会提供有关磁盘运行状况的更详细信息。