包安装问题 – linux-image-server

我知道类似的问题已经解决,但我有点卡住了。 我在/ partition上耗尽空间并且需要删除一些包,因为apt-get remove,autoremove和clean都无法做任何事情。 我然后apt-get updateapt-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,然后修复依赖项,而不是可选的升级,如果需要的话?

所以,我强制删除所有相关的软件包,重启,然后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的所有包的列表。 这里有一个非常有用的post可以清理以前的版本 。

这篇文章对我来说是一件幸事,谢谢。 不能告诉你浪费了多少小时,但这是处理我的问题的最佳post。 同样,我的启动驱动器容量为100%,并且存在类似的依赖性问题,必须解决,否则apt-get升级将失败。 简而言之,下面是我用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发布您的解决方案。

我想知道是否只是删除linux-server会受到伤害。

毕竟, linux-server是安装linux-headers-server的原因,如果不需要头文件,如果只安装linux-image-server ,整个系统应该可以正常工作。

我在一个小型虚拟主机上遇到了空间问题,我删除了linux-server和头包。 服务器运行正常,但硬盘空闲大约700MB,这在5GB的虚拟主机上很多。