如何在 Linux 系统间同步 UID/GID

如何在 Linux 系统间同步 UID/GID

我的设备机架中有一个大型 NFS 共享存储系统。我的操作是启动许多其他使用 NFS 系统作为主要生产存储的 Linux 系统。

有时存储是共享的,而且我希望能够在项目进行时启动和导入各种虚拟机。我看到的问题是 NFS 不会尝试验证其客户端系统用户的身份验证,如果一个系统上的 Alice 使用 UID=1234,而另一个系统上的 Bob 使用 UID=1234,那么就 NFS 系统而言,它们的文件权限是相同的。

在 NFS 世界中通常是如何处理这个问题的?

答案1

在中型到大型组织中,我们通常使用中央目录(LDAP,NIS,NISplus等)来跨系统存储/共享用户(因此 UID 在任何地方都是相同的)。

如果没有的话,您需要在系统中添加某种“约定”,如果可能的话,在每个系统上保留相同的 UID,保留“范围”并使用它们,并保留它们的库存。

同时,要解决您的问题,我认为这取决于您拥有的系统数量:如果您没有很多系统:您是否能够在每个系统上更改用户 ID?(并且您必须在这里和那里做一些 chmods)

如果不可能的话,我认为你也没有很多解决方案:

  • 在 NFS 共享上对文件夹进行 chmod 命令,使其具有更大的权限
  • 使用组(最简单的解决方案),在您的系统上创建新组并将您的用户放入其中,然后在您的共享上使用这些组和组权限,这将限制风险。并且在创建这些组时,在每个系统上尊重相同的 GID :) 因此,即使您的用户具有不同的 UID,至少您具有相同的 GID 来访问共享,并且您可以轻松地管理您的访问权限

相关内容