为非 root 用户选择性地挂载网络驱动器

为非 root 用户选择性地挂载网络驱动器

如何为不同的用户指定不同的挂载?最简单的用例是,不同的用户在服务器(NFS 或 CIFS)中拥有自己专用的存储空间,只有他们才能访问。

在启动时挂载远程文件系统的传统方式是fstab在 Linux 中,但它包含系统范围的设置,因此不能用于任何特定于用户的操作。

sudoers 文件中未列出的用户无法对未在 fstab 中列出的驱动器使用 mount 命令。将所有可能的挂载组合列到 fstab 中感觉不对,而且我不确定如何解决多个用户可以访问同一个共享驱动器的问题。

对此,大家的共识是什么?应该如何实施这样的系统?看来我在研究中使用了错误的搜索词。

答案1

您提到的两种文件系统(NFS 或 CIFS)的 Linux 客户端软件都支持多用户挂载。主机可以使用其机器凭据(除了挂载之外不需要提供任何访问权限)挂载某个位置一次,然后每个访问该位置的用户都会使用他们自己的凭据自动被识别。

对于 NFS,如果您使用sec=krb5*(Kerberos 身份验证)或sys(基于 UID 的身份验证),则会自动发生这种情况。

对于 SMB/CIFS,它使用 mount 选项激活multiuser,并且主要使用 Kerberos。如果不使用 Kerberos,则需要使用该cifscreds工具加载每个用户的用户名和密码。

相关内容