如何在同一台 Linux 机器上的用户之间共享文件/文件夹?

如何在同一台 Linux 机器上的用户之间共享文件/文件夹?

我们有 2500 多名用户使用 Linux 瘦客户端,他们的主目录位于一个公共 NFS 上。我们希望用户之间具有类似 Windows 的文件/文件夹共享功能。

用户未链接到任何特定机器,因此没有 IP 用户映射。因此 CIFS/SMB 不是一种选择。(鉴于所有文件都驻留在同一个物理机器上,在给定规模下这似乎是一种开销)

我尝试在目标用户的主目录(或公共目录)内创建源用户共享目录的符号链接。但是,由于主目录在我们的设置中具有权限 700,因此用户无法访问共享目录(尽管它具有宽松的权限)。我不知道这是否是正确的方法。

请建议一个有效实现这一目标的好方法。

PS:所有系统都运行 linux/Ubuntu。文件管理器是 Thunar(如果需要可以更改)
PS2:我可以编写相当多的 shell/python/perl 脚本,如果解决方案需要,也可以编辑 thunar 应用程序。

编辑:
根据评论和答案,我尝试了 ACL。我在 NFS 服务器上使用 setfacl 设置权限,新权限会反映在那里,但在不是当我使用 getfacl 检查时,反映在 NFS 客户端机器上。

NFS 服务器# setfacl -Rm u:akila:rwX /nfshome/jp/shared
NFS 服务器# getfacl /nfshome/jp/shared
# 文件:nfshome/jp/shared
# 所有者:jp
# 组:users
user::rwx
用户:akila:rwx
组::rwx
掩码::rwx
其他::rx

------------

NFS 客户端> getfacl /nfshome/jp/shared
# 文件:nfshome/jp/shared/
# 所有者:jp
# 组:用户
用户::rwx
组::rwx
其他::rx

答案1

正如已经建议的那样,您可以使用 ACL 来设置此类内容或创建粘性位文件系统/文件夹(如 /tmp)。如果您希望每个人都能看到彼此的数据但仍保留单独的权限,则可以这样做。

如果您不想保留单独的权限,而只想将批量目录/共享授予所有用户,那么没有什么比这更简单的了。您可以创建共享目录的本地帐户所有者(本地用户的主页),并允许所有用户通过 sudo 进入该帐户。在这种情况下,Sudoers 是您最好的朋友,没有什么比这更简单的了。

相关内容