为/boot 做一个单独的分区好不好?

Am1*_*3zA 82 linux partition system-installation

我见过有些人为/boot. 这样做有什么好处?这样做以后我可能会遇到什么问题?


另外,除了/homeand之外/boot,哪些分区可以分开?是否推荐?

Ave*_*yne 51

这是“ye olde tymes”的遗留问题,当时机器无法处理大型硬盘驱动器。/boot分区背后的想法是使插入驱动器的任何机器始终可以访问该分区。如果机器可以到达驱动器的起点(较低的柱面数),那么它可以引导系统;从那里 linux 内核将能够绕过 BIOS 引导限制并解决该问题。随着现代机器解除了这一限制,不再有固定的/boot分离需求,除非您需要对其他分区进行额外处理,例如引导加载程序本身无法识别的加密或文件系统。

从技术上讲,只要您没有使用非常旧的硬件(1998 年之前左右),您就可以摆脱单个分区的困扰。

如果您决定使用单独的分区,请务必为其提供足够的空间,例如 200 mb 的空间。这对于多次内核升级(每次消耗几兆)来说已经足够了。如果 /boot 开始填满,请删除您不使用的旧内核并调整引导加载程序以识别这一事实。

  • 拥有 /boot 分区的现代原因仍然很多,它们都归结为“引导加载程序无法读取根文件系统”。正如您所说,历史用例是驱动器太大,但现代用例是加密、新文件系统(例如 ext4)、LVM 或任何 GRUB 根本不支持的深奥设置。 (33认同)
  • 有没有人提到过,在双启动的情况下,如果 Linux 系统是在 Windows 之后安装的,GRUB 会为并排系统提供引导线。如果 /boot 不在单独的分区上,则删除 Linux 分区会使机器无法启动。如果 /boot 位于单独的分区上,则删除 Linux 安装(例如,根分区)不会损害引导辅助系统的能力。 (25认同)
  • 我的 100MB /boot 分区被过时的内核填满了。当发生这种情况时,这是非常混乱的。 (5认同)
  • 500M?wtf 他们储存在那里?我什至从不需要 100M 我现在在 `/boot` 上使用 13M。 (4认同)
  • 关于大小,“对于 Fedora 13,默认的 /boot 分区大小增加到 500 MiB,以避免将来出现这些问题”。(来自 http://fedoraproject.org/wiki/Common_F13_bugs#Preupgrade_doesn.27t_work_with_default-sized_.2Fboot_partition) (3认同)
  • @Avery Payne,@xenoterracide:我当前在 ubuntu 10.10 下的 `/boot` 是 463MB。这是自内核 2.6.22 以来已升级的旧安装。我猜想 Ubuntu 的包管理由于某种原因不会删除旧内核。这是一次 ubuntustudio 安装,因此对于很多内核我都有“-generic”和“-rt”版本。此外,还有每个约 8MB initrd 文件的备份。显然,对于知道发生了什么的人来说,这个问题很容易解决。也许除非“/boot”已满,否则他们不会删除旧内核? (2认同)

dsp*_*dsp 42

使用 /boot 分区的原因之一是它允许加密 /,其中内核和 initrd 从未加密的分区加载,然后用于挂载包含操作系统的加密根分区。但是,对于一般用途应该无关紧要。

添加来自Riccardo Murri的评论:

使用单独的 /boot 也有历史原因:在过去,BIOS 只能访问大磁盘的一部分,因此操作系统引导加载程序所需的所有文件都必须保存在 BIOS 可访问区域中。因此有一个单独的 /boot 分区。这不再适用,虽然


wzz*_*zrd 18

主要的企业发行版像 Red Hat 和我认为 Suse 使用单独的 /boot 的主要原因是它们默认使用 LVM 而 Grub 不能用于从 LVM 引导。就是这么简单。

因此,如果您想使用 LVM,这是一个福音,您可以使用单独的 /boot。就个人而言,我认为这是使用LVM和单独的分区的事情,主机很好的做法类似/var/boot/home/tmp,甚至/usr在服务器上,例如,为了保护您的根文件系统或数据分区从快满。

  • 另一个很好的理由是 GRUB 不支持 *ext4*,只支持 *ext3*,所以如果你想为 `/` 使用 ext4,你必须有一个单独的 `/boot` 分区。 (3认同)
  • Grub legacy 不起作用,如果 /boot 安装在 LVM 逻辑列上,Grub 2 也不起作用。最近添加了支持。挖掘特定的参考应该不难。软件 RAID 也是如此,最近 Grub 2 也添加了对此的支持。 (2认同)

tsv*_*der 13

最后一个原因(不如给出的原因重要)是,如果部分磁盘损坏,它可以让 PC 保持可引导状态。您拥有的分区越多,简单地不挂载有故障的分区就越容易。

这有时很有用,但通常有更好的方法。

编辑:另一点:假设 Linux,使用 LVM 可以是避免任何潜在问题的好方法,它可以轻松调整“分区”的大小并无缝添加新空间。

  • 难道它不需要至少部分 / 分区未损坏吗?当然,内核映像在 /boot 上,但驱动程序在 /lib 中,而 init 或 sh 则在 /bin 中。 (2认同)

rei*_*che 7

我认为这更多是个人偏好而不是其他任何事情。甚至可能是最佳实践。我个人对 /boot 的看法是基于只读的。偶尔您需要在那里写入以升级您的内核,或者可能在 grubloader 中添加另一个操作系统。除此之外,它只需要......好吧,启动。因此,将它放在单独的文件系统中可能有助于将其置于只读状态(甚至可能是它的某些安全方面)。

应该是一个单独的文件系统吗?我想不是......但这是一个坏主意吗?一点都不!


Kai*_*Kai 7

为了回答问题的“它可能导致什么问题”的一部分:与任何分区一样,总是存在需要比最初分配的空间更多的空间的风险。虽然这是不太可能的情况下/boot,出现了最近与升级前的问题在Fedora中引起小的/boot尺寸。