apt-get 安装和升级在 Debian 上失败

apt-get 安装和升级在 Debian 上失败

我遇到了一个奇怪的错误,导致我无法在 Debian 机器上安装任何东西。

当我运行 apt-get upgrade (或 apt-get install)时,它会生成以下错误消息:

# apt-get upgrade
E: dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problem.

如果我按照它告诉我的做 - 运行dpkg --configure -a它会产生以下输出:

# dpkg --configure -a
Setting up initramfs-tools (0.93.4) ...
update-initramfs: deferring update (trigger activated)
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-2.6.26-2-686

gzip: stdout: No space left on device
update-initramfs: failed for /boot/initrd.img-2.6.26-2-686
dpkg: subprocess installed post-installation script returned error exit status 1

如果我这样做,df -h /boot则表明分区几乎已满:

# df -h /boot
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              38M   31M  5.5M  85% /boot

如果我检查目录,似乎很多东西都是重复的:

# ls -la /boot
total 26495
drwxr-xr-x  4 root root    1024 2009-11-02 05:00 .
drwxr-xr-x 22 root root    4096 2009-10-25 07:46 ..
-rw-r--r--  1 root root   70682 2009-08-20 23:14 config-2.6.18-6-686
-rw-r--r--  1 root root   91690 2009-08-19 11:49 config-2.6.26-2-686
drwxr-xr-x  2 root root    1024 2009-09-20 15:48 grub
-rw-r--r--  1 root root 4495693 2009-09-20 15:32 initrd.img-2.6.18-6-686
-rw-r--r--  1 root root 4495471 2008-12-18 12:50 initrd.img-2.6.18-6-686.bak
-rw-r--r--  1 root root 7175680 2009-09-20 15:54 initrd.img-2.6.26-2-686
-rw-r--r--  1 root root 6239705 2009-09-20 15:48 initrd.img-2.6.26-2-686.bak
drwx------  2 root root   12288 2008-08-29 12:21 lost+found
-rw-r--r--  1 root root  723580 2009-08-21 05:08 System.map-2.6.18-6-686
-rw-r--r--  1 root root  928010 2009-08-19 11:49 System.map-2.6.26-2-686
-rw-r--r--  1 root root 1261508 2009-08-21 05:08 vmlinuz-2.6.18-6-686
-rw-r--r--  1 root root 1506032 2009-08-19 11:48 vmlinuz-2.6.26-2-686

谁能帮助我摆脱这种痛苦?;-)

答案1

作为权宜之计,您可以删除 中的 .bak 文件/boot,但是我强烈建议您获取更大的/boot分区。正如您所发现的,38MB 有点小,而您最不想做的事情就是删除最终需要的内核。

答案2

您当前运行的内核是什么?您可以通过 进行检查uname -a。获得该信息后,您可以删除与当前内核版本不匹配的 config-、initrd.img-、System.map- 和 vmlinuz- 文件。

为谨慎起见,不要真正删除这些文件。如果可能的话,最好将它们复制到另一个分区。

答案3

另一个选择是创建一个更大的新 /boot 分区,而不会扩大现有的分区。

相关内容