解决-initramfs-unpacking-failed-ZSTD-compressed-data-is-truncated

参考

在一次更新系统软件后(Archlinux):

1
sudo pacman -Syyu

重启电脑时遇到:

利用 LiveCD 进入原分区:

1
2
3
4
fdisk -l
mount /dev/{root dir} /mnt
mount /dev/{boot dir} /mnt/boot
arch-chroot /mnt

查看 pacman 的日志:

1
cat /var/log/pacman.log | tail -n 300 | grep "error"

找到如下报错:

1
2
3
4
5
6
[2024-01-15T15:04:06+0800] [ALPM-SCRIPTLET] zstd: error 70 : Write error : cannot write block : No space left on device
[2024-01-15T15:04:06+0800] [ALPM-SCRIPTLET] ==> ERROR: Image generation FAILED: 'zstd reported an error'
[2024-01-15T15:04:19+0800] [ALPM-SCRIPTLET] zstd: error 70 : Write error : cannot write block : No space left on device
[2024-01-15T15:04:19+0800] [ALPM-SCRIPTLET] bsdtar: Write error
[2024-01-15T15:04:19+0800] [ALPM-SCRIPTLET] bsdtar: Write error
[2024-01-15T15:04:19+0800] [ALPM-SCRIPTLET] ==> ERROR: Image generation FAILED: 'sort reported an error'

可以看出原因为 /boot 分区空间不足, 查看分区现在的空间使用情况:

1
2
df -hT | grep 'boot'
/dev/nvme0n1p1 vfat 256M 254M 7.7M 98% /boot

确实几乎没空间, 可以考虑删除这个目录下的一些东西, 或者是扩充大小, 但这里我直接重新生成 initramfs-linux.img 然后重启就好了:

1
mkinitcpio -P

之后退出重启即可.


解决-initramfs-unpacking-failed-ZSTD-compressed-data-is-truncated
http://example.com/2024/01/16/解决-initramfs-unpacking-failed-ZSTD-compressed-data-is-truncated/
作者
Jie
发布于
2024年1月16日
许可协议