运行 apt-get install 更新了不相关的软件包并导致问题

运行 apt-get install 更新了不相关的软件包并导致问题

我最近apt-get install unzip在一台 Ubuntu 服务器上运行,出于某种原因,它开始更新系统上的几乎所有软件包 - apache、php、git、mysql、大量库等等。最终,在尝试添加新的内核映像时失败了:

update-initramfs: Generating /boot/initrd.img-3.5.0-54-generic
gzip: stdout: No space left on device

已安装大量内核。uname -r当前返回3.5.0-36-generic,但列出的内核比这更新约有 10 个。

我的问题是:

  1. 清除/boot分区的正常建议是删除不再使用的旧内核 - 您也可以删除较新的内核吗?它是一个远程服务器,因此如果引导加载程序中断,那将是一个真正的问题。
  2. 为什么要apt-get install unzip更新这么多不相关的软件包?

答案1

“启动时空间不足”是一个独立的问题,对于启用了磁盘加密的人来说,这似乎是一个持续存在的问题。它似乎已经作为错误报告报告了一年,但由于某种原因仍未修复。您可以使用

dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge

在控制台中——它会查找您已安装的内核包,然后清除除当前正在运行的内核包之外的所有包。

答案2

  1. 您可以删除除正在使用的内核之外的所有内核(参见uname -r)。您也许可以保留另一个内核以确保万无一失,但您肯定不需要 10 个内核。
  2. 我猜想您上次运行apt-get/时有一些未配置的包dpkg

相关内容