Недавно я протер свой ящик и установил 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% ...
ive также пробовал zsysctl service gc -a
для удаления снимков, но, похоже, это не повлияло на использование 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)
запуск zfs 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:
Попытка очистить место на / boot /
uname -r
сообщает, какое ядро вы используете; эту версию нельзя удалить.
Простой список:
dpkg --list | grep linux-
, среди прочего, покажет материалы, относящиеся к ядру.
Дополнительно, перечислить установленные (ii в крайнем левом столбце) элементы, которые МОГУТ быть удалены:
dpkg --list | grep -E '^ ii. * linux- (заголовки | изображение | модули)' | grep -v $ (uname -r)
Теперь проверьте, какие элементы ( _name_
) вы МОЖЕТЕ удалить, и выполните
sudo apt purge _name_
... на них.