2016年09月03日 14:16:45 萧氏一郎 阅读数:7802 标签: ubuntuboot分区清理更多

个人分类: linux
 
版权声明:本文为本猿原创文章,转载务必注明出处,多谢。 https://blog.csdn.net/xhw035/article/details/52422970

关于ubuntu系统boot分区空间不足而又无法卸载旧内核的解决方法

今天早上打开电脑,发现本人ubuntu 16.04系统提示boot分区不足,然后仔细查看,发现果然boot分区剩余0m.顿时不知所措,原来安装ubuntu系统都是按照网上视频教程里面所讲的,给boot分区200m就够了,怎么就不够了。于是乎开始疯狂百度。终于花了一上午给整好了,也许很多人不需要这么久,可遇到的问题总是比较奇葩,中间也走了很多弯路,下面简单的分享一下。

由于之前没有截图,这里只给一张整好后的图,证明本人亲测是成功的。

对于分区空间不足,直观来讲就是两种思路,一种是扩展大小,一种清理。对于扩展,我也尝试过没有成功,也看过网上的资料,总体而言这里方法资料较少,这里有一篇博客可以参考一下:http://blog.csdn.net/caz28/article/details/50827904 ,里面步骤也讲得比较清除,这里不再详细赘述。下面主要讲讲清理boot分区。

清理boot分区,网上资料就多了去了,但多类似,相互抄袭,有时候还真解决不了你的问题。常规套路无非是,先用如下命令查看系统已安装内核的版本:


  1. dpkg --get-selections |grep linux-image

本人查到结果如下:


  1. linux-image-4.4.0-31-generic install
  2. linux-image-4.4.0-34-generic install
  3. linux-image-4.4.0-36-generic install
  4. linux-image-extra-4.4.0-31-generic deinstall
  5. linux-image-extra-4.4.0-34-generic deinstall
  6. linux-image-extra-4.4.0-36-generic install
  7. linux-image-generic install

可以看到,一共安装了三个版本的内核,其中deinstall表示卸载残留,这就是我遇到奇葩的问题,导致后面搞了很久。

然后查看当前使用的内核的版本:


  1. uname -a

本人查到结果如下:


  1. Linux xiao 4.4.0-36-generic #55-Ubuntu SMP Thu Aug 11 18:01:55 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

如何发现当前使用的内核版本不是已安装最新的版本,请重启,会启动切换到已安装的最新版本。

按照网上的套路,开始执行如下命令卸载:sudo apt-get purge linux-image-3.5.0-17-generic 或者 sudo apt-get remove linux-image-3.5.0-17-generic ,按照网上所说,前者卸载不会出现残留,而后者会有linux-image-extra-4.4.0-31-generic deinstall 这样的deinstall残留,而真正卸载干净的情况是,只会显示install,不会显示deinstall,可能很多人通过这种方法,依次下载不需要的内核,也能清理boot分区,但我的情况每次卸载都是失败。网上还有中方法,用“新立得软件包管理器”去搜索已安装的内核,然后再用它来卸载不需要的内核,这种方法我也试过,也是失败告终。而且先用命令卸载失败后,再用新立得,会提示无法获取内核文件的文件锁,也就是被终端进程没有释放文件锁。所以只得重启来释放文件锁,若此反复尝试,重启几次,还是未果。

经过多次尝试,终于找到解决方案,执行命令如下:


  1. sudo apt-get autoremove linux-image-4.4.0-31-generic linux-image-4.4.0-34-generic

就是将两个不需要的内核同时卸载,并且使用的是autoremove命令,它会自动解决相关依赖。执行此命令后,再次查询,结果如下:


  1. linux-image-4.4.0-31-generic deinstall
  2. linux-image-4.4.0-34-generic deinstall
  3. linux-image-4.4.0-36-generic install
  4. linux-image-extra-4.4.0-31-generic deinstall
  5. linux-image-extra-4.4.0-34-generic deinstall
  6. linux-image-extra-4.4.0-36-generic install
  7. linux-image-generic install

发现不需要的内核已全部卸载完毕,只是还残留,其实都这里已经是成功了,boot分区已被清理,一查果然boot分区还剩余60多m,boot分区只要没满就够用了,我这里总共才200m,但是毕竟还有残留,不爽,于是乎执行如下命令:


  1. sudo dpkg -P linux-image-4.4.0-31-generic linux-image-extra-4.4.0-31-generic  linux-image-4.4.0-34-generic linux-image-extra-4.4.0-34-generic

此命令能将所有残留一次都清除掉,执行后,再次查询系统已安装的内核结果如下:


  1. linux-image-4.4.0-36-generic install
  2. linux-image-extra-4.4.0-36-generic install
  3. linux-image-generic install

OK,大功告成,无残留,boot分区总终剩余空间从最好开始的一张图可以看出,剩余72m。很好,一看时间,尼玛已经是上午12点多了,一上午就这么过去了。呜呜~~~~(>_<)~~~~

