/boot目录存储空间满导致apt-get安装软件失败

apt-get autoremove 删除为了满足依赖而安装的,但现在不再需要的软件包(包括已安装包),保留配置文件。 ####第一: 查看ubuntu的版本,首先查询当前我们使用的是内核是那个版本别删错了。

uname -a

####第二: 查询系统中装了多少内核

dpkg --get-selections|grep linux

####第三: 多余的内核可以通过命令删除 需要删除header和image

sudo apt-get remove linux-image-*.*.*-**(*号用你想删除的实际情况改写)
sudo apt-get remove linux-headers-*.*.*-**(*号用你想删除的实际情况改写)

但是在极个别的情况下,会出现不能删除,应为apt-get本身依赖的内核版本还没有安装好,但是/boot已经满了。 这时候方法是

cd /boot
rm *4.4.0.70.generic

apt-get -f install

sudo apt-get autoremove

####第四

执行完上面命令后再次执行

dpkg --get-selections|grep linux

查看内核是否都删除干净了。没干净继续删除。有的内核后面会显示是deinstall 那需要通过 dpkg --get-selections | grep deinstall | sed 's/deinstall/\lpurge/' | sudo dpkg --set-selections; sudo dpkg -Pa

通过上面方法就可以。

还有一种通过正则表达式匹配内核然后除最新的统统统统删除的。

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

可以参考一下文章 Ubuntu下boot分区剩余空间不足解决 另外还要比较高端的方法是

怎样增大 /boot 空间大小?

[Fedora] 解决:boot分区空间不够,扩展容量

Ubuntu14.04升级成16.04遇到报错如下 这篇文章,对于空间不够有时候还是不不能解决问题的。

dpkg -l | grep linux-image
sudo apt-get purge --remove linux-image-x.x.0-xx-generic

这两个步骤和我文章上写的有点不一样。功能是一样的。

因为在root下删除可能会导致问题

linux-image-3.19.0-66-generic造成dkpg无法正常工作的问题

解决方法
$ cd /var/lib/dpkg/
$ sudo mv info info.bak
$ sudo mkdir info
$ sudo apt-get update
$ sudo apt-get -f install
这一步里会出现很多warning,是因为dpkg的info文件的缺失,不用担心,后面用info.bak恢复就可以了。

更新和重新配置完成后,恢复info.bak
$ sudo mv ./info/*
./info.bak
$ sudo rm -r info
$ sudo mv info.bak info

完成以上步骤,理论上问题应该解决了。

转载于:https://my.oschina.net/miaojiangmin/blog/1523163

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值