Fre*_*Ben 10 updates gnome boot grub2
安装更新后,我的系统不再启动。我启用了全盘加密(安装程序为您设置的加密),因此它通常在通过 GRUB 引导后仅几秒钟就要求提供密钥。现在,它跳过询问密钥,尝试加载 Gnome,然后转到下图所示的屏幕。该系统是一个运行 Ubuntu Gnome 13.04 的 64 位 System76 机器。然而,这曾经发生在我身上,在运行 Ubuntu Gnome Remix 12.10 的 Dell XPS 8300 64 位上。在这种情况下,我重新安装了操作系统。但是这次我想真正解决这个问题,所以我知道将来如何处理它。此外,从头开始重新安装非常不方便。
我怀疑 /boot 中的配置文件中有些东西搞砸了,以至于它没有意识到磁盘已加密,但是我在那里闲逛时没有看到任何东西。您对如何修复它有任何想法(除了重新安装操作系统)?
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/mapper/gnome-root does not exist.
Dropping to a shell!
BusyBox v.1.20.2 (Ubuntu 1:1.20.2-1ubuntu1) built-in shell (ash)
Enter 'help' for list of built-in commands.
(initramfs)
Run Code Online (Sandbox Code Playgroud)
我搞定了!!!为了后代,所以你不必经历我所做的痛苦的日子和无尽的时间:
首先,我可以(initramfs)通过键入以下命令让系统从提示符启动(我使用这个论坛页面作为拐杖):
cryptsetup luksOpen /dev/sda5 sda5_crypt
lvm vgchange -a y
exit
Run Code Online (Sandbox Code Playgroud)
这使我的系统能够正常启动。启动后,我修改/etc/crypttab为指向与以前不同的 UUID。我从我的/etc/fstab. 保存原始 UUID 值。 您将需要几个步骤。然后我跑了(从终端):
update-initramfs -k all -c
Run Code Online (Sandbox Code Playgroud)
如果您收到类似于此或类似内容的警告:
WARNING: invalid line in /etc/crypttab
Run Code Online (Sandbox Code Playgroud)
然后回到开头,而不是sda5_crypt使用crypttab.
然后我重新启动。这次我得到了密码的提示!但是不要太兴奋,因为它没有用。我输入了大约 7 次正确的密码,但它全部拒绝了。然后它(initramfs)在大约 90 秒后返回到提示。
我重复了第一步并再次启动它。然后我将原始UUID 值恢复为crypttab,并重新运行第二步。然后我重新启动,成功!
小智 6
由于全盘加密是 Ubuntu 14.04 中的一个选项,我只想指出我是如何解决这个问题的,因为我的 initramfs 终端不允许我使用cryptsetup:
从 Live DVD/USB 启动(USB 会快很多)。
打开终端并键入以下内容:
sudo -i
cryptsetup luksOpen /dev/sda5 sda5_crypt
# (do any lvm management you need here, I didn't need any.)
mkdir /mnt/system
mount /dev/mapper/ubuntu--vg-root /mnt/system
mount /dev/sda2 /mnt/system/boot
mount /dev/sda1 /mnt/system/boot/efi (May or may not be needed.)
for i in /dev/pts /dev /proc /sys; do mount -B $i /mnt/system$i; done
chroot /mnt/system
update-initramfs -k all -c
exit
for i in /dev/pts /dev /proc /sys; do umount /mnt/system$i; done
umount /mnt/system/boot/efi # (If you have UEFI.)
umount /mnt/system/boot
umount /mnt/system
Run Code Online (Sandbox Code Playgroud)重新启动并希望它有效。