![为什么安装软件时 /boot 分区会更新](https://linux22.com/image/21624/%E4%B8%BA%E4%BB%80%E4%B9%88%E5%AE%89%E8%A3%85%E8%BD%AF%E4%BB%B6%E6%97%B6%20%2Fboot%20%E5%88%86%E5%8C%BA%E4%BC%9A%E6%9B%B4%E6%96%B0.png)
根据我在网上阅读的一些建议,在安装新的 (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.
我已经看过了这个问题并计划使用更大的/boot
分区重新安装。我的问题是:
为什么/boot
我只安装软件时分区数据会更新?
显然 50 MB 对于我的需求来说太小了,所以合理的分区大小是多少/boot
?
拥有单独的启动分区是否有意义?毕竟它可以简单地使用/
分区中它想要的所有磁盘空间。
答案1
分区上/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。