毎日のようにマシンをアップグレードしようとして、次のエラーを受け取りました。
$ Sudo apt-get update && Sudo apt-get upgrade
Hit:1 http://ftp.uk.debian.org/debian buster InRelease
Hit:2 http://security.debian.org/debian-security buster/updates InRelease
Hit:3 http://ftp.uk.debian.org/debian buster-updates InRelease
Hit:4 https://updates.signal.org/desktop/apt xenial InRelease
Hit:5 https://packagecloud.io/AtomEditor/atom/any any InRelease
Reading package lists... Done
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up linux-image-4.19.0-8-AMD64 (4.19.98-1+deb10u1) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-4.19.0-8-AMD64
pigz: abort: write error on <stdout> (No space left on device)
E: mkinitramfs failure cpio 141 pigz 28
update-initramfs: failed for /boot/initrd.img-4.19.0-8-AMD64 with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
dpkg: error processing package linux-image-4.19.0-8-AMD64 (--configure):
installed linux-image-4.19.0-8-AMD64 package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
linux-image-4.19.0-8-AMD64
needrestart is being skipped since dpkg has failed
E: Sub-process /usr/bin/dpkg returned an error code (1)
次の行が問題の原因である可能性があると思いますが、修正方法がわかりません。
pigz: abort: write error on <stdout> (No space left on device)
$ uname -a
Linux debian 4.19.0-8-AMD64 #1 SMP Debian 4.19.98-1 (2020-01-26) x86_64 GNU/Linux
$ ls -la /boot/
drwxr-xr-x 5 root root 1024 Apr 29 08:54 .
drwxr-xr-x 22 root root 4096 Feb 11 05:39 ..
-rw-r--r-- 1 root root 206361 Nov 11 00:30 config-4.19.0-6-AMD64
-rw-r--r-- 1 root root 206194 Apr 27 06:05 config-4.19.0-8-AMD64
-rw-r--r-- 1 root root 186598 Sep 20 2019 config-4.9.0-11-AMD64
drwx------ 3 root root 4096 Jan 1 1970 efi
drwxr-xr-x 5 root root 1024 Feb 11 05:39 grub
-rw-r--r-- 1 root root 62662464 Feb 9 19:01 initrd.img-4.19.0-6-AMD64
-rw-r--r-- 1 root root 62708576 Feb 11 05:39 initrd.img-4.19.0-8-AMD64
-rw-r--r-- 1 root root 47360778 Oct 25 2019 initrd.img-4.9.0-11-AMD64
drwx------ 2 root root 12288 Jan 27 2019 lost+found
-rw-r--r-- 1 root root 3410671 Nov 11 00:30 System.map-4.19.0-6-AMD64
-rw-r--r-- 1 root root 3408461 Apr 27 06:05 System.map-4.19.0-8-AMD64
-rw-r--r-- 1 root root 3203475 Sep 20 2019 System.map-4.9.0-11-AMD64
-rw-r--r-- 1 root root 5270768 Nov 11 00:30 vmlinuz-4.19.0-6-AMD64
-rw-r--r-- 1 root root 5274864 Apr 27 06:05 vmlinuz-4.19.0-8-AMD64
-rw-r--r-- 1 root root 4249376 Sep 20 2019 vmlinuz-4.9.0-11-AMD64
$ Sudo dpkg -l | grep linux-image
ii linux-image-4.19.0-6-AMD64 4.19.67-2+deb10u2 AMD64 Linux 4.19 for 64-bit PCs (signed)
iF linux-image-4.19.0-8-AMD64 4.19.98-1+deb10u1 AMD64 Linux 4.19 for 64-bit PCs (signed)
ii linux-image-4.9.0-11-AMD64 4.9.189-3+deb9u1 AMD64 Linux 4.9 for 64-bit PCs
ii linux-image-AMD64 4.19+105+deb10u3 AMD64 Linux for 64-bit PCs (meta-package)
$ Sudo cat /var/log/dpkg.log
2020-04-29 08:54:32 startup packages configure
2020-04-29 08:54:32 configure linux-image-4.19.0-8-AMD64:AMD64 4.19.98-1+deb10u1 <none>
2020-04-29 08:54:32 status half-configured linux-image-4.19.0-8-AMD64:AMD64 4.19.98-1+deb10u1
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
udev 3987600 0 3987600 0% /dev
tmpfs 804084 9672 794412 2% /run
/dev/mapper/debian--vg-root 220799920 117407476 92106736 57% /
tmpfs 4020420 165216 3855204 5% /dev/shm
tmpfs 5120 4 5116 1% /run/lock
tmpfs 4020420 0 4020420 0% /sys/fs/cgroup
/dev/sdb1 114854440 84891720 24085372 78% /mnt/Extended
/dev/sda2 241965 208213 21260 91% /boot
/dev/sda1 523248 5220 518028 1% /boot/efi
tmpfs 804084 20 804064 1% /run/user/1000
/dev/sdd2 15006688 41004 14183656 1% /media/squire/GENERAL
4.9カーネルを削除することで、スペースを解放できます。
Sudo apt purge linux-image-4.9.0-11-AMD64
きみの /boot
パーティションがいっぱいに近づいています。アップデートをインストールする前に 古いカーネルを削除する で領域を解放できる可能性があります。自動的にインストールされた場合は、単にSudo apt-get autoremove --purge
リンクで説明されています。
以前のサーバーがすべて約30MBだったときに生成されたinitrd.img-4.19.0-9-AMD64が128MBになるという問題が、私のサーバーの1つで同じ問題を引き起こしたDebian 10アップグレードにありました!
最新のapt-get更新で新しいイメージが利用可能であることが示され、この問題を解決したので、巨大なバージョンを別のサーバーからのコピーに置き換え(アップグレードで問題が発生した場合に備えて)、アップグレードをインストールしました。アップグレードによって新しいinitrd.img-4.19.0-9-AMD64が構築された後、他のサーバーのバージョンとほぼ同じように29MBになりました。