最后总结两点:一是网上那些linux安装教程都说boot分区200m够用,真的够吗?其实估计那些老师没有亲自实践过,对于经常的更新的系统来说,其实是不够的,很多所谓老师其实也是听别人说的,人云亦云。二十网上很多清理boot分区的教程,都说相互抄袭,有时未必能解决你的问题,要想解决问题,有时还得亲自去尝试去实践。学linux就得实践出真知。

关于ubuntu系统boot分区空间不足而又无法卸载旧内核的解决方法的更多相关文章

  1. ubuntu下boot分区空间不足问题的解决方案

    https://blog.csdn.net/along_oneday/article/details/75148240 先查看当前内核版本号(防止误删) uname –r 查看已经安装过的内核 dpk ...

  2. Ubuntu系统下运行Eclipse出现找不到jre的问题的解决方法

    在Ubuntu的某些版本下,比如10.10,会出现以下奇怪问题: 1. 安装jdk 我下载的jdk是bin格式的,直接运行解压,得到一个文件夹. 这个文件夹作为jdk的安装目录,可以拷贝到任意目录. ...

  3. 解决Ubuntu 16.04下提示boot分区空间不足的办法

    原文地址: http://www.jb51.net/article/106976.htm https://www.linuxidc.com/Linux/2015-09/123227.htm 因为lin ...

  4. ubuntu系统怎么分区

    首先科普下windows和linux的文件系统和主分区: 1.电脑的主分最多只有只能由四个.如果是win7和linux双系统,则windows系统可能会占到1-2个主分区,那linux最多只能有两个主 ...

  5. 如何在Virtualbox中对Ubuntu系统根分区扩容

    转载:             参见博客: https://blog.csdn.net/LEON1741/article/details/56494797 前在Virtualbox中安装了一个Ubun ...

  6. Ubuntu访问window下的磁盘分区出现“Error mounting /dev/sda5 at/media”错误的解决方法

    我装ubuntu之前,电脑上安装了windows 10,为了装ubuntu,在window 10下的磁盘工具分配了30G的磁盘空间.安装完Ubuntu之后,访问window 10的磁盘分区出现“Err ...

  7. 虚拟机装系统出现 ntldr is missing(NTLDR丢失)、无法正常开机、解决方法

    虚拟机(VMware Workstation或Hyper-V)装ghost版系统提示“ntldr is missing Press Ctrl+Alt+del to Resta 此方法对实体机.虚拟机安 ...

  8. ubuntu下wine打开自由们找不到MFC42.DLL重新安装的解决方法

    一直在找ubuntu下的X墙工具,看到大部分的都是ssh和tor的,但是tor下载不到,找了很多方法,没有办法,只能用FG了.但是Fg是运行在windows系统下的程序. 只好再安装一遍wine,用终 ...

  9. Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法

    在linux环境编译应用程式或lib的source code时常常会出现如下的错误讯息: 代码如下: /usr/bin/ld: cannot find -lxxx 这些讯息会随着编译不同类型的sour ...

随机推荐

  1. RootMotionComputer 根运动计算机

    using UnityEngine; using System.Collections; /* * -------------------------------------------------- ...

  2. Linux 监测 常用测试工具

    fio [global]bs=16kdirect=1rw=readioengine=libaioiodepth=6write_bw_logruntime=60[test]filename=/data/ ...

  3. webpack 编译图片文件 file-loader

    1.安装插件 npm i file-loader --save-dev  npm i url-loader --save-dev  npm install image-webpack-loader - ...

  4. 视频编码格式转换 MP4

    视频工具有很多,如专业的premiere,但是我们只要涉及后期转换,不涉及制作,所以用不到这末专业的工具. 一般来说,使用暴风转码或者qq影音工具就足以应付我们的日常转换需求,下面以qq影音软件做说明 ...

  5. chrome插件下载

      chrome插件下载2018 CreateTime--2018年3月5日11:21:21 Author:Marydon 插件推荐 如何获取? 文章顶部左上角是我的qq号,这些chrome插件加我免 ...

  6. linux内核——TSS

    task state segment,任务状态段. 关于每个cpu对应不同TSS段的问题,如下解释: TSS段主要用在当前的任务从用户态切入内核态时去找到该任务的内核堆栈. 多核上的任务是真正的并发, ...

  7. 查询MYSQl数据表中的最后一条记录

    mysql: select * from table order by id DESC limit 1 oracle: select * from emp where id in (select ma ...

  8. Ubuntu8.04系列-系统优化篇

    文章欢迎转载,转载请注明出处:嘉骏苑http://luckiss.blogcn.com  原文出处:http://luckiss.blogcn.com/diary,15151058.shtml    ...

  9. js特效,轻松实现内容的无缝平滑滚动

    <!DOCTYPE   html   PUBLIC   "-//W3C//DTD   XHTML   1.0   Transitional//EN"   "http ...

  10. android中文字中间有超链接的实现方法

      1.XML里写: <resources> <string name="ACCOUNT_REGISTER_PROMPT_AGREEMENT">点击注册,表 ...