如何在Ubuntu上修复“Not Enough Free Disk Space On /boot”

Sk 的头像

·

·

·

12,201 次阅读

提问:如何在Ubuntu上修复“Not Enough Free Disk Space On /boot”错误?

今天,当我在升级Lubuntu 14.04的时候遇到了下面这个错误,但是很简单。

“Not Enough Free Disk Space On /boot”

这是因为我的 /boot 分区被不再需要的旧内核与包塞满了。

回答:

我听说Ubuntu Tweak中的Computer Janitor功能可以删除不想要的垃圾文件。使用Computer Janitor,你可以将你的系统清理成像新安装的那样。Janitor会删除:

  • 程序缓存(Firefox/Chrome 缓存、软件中心缓存);
  • 略缩图缓存;
  • apt缓存;
  • 旧内核;
  • 包的配置;
  • 不再需要的包。

如果你还没有安装这个工具,参考下面的链接

要删除不需要的垃圾文件,打开Ubuntu Tweak,点击 Janitor 选项。

选择你想要删除的文件的选框,并点击 Clean 按钮。

Janitor现在就开始清理你的系统了。

真酷!系统清理完成了。

我重启启动了软件更新。这个没再遇到问题了。

就是这样。当然也有其他的方法可以清理系统。但是,这个方法很容易学。我们可以只点击几次鼠标就可以清理系统。

干杯!


via: http://www.unixmen.com/how-to-fix-not-enough-free-disk-space-on-boot-in-ubuntu/

作者:SK 译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

9 条回复

  1. refactor 的头像
    refactor

    这是因为boot积累了太多旧的linux kernel,用apt-get autoclean, apt-get autoremove是不会自动清除老kernel的,但是可以用 apt-get purge linux-image-3.13.0-24-generic

    来自桂林
  2. Esteem 的头像
    Esteem

    (1)uname -r 查看当前使用的内核;
    (2)dpkg –get-selections | grep linux 查看系统中有哪些内核启动项;
    (3)sudo apt-get remove linux-image-XXXXX-generic 删除旧内核启动项;
    (4)sudo apt-get remove linux-headers-2.6.32-21
         sudo apt-get remove linux-headers-2.6.32-21-generic 卸载内核相关的头文件;

    (5)删除完后,再用命令:dpkg –get-selections | grep linux 查看当前内核启动选项相关信息:
    linux-headers-2.6.32-21 已经没有了,被删除了
    linux-headers-2.6.32-21-generic已经没有了,被删除了
    linux-image-2.6.32-21-generic 显示为deinstall,表示被卸载删除了
    (6)sudo update-grub 更新开机启动控制文件.

    来自益阳
  3. Esteem 的头像
    Esteem

    以防万一,我一般在系统中保存两个临近版本的内核.

    来自益阳
  4. linux 的头像
    linux

    这是对的!

    来自北京
  5. linux 的头像
    linux

    这是直指人心的做法,其实本文用ubuntu tweak,并不是很对症。

    来自北京
  6. 来自 - 四川成都 的 Chrome/Linux 用户 的头像
    来自 – 四川成都 的 Chrome/Linux 用户

    这是我的方案,先执行

    sudo yum autoremove "$(rpm –query –all | grep –ignore-case ‘^kernel-‘ | grep –invert-match $(uname –kernel-release | cut –delimiter=’-‘ –fields=1))"

    也可以先执行

    rpm –query –all | grep –ignore-case ‘^kernel-‘ | grep –invert-match $(uname –kernel-release | cut –delimiter=’-‘ –fields=1)

    人工确认没有问题后再执行。

    最后是最早写的 deb 的方法,有一段时间没有用了,用之前要测试一下。

    dpkg –list | grep -i ‘linux-[hi]’ | grep -i -v ‘linux-image-generic’ | grep -i -v ‘linux-headers-generic’ | grep -i -v $(uname –kernel-release | sed ‘s/-generic//g’) | awk ‘{print $2}’ | tr ‘n’ ‘ ‘

  7. 来自 - 四川成都 的 Chrome/Linux 用户 的头像
    来自 – 四川成都 的 Chrome/Linux 用户

    我一般是在使用新内核一段时间没有问题,就把旧内核清理了。

  8. 来自 - 河北保定 的 Chrome/Linux 用户 的头像
    来自 – 河北保定 的 Chrome/Linux 用户

    直接不分/boot分区就毛事没有了

    来自保定
  9. linux 的头像
    linux

    别的分区不分可以,但是我认为 /boot 和 /var 应该分出来,理由如下:
    1、/boot 分出来,有利于处理引导问题,如果引导出现问题了,你单独制作一个引导分区会方便一些
    2、/var 分出来的原因是,/var 下存储了大量的日志,一方面日志频繁写入,该分区的硬件损坏的几率高一些,另外一方面,日志增长有时候是不可预计的,所以建议分出去。

    来自北京

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注