我读了一篇文章,它指出“bin”“dev”“etc”“lib”“root”“sbin”目录应该与根目录在同一个文件系统中,也就是说,它们不应该作为单独的文件系统挂载.
我有点困惑,例如,在许多发行版中,现在“sbin”“bin”和“lib”目录符号链接到“usr”目录。
lrwxrwxrwx 1 root root 7 Apr 30 18:19 bin -> usr/bin
...
lrwxrwxrwx 1 root root 7 Apr 30 18:19 lib -> usr/lib
lrwxrwxrwx 1 root root 9 Apr 30 18:19 lib32 -> usr/lib32
lrwxrwxrwx 1 root root 9 Apr 30 18:19 lib64 -> usr/lib64
lrwxrwxrwx 1 root root 10 Apr 30 18:19 libx32 -> usr/libx32
...
lrwxrwxrwx 1 root root 8 Apr 30 18:19 sbin -> usr/sbin
但是,文章并没有规定“/”目录和usr目录必须在同一个文件系统上。我也看过之前的问题,但我仍然感到困惑。哪些目录必须在同一个文件系统中,哪些应该保存在不同的文件系统中?
/bin vs /usr/bin 问题是一个老问题。这个想法是让操作系统的一个真正子集能够挂载 /usr 分区,如果你碰巧将它们分开的话。这可以帮助具有扇区数限制的旧 PC BIOS,这使您可以选择非常小的 / 分区。
如今,这种区别不再重要。Linux 将加载操作系统所需的所有东西放在一个 initramfs 小存档中,如果需要,可以由 Grub 及其许多花哨的模块加载(您也可以有一个简单的普通分隔 /boot 分区)。