软件包安装问题 - linux-image-server

软件包安装问题 - linux-image-server

我知道类似的问题已经解决了,但我有点不知所措。我的 / 分区空间不足,需要删除一些软件包,因为 apt-get remove、autoremove 和 clean 无法执行任何操作。然后我执行了apt-get updateand apt-get upgrade-ed,但过程中出了点问题。现在的情况是:

apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  linux-headers-server linux-server
The following packages will be upgraded:
  linux-headers-server linux-server
2 upgraded, 0 newly installed, 0 to remove and 56 not upgraded.
2 not fully installed or removed.
Need to get 0 B/3,996 B of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? Y
dpkg: dependency problems prevent configuration of linux-headers-server:
 linux-headers-server depends on linux-headers-3.2.0-55-generic; however:
  Package linux-headers-3.2.0-55-generic is not installed.
dpkg: error processing linux-headers-server (--configure):
 dependency problems - leaving unconfigured
No apport report written because MaxReports is reached already
                                                              dpkg: dependency problems prevent configuration of linux-server:
 linux-server depends on linux-image-server (= 3.2.0.55.65); however:
  Version of linux-image-server on system is 3.2.0.56.66.
 linux-server depends on linux-headers-server (= 3.2.0.55.65); however:
  Package linux-headers-server is not configured yet.
dpkg: error processing linux-server (--configure):
 dependency problems - leaving unconfigured
No apport report written because MaxReports is reached already
                                                              Errors were encountered while processing:
 linux-headers-server
 linux-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

因此系统想要安装,linux-image-server=3.2.0.56.66尽管其他组件依赖于版本3.2.0.55.65。我尝试安装dpgk --remove软件包然后重新安装,但遇到了问题。据我了解,我需要降级 linux-image-server,然后修复依赖项,然后根据需要选择升级?

答案1

因此,我强制删除了所有相关软件包,重新启动后apt-get -f install就好了。我所做的是:

dpkg --remove --force-remove-reinstreq linux-headers-server
dpkg --remove --force-remove-reinstreq linux-image-server
dpkg --remove --force-remove-reinstreq linux-headers-3.2.0-56-generic
dpkg --remove --force-remove-reinstreq linux-headers-3.2.0-56
dpkg --remove --force-remove-reinstreq linux-server

进而

apt-get -f install

这样就解决了问题。要获取我使用的所有软件包的列表dpkg --get-selections。有一个此处有关清理先前版本的帖子非常有用

答案2

这篇文章对我来说真是天大的福音,谢谢。我无法告诉你我浪费了多少时间,但这是解决我的问题的最佳帖子。同样,我的启动驱动器容量为 100%,并且存在类似的依赖性问题,必须解决,否则 apt-get upgrade 将失败。简而言之,下面是我执行的命令,用 xx 替换标题版本号,因为我的版本号略有不同。其他遇到类似错误的人需要仔细阅读,以找出他们需要添加的版本号。

dpkg --remove --force-remove-reinstreq linux-headers-server
dpkg --remove --force-remove-reinstreq linux-image-server
dpkg --remove --force-remove-reinstreq linux-headers-3.2.0-xx-generic
dpkg --remove --force-remove-reinstreq linux-headers-3.2.0-xx
dpkg --remove --force-remove-reinstreq linux-server

现在重启服务器

shutdown -r now

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

最后一个命令将我的启动驱动器的使用率降低到了 16%,有关命令的更多信息,请参阅以下 URL 如何删除旧内核版本来清理启动菜单?

非常感谢 miha 发布您的解决方案。

答案3

我想知道仅仅移除它linux-server是否会造成伤害。

毕竟,安装linux-server的原因linux-headers-server在于如果标题不是必需的,那么只要linux-image-server安装了,整个系统就应该可以正常工作。

我在一台小型虚拟主机上遇到了空间问题,于是我删除了linux-server头文件包。服务器运行良好,但还有大约 700MB 的可用硬盘空间,这对于 5 GB 的虚拟主机来说已经很多了。

相关内容