我正在将许多小型自定义脚本和数据从一个 Linux 系统迁移到另一个系统。
在旧系统上,我们有一个拥有大多数文件的共享用户,这些文件位于该用户中/home
,但在新系统中,我们宁愿使用自己的帐户登录并使用组权限进行协作,但由于文件没有单一所有者,因此没有/home
-dir。
那么我应该把这些共享文件放在哪里?我应该创建一个拥有这些文件的无登录用户吗?或者有合适的/grouphome
地方吗?
(我不想将它们分散到各个用户中/home
:s。)
答案1
我几乎肯定会建议使用/usr/local
。
可以将全局可访问的用户脚本放在 中/usr/local/bin
。也可以将少量关联数据放入 中bin
。或者您可能希望将数据分离到/usr/local/var
或中/usr/local/share
。
通过这样做,您可以确信任何熟悉 FHS 的人都能够很快找到它们,而无需对特定系统有任何先验知识。
答案2
这正是群组权限设计的目的。我在 Ubuntu 中这样做:
sudo mkdir /home/shared
sudo addgroup shared
sudo chown :shared /home/shared
sudo chmod 770 /home/shared
sudo vim /etc/group
将有权访问共享目录的用户列表添加到共享组。例如:
shared:x:1002:norman,nextuser,and,so-on
当然,您可以使用除“shared”之外的任何名称,并且它不必位于 /home 目录中。好处是您不需要对用户帐户进行任何特殊操作,并且您可以轻松地从组中添加或删除用户。
答案3
简短的回答是;无论你喜欢哪里都可以:)
我喜欢使用 /projects、/shared 或 /common 之类的东西。/home/shared 也可以用。
答案4
我使用/shares
;这也是 qnap 使用的位置。
我在一个名为“我已安装数据驱动器”的/shares
文件夹中有一个指向目标的符号链接。/shares/.mnt/
这样做是为了避免在使用硬链接在共享之间移动文件时等待很长时间,而/shares
当数据驱动器仅安装在 /mnt 中时则需要硬链接。
/shares/.mnt
顺便说一句,没有共享。