问题:
执行更新命令apt-get update时,出现No space left on device:
cannot copy extracted data for './boot/vmlinuz-4.4.0-116-generic' to
'/boot/vmlinuz-4.4.0-116-generic.dpkg-new': failed to write (No space left on device)
分析:
因为我们经常更新,但是在安装系统的时候,boot空间设置太小,就会导致boot空间不足了,导致更新失败;最好是在装系统的时候将boot设置大一点,搞个两三个G。
解决方案:
1、打开终端,输入:
sudo df -h /boot
查看boot有多少内存,使用了多少。
2、查看目前系统中安装的内核镜像,如图所示
sudo dpkg --get-selections |grep linux-image
3、查看目前系统所使用的内核镜像,如图所示,我系统使用的是4.15.0-60
sudo uname -r
4、除了自己使用的镜像,其余的镜像都是多余的,手动删除。
sudo apt-get remove linux-image-4.15.0-62-generic
如果成功就继续把所有的删除。若是不成功,出现如下错误:
这个错误说明,你要卸载linux-image-4.15.0-62-generic,必须先卸载他所依赖的文件,如linux-image-generic-hwe-16.04、linux-modules-extra-4.15.0-62-generic;
然后....
5、把所有依赖都删除,删除出现什么依赖,就把依赖添加在删除命名的后面,一直到出现如图所示结果,就删除成功。
我这里是使用下面这个命令:
sudo apt-get remove linux-image-4.15.0-62-generic linux-modules-extra-4.15.0-62-generic linux-modules-extra-4.15.0-72-generic linux-image-generic-hwe-16.04 linux-generic-hwe-16.04 linux-signed-generic-hwe-16.04
6、我这里下面命令把所有的多余镜像删除了,把镜像名字放在删除后面就行
sudo apt-get purge linux-image-4.15.0-50-generic linux-image-4.15.0-51-generic linux-image-4.15.0-52-generic linux-image-4.15.0-54-generic linux-image-4.15.0-55-generic linux-image-4.15.0-58-generic linux-image-4.15.0-62-generic
这里 注意,使用sudo apt-get purge 与使用sudo apt-get remove 命令删除,结果是不一样的。
使用remove命令会保留相应的配置文件,所以apt-get remove命令后还会有deinstall文件,但还是已经删除了。
使用purge将包括配置文件在内的内容一起删除,推荐这个。
7、检查
dpkg --get-selections |grep linux-image
df -h /boot
就可以看到是否有没有删除完,