无法启动,以 (initramfs) 结尾,并且内核崩溃

无法启动,以 (initramfs) 结尾,并且内核崩溃

在升级 Linux 内核包时出现一些错误apt(包括存储映像的启动分区上的磁盘空间不足)后,我无法再启动。

首先,在我的设置中:我有一个硬盘,/dev/sda带有一个启动分区/dev/sda1(这是内核映像存储的位置,并被挂载到 /boot)。“根”分区是/dev/mapper/ubuntu--vg--usbkey-root

更确切地说:

$ sudo fdisk -l /dev/sda
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Device     Boot  Start       End   Sectors   Size Id Type
/dev/sda1  *      2048    499711    497664   243M 83 Linux
/dev/sda2       501758 976771071 976269314 465.5G  5 Extended
/dev/sda5       501760 976771071 976269312 465.5G 8e Linux LVM

$ ls /dev/mapper
control  ubuntu--vg--usbkey-root  ubuntu--vg--usbkey-swap_1

$ sudo lvs
  LV     VG               Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root   ubuntu-vg-usbkey -wi-a----- 457.51g                                                    
  swap_1 ubuntu-vg-usbkey -wi-a-----  <7.96g

$ lsblk
NAME                     MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0                      7:0    0   1.7G  1 loop /rofs
loop1                      7:1    0  86.6M  1 loop /snap/core/4486
loop2                      7:2    0   140M  1 loop /snap/gnome-3-26-1604/59
loop3                      7:3    0   1.6M  1 loop /snap/gnome-calculator/154
loop4                      7:4    0  12.2M  1 loop /snap/gnome-characters/69
loop5                      7:5    0    21M  1 loop /snap/gnome-logs/25
loop6                      7:6    0   3.3M  1 loop /snap/gnome-system-monitor/36
sda                        8:0    0 465.8G  0 disk 
├─sda1                     8:1    0   243M  0 part 
├─sda2                     8:2    0     1K  0 part 
└─sda5                     8:5    0 465.5G  0 part 
  ├─ubuntu--vg--usbkey-root
  │                      253:0    0 457.5G  0 lvm  /mnt
  └─ubuntu--vg--usbkey-swap_1
                         253:1    0     8G  0 lvm  
sdb                        8:16   1   1.9G  0 disk /cdrom
├─sdb1                     8:17   1   1.8G  0 part 
└─sdb2                     8:18   1   2.3M  0 part 
sr0                       11:0    1  1024M  0 rom  

我最后一次尝试是按照本文

所以我做了以下事情:

$ sudo mount /dev/sda1 /mnt/boot/
$ sudo mount /dev/mapper/ubuntu--vg--usbkey-root /mnt/
$ sudo mount -t proc none /mnt/proc
$ sudo mount -o bind /dev /mnt/dev
$ sudo mount -t sysfs sys /mnt/sys
$ sudo chroot /mnt

# update-grub
Generating grub configuration file ...
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Found linux image: /boot/vmlinuz-4.4.0-127-generic
Found initrd image: /boot/initrd.img-4.4.0-127-generic
Found linux image: /boot/vmlinuz-4.4.0-124-generic
Found initrd image: /boot/initrd.img-4.4.0-124-generic
Found linux image: /boot/vmlinuz-4.4.0-116-generic
Found initrd image: /boot/initrd.img-4.4.0-116-generic
Found memtest86+ image: /memtest86+.elf
Found memtest86+ image: /memtest86+.bin
  /run/lvm/lvmetad.socket: connect failed: No such file or directory
  WARNING: Failed to connect to lvmetad. Falling back to internal scanning.
done

这个警告有问题吗?无论如何,我随后做了以下事情:

# /usr/sbin/grub-install --recheck --no-floppy /dev/sda
Installing for i386-pc platform.
Installation finished. No error reported.

然后我重新启动,然后出现(initramfs)提示。屏幕上显示以下错误消息:

fsck: error 2 (No such file or directory) while executing fsck.ext2 for /dev/sda1

但是,我从可启动 USB 密钥进行了检查/dev/sda1fsck并且它没有报告任何错误... 也一样/dev/sda5/

此外,命令

(initramfs) ls /root

报告的内容/dev/sda1。但是,除了预期的内容外,还有一个目录/root/boot/grub

(initramfs) ls /root/boot/grub
fonts locale grubenv i386-pc

跑步

(initramfs) exit

带我进入一个屏幕,最后

end Kernel panic - not syncing: Attempted to kill init! 

这一切对我来说相当令人困惑。任何建议都值得赞赏。

答案1

首先,如果您的启动分区占满 243MB,我怀疑您的启动分区中至少有一个备份内核。您是否尝试过进入 grub 的高级启动选项并从较旧的内核版本启动以查看它是否可以启动?(在启动期间按住 shift 键即可在 Ubuntu 上显示 grub 菜单)

从您已经尝试过的情况来看,尽管这些命令通常对于修复无法启动的系统很有用,但(据我所知)没有一个会减少使用的空间或增加启动分区的空间容量。

我的第一个猜测是你的启动分区无法容纳新内核的整个文件,但不完整的内核被设置为 grub 中的主要启动选项。

相关内容