我们在 NFS 上有一个缓存目录,LDAP 用户会向其写入内容。在 CI 中,我们遇到的问题是,非 LDAP 用户无法正确更改此缓存目录中的文件。
- 设置对此基于 NFS 的缓存的访问以便在 CI 中也启用缓存使用的“正确”方法是什么?
- 管道用户是否也应设置为 LDAP 用户?或者有其他解决方法?
答案1
NFS 要求客户端和服务器具有一致的用户映射(这就是为什么有一本著名的书叫做“管理 NFS 和 NIS”)。首先,如果不使用 kerberos,则所有 RPC 数据包都由进程 uid/gid 标识。因此,请确保所有内容都同步。即使用户名不同,数字 id 也必须匹配(当然,在这里使用 LDAP 有助于保持一致)。其次,当您执行“chown bob file.txt”时,客户端会将“bob@”或“1234”发送到服务器(假设“1234”是 bob 的 uid)。同样,在这里,客户端和服务器必须就通过线路发送的内容达成一致,如果发送的是字符串主体,那么 LDAP 将有所帮助。
当然,您可以手动同步 uid。然后确保数字 IO 正在使用中。