我遇到了一个与我以前见过的许多错误类似的错误,但我似乎无法修复。我在 Ubuntu 22.04 上。
[ 0.260527] ×86/cpu: SGX disabled by BIOS.
[ 0.786997] Initramfs unpacking failed: ZSTD-compressed data is corrupt
/init: line 73: wait-for-root: not found
Finit: line 872: logsave: Text file busy
The root filesystem on /dev/sda2 requires a manual fsck
BuSyBox v1.30.1 (Ubuntu 1:1.30.1-7ubuntus) built-in shell (ash)
Enter 'help' for a list of built-in commands.
在其他时候,我只需要运行类似...
fsck -fy /dev/sda2
...错误就会得到解决,然后我就可以继续前行了。
然而,这一次,我运行得到的命令:
(initramfs) fsck -fy /dev/sda2
fsck from util-linux 2.37.2 e2fsck 1.46.5 (30-Dec-2021)
Pass 1: Checking inodes, , blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sda2: 908631/61022208 files (0.3% non-contiguous), 121159114/244059136 blocks
(initramfs)
这似乎没什么问题。但是当我尝试退出时,它又要求我再次对驱动器进行手动 fsck 检查。我必须强制关机才能退出 shell (?)。
任何想法如何解决这一问题?
编辑:我可以使用实时 USB ubuntu 会话,并且可以毫无问题地安装磁盘。我可以看到文件并毫无问题地打开它们。因此,至少在某种意义上,驱动器是“没问题的”。SMART 不会发出任何警告。那么,为什么我不能用它启动呢?
答案1
这看起来好像initramfs
您系统上的映像已损坏。您可以执行以下操作来重新生成映像initramfs
:
Ubuntu
通过实时USB启动sudo mkdir /mnt
然后挂载你的根分区sudo mount /dev/sda2 /mnt
挂载所需的文件系统
sudo mount --bind /dev /mnt/dev
然后sudo mount --bind /proc /mnt/proc
然后sudo mount --bind /sys /mnt/sys
Chroot 已挂载的根分区
sudo chroot /mnt
重新生成
initramfs
图像 sudoupdate-initramfs -u
退出终端,然后
umount
分区退出 , 然后sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt
然后你可以重新启动,你的系统应该可以正常工作