在 /home 中创建非用户目录是否不好的做法?

在 /home 中创建非用户目录是否不好的做法?

我在一台计算机上安装了 ubuntu,操作系统安装在固态硬盘上,主目录挂载在单独的硬盘上。我想创建一个proj位于第二块硬盘上的文件夹,但我没有对其进行分区,所以我只使用了mkdir /home/proj

proj是一个包含不同实验组使用的各种软件包的目录。例如,/proj/experiment1包含一个组使用的软件,以及proj/experiment2另一个组使用的不同软件包或版本。我希望它与目录一起放在第二个硬盘上,/home这样就可以在保持此目录完整的同时重新安装操作系统。

我现在担心的是,如果将来有人运行,这个目录会发生什么adduser proj。这会删除该目录并将其替换为他们的主目录吗?

在 中创建非用户目录是不是不好的做法/home?如果是,我应该怎么做?

答案1

按照惯例,多用户共享的可修改目录通常位于 /var 或 /opt 中的某个位置。

但是,如果您真的担心有人创建一个名为“proj”的用户,您可以创建一个 proj 用户,将其帐户设置为禁用,这样任何人都无法以该帐户身份登录,并将文件放在其主目录中。然后使主目录可读且可执行(如果您愿意,也可以写入)。

答案2

虽然这不是最常见的情况,但从实际角度来看,我不认为应该禁止将“共享用户数据”目录放在 /home 下(特别是如果系统是您的,或者不受禁止它的明确规则约束)。我自己使用它的原因与您相同。事实上,我通常将我的 /home 与根目录分开分区,以便于备份我真正关心的内容(用户数据),这样我就不必担心它,以防我决定完全重新安装或升级我的系统(在这种情况下,我只需擦除根目录,而不必担心用户数据被删除 - 并且我将要与所有用户共享的文件也视为用户数据)。

如果您担心用户创建具有相同名称的主目录,则''adduser''脚本或类似脚本(我使用 Slackware,而不是 Ubuntu)可能会抱怨主目录已经存在并会要求用户选择另一个或 chown 它。

相关内容