启动分区填充:这是Ubuntu中的错误吗?

我一直遇到/boot分区填满旧内核映像的问题,这会在升级期间导致模糊的错误(但现在我知道它们是什么……)。

请注意,我已经知道如何解决这个问题,感谢Ask Ubuntu: 这是我最喜欢的答案 。

我的问题是, 为什么 Ubuntu继续这样做,这不是一个严重的设计缺陷吗?

在阅读与/boot填充相关的问题时,我看到了类似的评论“这是因为你为启动分区分配了一个小空间,或者你有UEFI而忘记增加空间。” 但是,我在至少三个不同的Ubuntu安装中遇到了这个问题,版本从12到15,我从未使用过默认安装选项以外的任何东西。 我总是使用整个磁盘(没有双启动)完成一个干净的Ubuntu安装,虽然驱动器之前通常还有其他东西。

我在安装中做错了什么(即我应该选择一个选项)? 我总是认为默认选项是最安全的。

此外,即使安装不同(即没有/boot ,或者更大/boot ),这仍然不是问题吗? (即如果永远不会删除旧的内核映像,它们会占用磁盘空间,即使有足够的可用空间,这似乎也是一个设计漏洞)。

为什么 Ubuntu继续这样做?

简短版:安全。

长版本:内核是操作系统中最重要的部分。 它处理硬件和软件之间的通信,以及我在这里不会详细介绍的其他内容。

更改内核可能会给您带来麻烦。 大部分时间一切顺利,但有一次事情搞砸了你确实想让它快速恢复。

假设您正在研究论文的材料,截止日期即将来临……突然内核升级会破坏您的Wi-Fi。 你是否愿意推迟gradle以节省150 MB的磁盘空间?

我想不,你不想那样。 这就是你重新启动的原因,选择以前的内核并继续你的工作。 这样的事情不会经常发生,但它们可能很少发生在某些特定硬件上,也许只发生在一个内核上。

我实际上经历过看到我父母的PC在内核升级后不接受任何键盘输入(简单的键盘,而不是无线键盘)。 现在,使用没有键盘的PC并不好。

这不是一个严重的设计缺陷吗?

不是那么严重,因为好处超越了缺点,现在硬盘基本上总是超过250 GB。 即使有10个不同的内核,您也只能占用2 GB。 是的,一段时间后它开始浪费空间,但不是那么明显。 此外, 您可以手动卸载它们,它们不会被锁定。

然而,有理由说只需要最后几个内核。 这就是为什么Ubuntu 16.04 Xenial 标记为“自动删除旧内核,除了最后2。

我总是认为默认选项是最安全的

的确,你的假设是正确的。 如果没有任何备份解决方案,Ubuntu绝不会让你盲目地覆盖你的内核。

用户负责删除旧的,不需要的内核。 因此,管理员的任务也是关注自由空间。 所以不,我不同意这是一个问题,一个安全问题或一个设计缺陷。

有一种自动删除内核的方法,但是debian和/或ubuntu开发人员认为确定“不需要的内核”是什么有问题所以这不是他们想要默认的任务(……)。

我自己不使用/ boot所以永远不会遇到这个问题,但如果你想要一个(lvm,加密)300Mb就足够了。