将多个根目录保留在单个分区中

将多个根目录保留在单个分区中

我正在为新安装制定分区方案。我希望保持根文件系统相当小且静态,这样我就可以使用 LVM 快照进行备份,而无需为快照分配大量空间。

但是,我还想保持分区总数较小。即使使用 LVM,也不可避免地会浪费一些空间,而且分配更多空间仍然很烦人,而且还有些危险。

所以似乎有几个不同的选择:

  • /srv将包含大量可变文件(如、/var、 和)的分区/home作为根分区,并将核心系统状态(/etc/usr/lib等)安排在第二个分区中。这些文件(我认为)可以使用不同的备份方案进行备份,并且我认为它们不需要 LVM 快照。

  • 相反:将大变量目录放在第二个分区上,并将基本系统目录放在根 FS 上。

这些选项中的任何一个都要求某些目录是指向第二个分区的子目录的某种指针。我知道有两种不同的方法可以做到这一点:符号链接和绑定安装。对于这个目的,一个比另一个更好吗?还有其他选择吗?某些 Linux 发行版是否支持使用这种分区布局方式进行安装?

答案1

首先,你的根分区必须包含“/”、“/bin”、“/sbin”、“/lib”和“/etc”。您不能将它们放在单独的分区上,因为在安装其他文件系统之前的引导过程中都需要它们。 (虽然你可以做一些混乱的 initrd 事情来解决这个问题,但是当你想要执行一些简单的任务(例如修改 fstab)时,这会很痛苦)

之后,如果您想将其他目录放在其他分区上也可以。 Mount bind 是更干净的方法,就像符号链接一样,有些任务想要查看 /usr 上的可用空间,它会查询它,只是为了获取根分区上的可用空间。虽然我不知道有什么办法可以做到这一点,但该解决方案比符号链接更不容易出现问题。

相关内容