“放弃等待根设备。警报!/ dev / disk / by-uuid /不存在。引导时掉入外壳”


11

几年前,我使用Ubuntu并放弃了它。我现在准备再试一次。令我惊讶的是,我第一次安装后就收到此消息。如果我等了一段时间然后键入exit,操作系统将正常启动。我决定重新安装Ubuntu,看看是否能解决问题。事实并非如此。它保持相同的方式。

Gave up waiting for root device. Common problems:
  — Boot args (cat /proc/cmdline)
    — Check rootdelay= (did the system wait long enough?)
    — Check root= (did the system wait for the right device?)
  — Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/11d3bcfa-0726-47cf-a705-e4acdd9169fe does not exist.   
Dropping to a shell!

BusyBox v.1.21.1 (Ubuntu 1:1.21.0-1ubuntu1) built-in shell (ash)   
Enter 'help' for list of built-in commands.  

(initramfs)

任何建议表示赞赏!

sudo blkid; 安装; cat / etc / fstab输出:

/dev/sda1: LABEL="System Reserved" UUID="1C8CC0F68CC0CC08" TYPE="ntfs" 
/dev/sda2: UUID="A490C32890C30032" TYPE="ntfs" 
/dev/sda5: UUID="920c6caa-4062-45f0-a58c-585db797d554" TYPE="swap" 
/dev/sda6: UUID="11d3bcfa-0726-47cf-a705-e4acdd9169fe" TYPE="ext4" 
/dev/sda6 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
systemd on /sys/fs/cgroup/systemd type cgroup     (rw,noexec,nosuid,nodev,none,name=systemd)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=inti)
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda6 during installation
UUID=11d3bcfa-0726-47cf-a705-e4acdd9169fe /               ext4    errors=remount-ro     0       1
# swap was on /dev/sda5 during installation
UUID=920c6caa-4062-45f0-a58c-585db797d554 none            swap    sw                  0       0

这是grep rootdelay /boot/grub/grub.cfg的输出

    linux   /boot/vmlinuz-3.13.0-32-generic root=UUID=11d3bcfa-0726-47cf-    a705-e4acdd9169fe ro rootdelay=10 quiet splash $vt_handoff
        linux   /boot/vmlinuz-3.13.0-32-generic root=UUID=11d3bcfa-0726-47cf-    a705-e4acdd9169fe ro rootdelay=10 quiet splash $vt_handoff
        linux   /boot/vmlinuz-3.13.0-32-generic root=UUID=11d3bcfa-0726-47cf-    a705-e4acdd9169fe ro recovery nomodeset rootdelay=10

好。关于它有很多线程,没有明确的解决方案。尝试以下操作:编辑/etc/default/grub,然后将其添加rootdelay=10GRUB_CMDLINE_LINUX变量中。这将告诉它等待10秒以显示根设备。调整值以适合您的情况。
muru 2014年

我应该继续增加时间直到错误停止吗?
Inti Garcia

好的,所以我将grep rootdelay /boot/grub/grub.cfg的结果上传到了原始问题。我也重新启动,并出现相同的消息。我应该增加多少?我在某处读到90为某人做过的事。我得等一下。
Inti Garcia

增加它没有帮助吗?(据估计,您要等多久才能输入exit?)
muru

好的,我将根延迟设置为90,但没有收到消息,但从操作系统选择屏幕转到Ubuntu登录屏幕大约需要一分钟左右。请问什么是rootdelay,它对系统有什么作用?
Inti Garcia 2014年

Answers:


10

由于一段时间后会检测到根文件系统,因此可以添加rootdelayrootwait。从内核文档中

rootdelay=  [KNL] Delay (in seconds) to pause before attempting to
        mount the root filesystem
...
rootwait    [KNL] Wait (indefinitely) for root device to show up.
        Useful for devices that are detected asynchronously
        (e.g. USB and MMC devices).

要设置两者之一,请编辑/etc/default/grub并更改的值GRUB_CMDLINE_LINUX。根据需要使用您喜欢的编辑器,如nanogeditsudo或或gksudo

