清除OpenVZ容器中不需要的内核映像

我知道有无数次问过类似的问题,但到目前为止我还没能找到适合自己案例的问题。

我在OpenVZ容器中运行一个32位,14.04服务器,它提供了这个内核:

$ uname -r 2.6.32-042stab116.2 

不确定它是如何/为什么开始的,但是apt一直在尝试(并且失败)升级到3.13系列,结果如下:

 $ dpkg -l |grep linux ii libselinux1:i386 2.2.2-1ubuntu0.1 i386 SELinux runtime shared libraries ii linux-firmware 1.127.22 all Firmware for Linux kernel drivers ii linux-headers-3.13.0-100 3.13.0-100.147 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-100-generic 3.13.0-100.147 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP ii linux-headers-3.13.0-101 3.13.0-101.148 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-101-generic 3.13.0-101.148 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP ii linux-headers-3.13.0-91 3.13.0-91.138 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-91-generic 3.13.0-91.138 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP ii linux-headers-3.13.0-92 3.13.0-92.139 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-92-generic 3.13.0-92.139 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP ii linux-headers-3.13.0-93 3.13.0-93.140 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-93-generic 3.13.0-93.140 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP ii linux-headers-3.13.0-96 3.13.0-96.143 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-96-generic 3.13.0-96.143 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP iF linux-image-3.13.0-92-generic 3.13.0-92.139 i386 Linux kernel image for version 3.13.0 on 32 bit x86 SMP iF linux-image-3.13.0-93-generic 3.13.0-93.140 i386 Linux kernel image for version 3.13.0 on 32 bit x86 SMP iF linux-image-3.13.0-96-generic 3.13.0-96.143 i386 Linux kernel image for version 3.13.0 on 32 bit x86 SMP rH linux-image-extra-3.13.0-100-generic 3.13.0-100.147 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP rH linux-image-extra-3.13.0-101-generic 3.13.0-101.148 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP rH linux-image-extra-3.13.0-92-generic 3.13.0-92.139 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP iU linux-image-extra-3.13.0-93-generic 3.13.0-93.140 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP iU linux-image-extra-3.13.0-96-generic 3.13.0-96.143 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP ii linux-libc-dev:i386 3.13.0-101.148 i386 Linux Kernel Headers for development ii syslinux 3:4.05+dfsg-6+deb8u1 i386 collection of boot loaders ii syslinux-common 3:4.05+dfsg-6+deb8u1 all collection of boot loaders (common files) ii util-linux 2.20.1-5.1ubuntu20.7 i386 Miscellaneous system utilities 

我的理解是内核完全由OpenVZ主机负责,并且我被建议简单地删除所有这些图像 ,无论如何系统都会忽略这些图像 。 但是,我完全删除软件包的所有尝试都失败了各种错误消息。

当我尝试显式清除所有不需要的linux *包时发生了这种情况 。

使用aptitude而不是apt-get摆脱了一些包,并将所有剩余图像的状态更改为pH ,但没有解决问题:

 $ dpkg -l |grep linux ii libselinux1:i386 2.2.2-1ubuntu0.1 i386 SELinux runtime shared libraries ii linux-firmware 1.127.22 all Firmware for Linux kernel drivers ii linux-headers-3.13.0-100 3.13.0-100.147 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-100-generic 3.13.0-100.147 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP ii linux-headers-3.13.0-91 3.13.0-91.138 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-91-generic 3.13.0-91.138 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP ii linux-headers-3.13.0-92 3.13.0-92.139 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-92-generic 3.13.0-92.139 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP ii linux-headers-3.13.0-93 3.13.0-93.140 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-93-generic 3.13.0-93.140 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP ii linux-headers-3.13.0-96 3.13.0-96.143 all Header files related to Linux kernel version 3.13.0 ii linux-headers-3.13.0-96-generic 3.13.0-96.143 i386 Linux kernel headers for version 3.13.0 on 32 bit x86 SMP pH linux-image-extra-3.13.0-100-generic 3.13.0-100.147 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP pH linux-image-extra-3.13.0-101-generic 3.13.0-101.148 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP pH linux-image-extra-3.13.0-92-generic 3.13.0-92.139 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP pH linux-image-extra-3.13.0-93-generic 3.13.0-93.140 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP pH linux-image-extra-3.13.0-96-generic 3.13.0-96.143 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP ii linux-libc-dev:i386 3.13.0-101.148 i386 Linux Kernel Headers for development ii syslinux 3:4.05+dfsg-6+deb8u1 i386 collection of boot loaders ii syslinux-common 3:4.05+dfsg-6+deb8u1 all collection of boot loaders (common files) ii util-linux 2.20.1-5.1ubuntu20.7 i386 Miscellaneous system utilities 

我在上面的3.13包列表中再次运行aptitude,这次所有标题都消失了,但“额外”图像仍然存在。

 $ dpkg -l |grep linux pH linux-image-extra-3.13.0-100-generic 3.13.0-100.147 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP pH linux-image-extra-3.13.0-101-generic 3.13.0-101.148 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP pH linux-image-extra-3.13.0-92-generic 3.13.0-92.139 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP pH linux-image-extra-3.13.0-93-generic 3.13.0-93.140 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP pH linux-image-extra-3.13.0-96-generic 3.13.0-96.143 i386 Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP [...] 

我又给了它, 这是输出 。 看起来为了清除这些额外的图像(具有明显的未满足的依赖性,因为相应的图像已经消失),缺少aptitude所需的一些文件:

 depmod: FATAL: could not load /boot/System.map-3.13.0-100-generic: No such file or directory