我最近擦拭了我的盒子并安装了我喜欢并且很棒的 20.10!这一次我决定我想生活在边缘并使用实验性的 zfs 支持,但是在安装包和更新一段时间后,我现在有一个奇怪的问题,我的引导 zpool 太满了。
每当我在软件更新程序中点击“立即更新”时,我都会收到如下消息:
The upgrade needs a total of 254 M free space on disk '/boot'. Please free at least an additional 194 M of disk space on '/boot'. You can remove old kernels using 'sudo apt autoremove', and you could also set COMPRESS=xz in /etc/initramfs-tools/initramfs.conf to reduce the size of your initramfs.
我运行sudo apt autoremove
了它并没有删除任何内容,我犹豫要更改我的 initramfs 上的压缩,因为这更像是对可能的较低问题的补丁(也许我错了哈哈)。
我仍然可以手动升级,sudo apt update && sudo apt upgrade
但每次都会收到此错误:
ERROR couldn't save system state: Minimum free space to take a snapshot and preserve ZFS performance is 20%.
当我跑步时,zpool list
我得到:
NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
bpool 1.88G 1.69G 185M - - 47% 90% 1.00x ONLINE -
rpool 460G 165G 295G - - 10% 35% 1.00x ONLINE -
所以我的引导池容量为 90%...
我还尝试zsysctl service gc -a
删除快照,但这似乎并没有改变 bpool 的使用...
所以也许我需要改变我的 bpool 分配大小?我怎么做?
当我升级/安装时,我也遇到了一些奇怪的 initramfs 故障,但我不确定这是否相关?
Setting up initramfs-tools (0.137ubuntu12) ...
update-initramfs: deferring update (trigger activated)
Setting up linux-firmware (1.190.1+system76~1605123765~20.10~3894207) ...
update-initramfs: Generating /boot/initrd.img-5.8.0-29-generic
I: The initramfs will attempt to resume from /dev/nvme0n1p2
I: (UUID=05a735a7-9e82-494e-be9b-171b1c132af5)
I: Set the RESUME variable to override this.
Error 24 : Write error : cannot write compressed block
E: mkinitramfs failure cpio 141 lz4 -9 -l 24
update-initramfs: failed for /boot/initrd.img-5.8.0-29-generic with 1.
dpkg: error processing package linux-firmware (--configure):
installed linux-firmware package post-installation script subprocess returned error exit status 1
Processing triggers for initramfs-tools (0.137ubuntu12) ...
update-initramfs: Generating /boot/initrd.img-5.8.0-29-generic
I: The initramfs will attempt to resume from /dev/nvme0n1p2
I: (UUID=05a735a7-9e82-494e-be9b-171b1c132af5)
I: Set the RESUME variable to override this.
Error 24 : Write error : cannot write compressed block
E: mkinitramfs failure cpio 141 lz4 -9 -l 24
update-initramfs: failed for /boot/initrd.img-5.8.0-29-generic with 1.
dpkg: error processing package initramfs-tools (--configure):
installed initramfs-tools package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
linux-firmware
initramfs-tools
ZSys is adding automatic system snapshot to GRUB menu
E: Sub-process /usr/bin/dpkg returned an error code (1)
runningzfs list -t snapshot
显示了 bpool 的一堆快照:
NAME USED AVAIL REFER MOUNTPOINT
bpool/BOOT/ubuntu_fjp6bn@autozsys_z4aetj 72K - 237M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_mtxh3h 72K - 237M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_72y92u 105M - 357M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_lo8d22 85.2M - 337M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_y7ihca 104M - 336M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_qs6vz5 85.2M - 318M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_cyg6vx 72K - 337M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_r6e64v 56K - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_nrhjqi 56K - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_kgfl6b 104M - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_nw3nk0 85.1M - 199M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_m1b6l9 104M - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_hnt98o 85.1M - 199M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_rj8ttq 64K - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_da1f4s 0B - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_ljdo3n 0B - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_danwfz 0B - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_4sjbka 104M - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_gl3ru4 0B - 218M -
bpool/BOOT/ubuntu_fjp6bn@autozsys_tdbgin 0B - 218M -
rpool/ROOT/ubuntu_fjp6bn@autozsys_z4aetj 71.7M - 5.10G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_mtxh3h 217M - 5.25G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_72y92u 33.3M - 5.43G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_lo8d22 30.2M - 5.30G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_y7ihca 224M - 5.42G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_qs6vz5 27.8M - 5.23G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_cyg6vx 56.3M - 5.51G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_r6e64v 56.6M - 5.29G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_nrhjqi 30.6M - 5.29G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_kgfl6b 7.01M - 5.25G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_nw3nk0 29.6M - 5.17G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_m1b6l9 222M - 5.32G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_hnt98o 27.7M - 5.13G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_rj8ttq 26.2M - 5.17G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_da1f4s 155M - 5.29G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_ljdo3n 24.9M - 5.61G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_danwfz 181M - 5.74G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_4sjbka 498M - 5.66G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_gl3ru4 0B - 5.92G -
rpool/ROOT/ubuntu_fjp6bn@autozsys_tdbgin 0B - 5.92G -
但是我对 zfs 或 zsys 不够坚定,不知道我是否可以只销毁快照?
所以我想我修复了它......我跑到
zfs list -t snapshot | grep bpool
列出引导池的所有快照。然后sudo zfs destroy bpool/...
是从列表顶部开始的少量快照,直到zpool list
显示 bpool 大约 60% CAP。然后运行sudo apt upgrade
,它运行 mkinitramfs 成功!现在我的 bpool 大约是 70% :shrug:问题是
bpool
. 简单地删除它们会产生新的问题,因为系统上的每个 zpool 都有一个同名的快照,update-grub
并且update-initramfs
依赖于这个事实。如果你只删除bpool
快照,这两个命令都需要很长时间,而且很烦人。我发现修复它的唯一方法是删除所有快照。这是我使用的命令:不幸的是,这会杀死任何快照,因此您将无法将系统恢复到以前的时间。一定有办法扩大规模
bpool
!尝试清除 /boot/ 上的空间
uname -r
告诉您正在运行哪个内核;此版本无法删除。简单列表:
dpkg --list | grep linux-
将显示与内核相关的内容,以及其他项目。高级,列出可能被清除的已安装项目(ii 在最左边的列中):
dpkg --list | grep -E '^ii.*linux-(headers|image|modules)' | grep -v $(uname -r)
现在检查
_name_
您可以删除哪些项目 ( ),然后sudo apt purge _name_
对它们执行...。