为什么安装软件时 /boot 分区会更新

Har*_*don 3 boot partition

根据我在网上阅读的一些建议,在安装新的 (Ubuntu) 系统时,我将/boot分区与/大小分开并且很小(仅 50 MB 左右)。对我来说,您只需要该分区中的有限文件是有道理的,并且引导序列在引导时只需要这么多数据初始数据,因此不需要(或者我的想法)使它变得更大。

当我开始使用我的系统并且由于以下(或类似)问题安装软件失败时,我感到很惊讶:

gzip: stdout: No space left on device
cpio: write error: Broken pipe
E: mkinitramfs failure cpio 1 gzip 1
update-initramfs: failed for /boot/initrd.img-3.2.0-18-generic with 1.
Run Code Online (Sandbox Code Playgroud)

我已经看到了这个问题,并计划用更大的/boot分区重新安装。我的问题是:

为什么/boot我只安装软件时分区数据会更新?

显然 50 MB 对我的需要来说太小了,那么合理的/boot分区大小是多少?

有单独的引导分区是否有意义?毕竟它可以简单地使用/分区中它想要的所有磁盘空间。

pbm*_*pbm 6

在/boot分区上安装了内核。当您进行系统更新时,如果有新内核,它会被下载并放置在/boot. 在该系统为该内核创建新的 initrd 映像并将其放入/boot.

旧内核不会被删除,因此在很少更新之后,/boot.

要清理它,请检查您正在使用的内核 ( uname -a),并使用包管理器删除旧内核。这应该会删除未使用的内核和 initrd 映像,但您可以手动检查它。

我不认为单独的/boot分区是必要的,除非您在以下以外使用一些奇怪的文件系统/:

当前支持的文件系统类型有 Amiga Fast FileSystem (AFFS)、AtheOS fs、BeFS、cpio、Linux ext2/ext3/ext4、DOS FAT12/FAT16/FAT32、HFS、HFS+、ISO9660、JFS、Minix fs、nilfs2、NTFS、ReiserFS 、Amiga 智能文件系统 (SFS)、tar、UDF、BSD UFS/UFS2 和 XFS。

来源:GNU GRUB 手册 1.99