/usr 和 /home 应该位于不同的分区吗?

/usr 和 /home 应该位于不同的分区吗?

在备战lcpi考试的过程中,我遇到了以下的说法。

如果有多个磁盘可用,最好将 /usr 和 /home 目录放在不同的分区上。http://en.wikibooks.org/wiki/LPI_Linux_Certification/Design_Hard_Disk_Layout

对于桌面工作站,将主目录放在单独的驱动器或分区上是有意义的。

我登录过很多Linux服务器,但我从未见过系统管理员将这些文件夹放在单独的分区上。

在 Linux 服务器上分离这些文件夹是常见的做法吗?
您可能出于什么原因将 /usr 和 /home 分开?(除了使重新安装更容易)。

答案1

将它们创建为单独分区的 3 个主要原因如下:

  1. 表现
  2. 隔离
  3. 安全

例子

  • 通过分离,/home您可以将这些数据放在共享网络磁盘上,这样当用户 A 登录到给定域中的服务器时,它们/home/$USER将成为在机器之间跟随的单个副本。这通常是使用 NFS 和自动挂载(又名autofs)来完成的。

  • 通过将/usr数据放在自己的分区上,可以以只读方式挂载,从而对该目录下的数据提供一定程度的保护,使其不会轻易被篡改。

  • 隔离的一些额外原因/usr是为了更容易部署相同的系统,这些分区可以一次性准备好,然后更容易地跨系统复制。

  • 此外,将数据分离出来可以使备份周期变得更容易。

  • 最后,分离易失性目录,例如/home可以防止系统的主磁盘被意外或恶意用户填满。

在我超过 15 年的从事此工作的过程中,我只见过/home分离的(作为通过 NFS 的网络共享)和/boot/var目录被隔离为单独的分区。在一些深奥的 Solaris 盒子之外,我不记得曾经见过 Linux 系统有单独的/usr- 并且请注意,如果您在启动前没有/usr安装init,您的系统将以深奥且无声的方式崩溃。

答案2

放置/home单独的分区是相当常见的。这通常会拆分系统文件 ( /) 和用户文件 ( /home)。这两个文件系统可能具有不同的性能权衡、不同的备份策略、不同的配额、不同的安全策略等。此外,通过这种方式,可以独立于用户数据重新安装或重新映像操作系统。/home对于单用户工作站和存储用户文件的多用户系统来说,拆分都是一个好主意。我只会保留/home在除管理员配置文件之外没有用户文件的服务器上的同一分区上(但可能有一个单独的分区用于该机器的任何内容 - /var/mail或数据库等),或者在安装快速简单,尤其是在笔记本电脑上,无需重新平衡以使用第二个磁盘。

/usr当操作系统使用大量磁盘空间(例如,1GB 中的 300MB)时,放置单独的分区曾经很常见。该分区可以设为只读,可以通过网络共享。设为/usr只读的优点是,在断电的情况下,不需要 fsck。如今,所有主要文件系统都使用日志,不需要任何冗长的 fsck,并且磁盘大小的增加比操作系统大小要多得多 — 1TB 中的 30GB 简直就是微不足道的,因此不需要共享。没有充分的理由从系统的其余部分中分离出来(/usr、、、/bin…… )。如果您看到 split 的建议,那么它已经过时了。/etc/var/usr

答案3

/usr将和分开是很常见的/home。有许多的原因。以下是一些:

加密

尽管加密内容/usr有一些好处,但通常将完全加密的分区专用于/home目录并保持/usr 不加密状态。

不同的驱动器

我目前使用的笔记本电脑有一个小 SSD 和一个大硬盘。根分区(包括/usr)位于 SSD 上。/home位于硬盘上。 SSD 在写入时磨损相对较快。将诸如/home和 之类的易失性目录放在/varSSD 上会显着缩短其使用寿命。将我的根分区放在 SSD 上可以减少机器的启动时间。

安全

/home使用该选项挂载目录是很常见的nosetuid。此选项不允许在挂载上执行 setuid 文件。设置此选项使用户更难隐藏 root 拥有的 setuid shell。

答案4

我发现的另一个原因是文件系统优化。 /usr 包含应用程序在运行时使用的共享对象和一些其他公共资源,因此您可能需要将其分开以使文件系统更适合频繁使用。同样,对于 /home,您也可以将其用于非常适合大数据的文件系统

相关内容