sudo nano /etc/default/grub

rootdelay=10在引号内添加。如果您不想手动编辑,请运行以下命令:

sudo sed -i.bak 's/^GRUB_CMDLINE_LINUX="/& rootdelay=10 /' /etc/default/grub

然后运行:

sudo update-grub

这将告诉内核等待10秒,然后再挂载根文件系统。要查看是否已应用此更改,请运行

grep rootdelay /boot/grub/grub.cfg

如果显示了某些输出,则将其应用。现在重启。

如果仍然出现错误,请按CtrlAltDel重新启动,等待GRUB OS选择菜单出现,然后按e。编辑的值rootdelay,然后增加它。按F10启动。重复。

如果启动正确,请尝试上述过程,然后减小该值。


此过程有效。在我的特定情况下,我必须设置rootdelay = 40。由于我不到15岁,因此我无法投票。
Inti Garcia 2014年

@IntiGarcia没关系。实际上,请避免一会儿接受答案,以查看是否有人提出了正确的解决方案。我会整理评论。
muru 2014年

好吧,谢谢您对Ubuntu和Stack礼节jaja的建议。
Inti Garcia

1

修复分区表后,我遇到了同样的问题。该消息实际上很简单。检查目录/ dev / disk / by-uuid /,消息中的uuid确实丢失了。而是有另一个uuid链接到该分区(对于我的分区是../../sda5),该分区是预期的正确分区。

最终,我简单地解决了这个问题:编辑/boot/grub/grub.cfg,用正确的uuid替换错误的uuid。


1

上面的解决方案都不适合我。我从用于安装Ubuntu的同一USB拇指驱动器引导计算机,但未在df -h/ sudo fdisk -l/ sudo blkid/ lsblk/中列出我的ssd sudo parted -l。我必须做两件事来解决此问题:

  1. 禁用Fast Boot。从BIOS中执行此操作还不够(尝试重新启动并再次查看-它一直返回启用状态)。我必须先在Windows的设置中禁用它,然后在BIOS中禁用它。
  2. 我不得不从RST切换回AHCI。您需要对此进行Google搜索,并找到所有步骤。我的BIOS警告我一切都会丢失,幸运的是,一切都不会丢失。

下次我从拇指驱动器启动时,可以看到我的ssd磁盘(位于/dev/nvme01n1)。然后boot-repair,我安装,运行它并重新启动。瞧


0

我在笔记本电脑上安装了Windows 7 64位。然后从拇指驱动器安装了ubuntu 14.04,这样我就可以同时启动Windows和ubuntu。然后,我得到了“放弃等待根设备”错误错误。

为了修复它,我尝试了论坛中建议的许多操作:重新安装ubuntu,重新安装和更新grub,引导修复,update-initramfs,但没有任何效果。修复该问题的唯一方法是从CD安装。CD的安装工作正常,没有错误。


0

我遇到了同样的问题,请 链接到我的问题

问题在于创建initramfs之后

make oldconfig

然后为新选项选择默认值,请确保足够的磁盘空间可用于创建映像。在我的情况下,创建的映像不正确,因此在启动时无法挂载映像。


比较时 该映像的大小远远小于较低版本的现有映像,因此我添加了另一个磁盘,该磁盘的大小已足够,然后

make bzImage

make modules

make modules_install

make install

开始像魅力一样工作。我不知道为什么图像创建会更早完成并导致图像损坏(尺寸较小)而不会引发任何错误[每一次]


0

安装Xubuntu 14.04 32bit后,我遇到了完全相同的问题。尝试一下:

  1. 引导结束时显示UUID消息,然后(initramfs)键入exitor exec startx,它将进入GUI
  2. 以根用户身份编辑 /etc/default/grub
  3. 查找#GRUB_DISABLE_LINUX_UUID=true,删除#并保存
  4. 在终端运行中:sudo update-grubsudo reboot

在此之后它应该工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.