我想知道FHS兼容的内部硬盘和网络共享安装点是什么?许多不同的教程建议将它们安装到/mnt或/media的子目录中。
根据FHS 3.0 (文件层次标准):
/media:可移动媒体的挂载点(这个目录包含子目录,这些子目录用作可移动介质的挂载点,例如软盘、光盘和压缩磁盘)。/mnt:临时挂载文件系统的挂载点(提供了这个目录,以便系统管理员可以根据需要临时挂载文件系统。此目录的内容是一个本地问题,不应影响任何程序的运行方式)我假设这些挂载点可以用于单个用户系统的/home/foo/extdrive /home/foo/nfsshare,但对于所有用户,我将把它们挂载到哪里呢?
更新: FHS 3.0,第3.1章,第二段“理由”
/中的新目录(即/workspace和/nfsshare)禁止创建根文件系统的新子目录有几个原因:它需要根分区上的空间,出于性能或安全原因,系统管理员可能希望保持较小和简单。它避开了系统管理员为在可装载卷之间分发标准文件层次结构而设置的任何规则。发行版不应该在根层次结构中创建新的目录,除非非常仔细地考虑结果,包括应用程序的可移植性。发布于 2017-01-18 12:59:38
您可以创建自己的挂载点目录。如果你想问为什么,我只能指向韦特·弗赫斯特的伟大回答。
如果您愿意的话,/mnt是您自己制作自己的一个有效位置,/也是。
/mnt可能已被一些历史安装系统以及可移动媒体(在/media之前)用于此目的。这样做仍然是有效的,但是系统本身不再应该在/mnt中设置任何东西。
我认为,如果您可能设置多个挂载点,那么使用/mnt是合理的。它使人们很容易看到所有这些地方在一起,并被称为人们喜欢使用的地点之一。其他一些人喜欢使用/Volumes -遵循OS系统,或/vol。/data对于单个挂载点是常见的。/d/也使用。/disk/几乎可以肯定地被一些人使用,但可能分散用于非基于磁盘的存储。
如果使用/mnt,我还会创建/mnt/tmp。然后仍然会有一个临时挂载的方便目录,FHS提到的/mnt的最初使用。
在一些常见的系统中,手工创建/media下的挂载点可能是个坏主意。现代Linux操作系统将自动为可移动媒体创建挂载点,它们创建的结构可能会发生冲突,或者看起来与您自己的不一致。你没有说你的系统是什么,但你可能对便携式指南感兴趣,特别是当你询问FHS的时候。请注意,这个推理类似于为什么FHS说操作系统不能填充/mnt。
有时建议将网络文件系统安装在专用子目录中,例如/n/host、/nfs/host或/net/host等。
例如,如果您在/host上挂载网络文件系统,并且网络变得不可访问,则当ls /试图对网络文件系统进行统计时,它可能挂起。这可能是不受欢迎和令人沮丧的,在你已经开始感到沮丧的时候。
发布于 2017-01-18 15:50:57
当FHS谈论你不能做的事情时,它谈论的是一个发行版,而不是用户或本地系统管理员。
unix系统只有一个文件系统树。因此,您可以在文件系统中的任何地方安装本地系统中的任何东西,您不会以任何方式破坏FHS;毕竟,FHS会不遗余力地避开本地系统管理员。对于任何时候都在系统中的内部磁盘,拥有/opt、/ntfs或/scratch或诸如此类的挂载点是完全有效的。或者,如果您正在耗尽磁盘空间,并且希望将一些东西从根文件系统移到另一个磁盘上,则可以将/var或/usr移动到单独的硬盘上,并以这种方式处理这些问题。
唯一不应该做的事情是将内部磁盘挂载到FHS所说的发行版可以写入的位置(例如/usr、/var或/lib),然后要么不将相关数据移动到该位置,要么使用一些非POSIX文件系统来处理该分区。除此之外,几乎所有的事情都是公平的。
发布于 2017-01-18 14:37:57
若要使特定用户可访问某个目录,请创建一个组。按照约定,组可以有主目录。有时,但不一定是以/home/$GROUP的形式创建的。
可以创建一个目录/home/alluser。如果您愿意,可以保留组名alluser(即创建一个空组)。(用户名和组名在技术上是分开的命名空间,但它们通常保持一致。例如,在这种情况下,您不会特别希望创建一个普通用户“alluser”)。
对于多个文件系统(例如,一个内部磁盘和一个网络文件系统),这种特定的命名方案不会自然地泛化。
你不是一个软件分发,在FHS中给出的理由不适用于你。在此限制之后,将引入一个额外的约束。如果/home变得不可装载,那么安装/home/alluser用于备份、恢复或故障排除也就不那么容易了。
https://unix.stackexchange.com/questions/338306
复制相似问题