第 27 章 文件系统
设置重试超时现在可以阻止 autofs
在不使用 SSSD 挂载的情况下启动
在启动
autofs
实用程序时,s sss
map 源有时无法提供映射信息,但 sss
不会返回适当的错误,以区分 映射不存在
且 不可用的情况
。因此,automounting 无法正常工作,autofs
在未从 SSSD 挂载的情况下启动。要修复这个程序错误,autofs
会重试在映射 没有存在错误时,为 master map
请求 SSSD。现在,您可以将重试超时设置为合适的值,以便 master 映射读取,autofs
会如预期启动。(BZ#1101782)
autofs 软件包现在包含 README.autofs-schema
文件和更新 schema
samples/autofs.schema
分发文件已过时且不正确。因此,一些人可能会使用不正确的 LDAP 模式。但是,无法使用中的模式更改。在这个版本中:
- 现在,添加了
README.autofs-schema
文件来描述问题,并建议尽可能使用哪些 schema。
自动挂载
不再需要重新启动,以访问存储在 NIS 服务器中的映射
在以前的版本中,
autofs
工具不会在启动时等待 NIS 客户端服务。因此,如果程序启动时没有可用的网络映射源,则主映射无法读取,且必须重启 自动挂载
服务才能访问 NIS 服务器上存储的映射。在这个版本中,autofs
会等到主映射可用来获取启动映射。因此,自动挂载
可以从 NIS 域访问映射,并且 autofs
不再需要在每次引导时重新启动。
如果在配置的等待时间后,如果 NIS 映射仍不可用,则可能需要增加
autofs
配置 master_wait
选项。在大多数情况下,软件包使用的等待时间就足够了。(BZ#1383194)
使用 autofs
检查本地挂载可用性不再会导致长时间超时
在以前的版本中,对于
autofs
认为本地的挂载请求没有服务器可用性探测,因为本地机器上的绑定挂载应该可供使用。如果绑定挂载失败,则尝试本地机器上的 NFS 挂载。但是,如果 NFS 服务器没有在本地机器上运行,则挂载尝试有时会在失败前遇到冗长的超时。
在首次尝试绑定挂载的情况下添加了一个探测,但会失败,
autofs
现在会返回在本地机器上尝试使用 NFS 服务器。因此,如果本地机器上绑定挂载失败,则回退以在本地机器上尝试 NFS 挂载失败,如果本地 NFS 服务器没有运行,则回退失败。(BZ#1420574)
当将 GFS2 文件系统挂载为只读时,日志会被标记为空闲
在以前的版本中,当挂载 GFS2 文件系统时,内核不会将文件系统日志标记为空闲。因此,
GFS2_log_flush()
函数会错误地尝试将标头块写入日志,并会记录顺序错误。当以只读方式挂载 GFS2 文件系统时,补丁已被应用为空闲日志。因此,上述错误不再在上述场景中发生。(BZ#1213119)
id 命令不再显示不正确的 UID 和 GID
当在连接到 NFSv4 服务器的 NFSv4 客户端中运行 Red Hat Enterprise Linux 时,id 命令显示了在 NFS id mapper 密钥环已过期后错误的 UID 和 GID。该问题持续 5 分钟,直到收集过期密钥之前,在密钥环中创建了新密钥并且 id 命令提供正确的输出。在这个版本中,密钥环设备已被修复,id 命令不会在上述情况下显示错误的输出。(BZ#1408330)
现在默认关闭标记的 NFS
Red Hat Enterprise Linux NFS 服务器上的 SELinux 标签通常对 NFS 客户端不可见。NFS 客户端会看到标记为
nfs_t
类型的所有文件,无论该文件在服务器中有什么标签。
从 Red Hat Enterprise Linux 7.3 开始,NFS 服务器能够将单个文件标签与客户端通信。当前最新的客户端(如最新的 Fedora 客户端),请参阅使用相同标签标记那些文件在服务器上标记的 NFS 文件。这在某些情况下很有用,但在服务器升级到 Red Hat Enterprise Linux 7.3 及更新的版本后,这可能会导致最近客户端出现意外的访问问题。
请注意,在 NFS 服务器中默认关闭标记的 NFS 支持。您可以使用
security_label
export 选项重新启用标记的 NFS 支持。(BZ#1406885)
在达到关闭状态后,autofs
挂载不再进入无限循环
如果
autofs
挂载达到关闭状态,并且已到达挂载请求并在挂载线程读取关闭通知前进行处理,则之前退出的挂载线程但不清理 autofs
挂载。因此,主程序永远不会达到其退出条件,并进入无限循环,因为 autofs 管理的挂载已经被挂载。要修复这个程序错误,现在会在处理每个请求后执行退出条件检查,并在 autofs
mount 达到其关闭状态时执行清理操作。因此,autofs 守护进程现在在关闭时如预期退出。(BZ#1420584)
现在,在处理命名空间时 autofs
更为可靠
在以前的版本中,
autofs
内核模块无法检查路径的最后一个组件是当前命名空间中的挂载点,而它只是任何命名空间中的挂载点。由于这个错误,autofs
有时会错误地决定挂载点克隆至传播私有命名空间是否已存在。
因此,自动挂载挂载点无法挂载,并返回错误消息
Too many level of symbolic
link。例如,当 autofs
挂载处于活动状态时,使用 PrivateTmp
选项的 systemd 服务被重启。
在这个版本中,内核中添加了命名空间识别的挂载检查。现在,在将包括
autofs
挂载的挂载命名空间克隆到 propagation 私有命名空间的挂载命名空间时,autofs 现在更具弹性。
详情请查看 KBase 文章 https://access.redhat.com/articles/3104671。(BZ#1320588)