Show Table of Contents
缓存
协商验证(Negotiate authentication)使用
AMD64 和 Intel 64 系统的
可防止 NetworkManager 覆盖
logrotate 程序中的新
不再将
基于算法的 SEED 和 IDEA 仅限于
现在,默认在
新的
支持
使用
VFIO 设备的
Initial Setup 工具的 Subscription Manager 附加组件中的
使用
为了尽快向用户提供最新的信息,本文档可能会包括由机器自动从英文原文翻译的内容。如需更多信息,请参阅此说明。
7.2 发行注记
前言
Red Hat Enterprise Linux 次要发行版本是个别改进、安全性和程序错误修复勘误集合。《Red Hat Enterprise Linux 7.2 发行注记》记录了 Red Hat Enterprise Linux 7 操作系统以及这个次要发行版本所附带应用程序引进的主要更改、已知问题以及当前所有可用的技术预览的完整列表。
Red Hat Enterprise Linux 7 与该系统的其他版本之间的的功能及限制对比,请查看 Red Hat 知识库文章 https://access.redhat.com/articles/rhel-limits。
有关 Red Hat Enterprise Linux 生命周期的信息,请参考 https://access.redhat.com/support/policy/updates/errata/。
第 1 章 构架
Red Hat Enterprise Linux 7.2 在以下架构中作为单一套件使用。[1]
[1]
注:只有 64 位硬件支持 Red Hat Enterprise Linux 7.2 安装。Red Hat Enterprise Linux 7.2 能够将 32 位操作系统作为虚拟机运行,其中包括之前的 Red Hat Enterprise Linux 版本。
[2]
Red Hat Enterprise Linux 7.2 (big endian) 目前在 Red Hat Enterprise Virtualization for Power 及 PowerVM 中作为 KVM 虚拟机支持。
[3]
Red Hat Enterprise Linux 7.2 (little endian) 目前在 Red Hat Enterprise Virtualization for Power、PowerVM 及 PowerNV(裸机)中作为 KVM 虚拟机支持。
[4]
注:Red Hat Enterprise Linux 7.2 支持 IBM zEnterprise 196 硬件或者更新的产品;不再支持 IBM System z10 大型机系统,同时将不会引导 Red Hat Enterprise Linux 7.2。
部分 I. 新的功能
这部分描述了 Red Hat Enterprise Linux 7.2 中引入的新功能和主要的改进。
第 2 章 常规更新
跨频道软件包相依性改进
已将 yum 增强为在出现相依性错误时,提示终端用户搜索系统中禁用的软件包存储库。这样用户就可以通过首先在所有已知频道中检查缺少的软件包相依性而迅速解决相依性错误。
要启用此功能,请在将机器升级至 Red Hat Enterprise Linux 7.2 前执行
yum update yum subscription-manager
。
有关实施此功能的详情请查看《系统和订阅管理》一章。
现在可在需要时正确应用 RELRO 保护
之前,由系统载入程序启动的二进制文件在有些情况下,即使在构建应用程序时已明确要求,也会缺少重定位只读(RELRO)保护。这是由静态链接器和系统载入程序之间的错误传达造成。已将该链接器的底层源代码调整为可保证该载入程序可应用 RELRO 保护,以便恢复该应用程序的安全功能。应用程序及所有依赖这些程序的对象文件、归档、以及使用 binutils 的 alpha 或 beta 版本构建的库应重新构建,以便修改这个缺陷。这个更新修正了 AMD64、Intel 64、64-bit PowerPC 和 64-bit ARM 架构中的这个问题。
sosreport 具有更多的诊断信息和重命名的插件
已增强 sosreport 工具,以便从各种应用程序收集与进程相关的信息,包括 ptp、lastlog 和 ethtool。
startup
插件已重命名为 services
以更好地行使其功能。
启用 virtio 网络设备重命名
这个更新添加了用于 virtio 驱动程序的持久命名方案,以便启用 virtio 网络设备重命名。要在 Red Hat Enterprise Linux 7.2 中启用这个功能,请在引导时在内核参数中添加
net.ifnames=1
。
在指定硬件中支持 DIF/DIX (T10 PI)
Red Hat Enterprise Linux 7.2 全面支持 SCSI T10 DIF/DIX,提供认证它的硬件供应商,并为特定 HBA 和存储阵列配置提供全面支持。其他配置不支持 DIF/DIX,既不支持在引导设备中使用,也不支持在虚拟机中使用。
目前以下销售商提供此支持。
FUJITSU 在以下硬件中支持 DIF 和 DIX:
- EMULEX 16G FC HBA:
- EMULEX LPe16000/LPe16002, 10.2.254.0 BIOS, 10.4.255.23 FW,使用:
- FUJITSU ETERNUS DX100 S3, DX200 S3, DX500 S3, DX600 S3, DX8100 S3, DX8700 S3, DX8900 S3, DX200F, DX60 S3
- QLOGIC 16G FC HBA:
- QLOGIC QLE2670/QLE2672, 3.28 BIOS, 8.00.00 FW,使用:
- FUJITSU ETERNUS DX100 S3, DX200 S3, DX500 S3, DX600 S3, DX8100 S3, DX8700 S3, DX8900 S3, DX200F, DX60 S3
注:T10 DIX 要求提供磁盘块的校验和生成和验证的数据库或其它软件。目前支持的 Linux 文件系统均无此功能。
EMC 在以下架构中支持 DIF:
- EMULEX 8G FC HBA:
- 使用固件 2.01a10 或之后版本的 LPe12000-E 和 LPe12002-E:
- 使用 Enginuity 5977 的 EMC VMAX3 系列;使用 Enginuity 5876.82.57 及之后版本的 EMC Symmetrix VMAX 系列
- EMULEX 16G FC HBA:
- 使用 10.0.803.25 固件或之后版本的 LPe16000B-E 和 LPe16002B-E:
- 使用 Enginuity 5977 的 EMC VMAX3 系列;使用 Enginuity 5876.82.57 及之后版本的 EMC Symmetrix VMAX 系列
- QLOGIC 16G FC HBA:
- QLE2670-E-SP 和 QLE2672-E-SP,使用:
- 使用 Enginuity 5977 的 EMC VMAX3 系列;使用 Enginuity 5876.82.57 及之后版本的 EMC Symmetrix VMAX 系列
最新状态请参看硬件销售商的支持信息。
对其他 HBA 和存储阵列的 DIF/DIX 支持仍为技术预览。
第 3 章 身份验证和互操作性
身份管理(Identity Management)默认设置单向信任(One-way Trust)。
现在可使用
ipa trust-add
命令默认配置单向信任。单向信任可让 Active Directory(AD)中的用户和组访问身份管理(IdM)指定资源,反之则不可行。之前,ipa trust-add
命令配置的默认信任为双向信任。
IdM 仍可允许管理员通过在
ipa trust-add
命令中添加 --two-way=true
选项设置双向信任。
openldap
恢复至版本 2.4.40
已将 openldap 软件包升级为上游版本 2.4.40,相比之前的版本,它提供了大量的程序错误修复和一处改进。值得注意的是在
ppolicy
属性类型描述中添加了 ORDERING 映射规则。修复的程序错误包括:处理 SRV 记录时,服务器不再异常终止;添加了缺失的 objectClass
信息,以便用户可以通过标准方法修改前端配置。
在 SSSD 中的缓存身份验证
即使处于在线模式,现在也可在 SSSD 中无需重新连接即可对缓存进行验证。反复对网络服务器进行验证可导致应用程序延时间过长,从而使登录过程消耗大量时间。
SSSD 为独立客户端启用了 UID 和 GID 映射
现在可以使用 SSSD,通过客户端配置将用户与具体 Red Hat Enterprise Linux 客户端中的不同 UID 和 GID 映射。这种客户端覆盖能够解决由 UID 和 GID 重复引起的问题,或者简化从原来使用不同 ID 映射的旧系统的转换。
注:覆盖内容保存在 SSSD 缓存中;因此删除该缓存也会删除这些覆盖内容。
SSSD 现在可以拒绝已锁帐号的 SSH 访问
之前当 SSSD 将 OpenLDAP 用作其验证数据库时,即使用户帐号已被锁住,用户也可以使用 SSH 密钥成功验证进入系统。
ldap_access_order
参数现在接受 ppolicy
值,这可以拒绝某些情况下用户的 SSH 访问。关于 ppolicy
的更多信息,请参考 sssd-ldap(5) 手册页中的 ldap_access_order
描述。
sudo 工具现在可检验命令的校验和
sudo 工具的配置现在会存储允许的命令或脚本的校验和。当命令和脚本再次运行时,其校验和将和存储的校验和进行比较以检查是否有变化。如果命令或二进制文件有改动,sudo 工具将拒绝运行该命令或记录警告信息。在事故发生时,可使用这个功能正确地移交责任并解决问题。
SSSD 智能卡支持
SSSD 的本地验证现在支持智能卡。用户可以使用智能卡通过基于文本的或图形化控制台来登录系统或本地服务,如 sudo 服务。用户将智能卡插入读卡器并在登录提示下提供用户名和智能卡 PIN。如果智能卡上的证书通过检验,用户就可以成功地验证。
请注意,SSSD 目前还不支持用户通过智能卡获取 Kerberos 票据。要获取 Kerberos 票据,请使用 kinit 工具进行验证。
多证书配置文件及用户证书支持
现在,身份管理(Identity Management)在发布服务器及其他证书时在支持用多个配置,而不是单一服务器证书配置。该配置保存在目录服务器(Directory Server)中,且可在 IdM 副本间共享。
另外,现在管理员可以为独立用户发布证书。之前只能为主机及服务发布证书。
密码库
这个新功能允许对私有用户信息(如添加至身份管理中的密码和密钥)的安全集中存储。密码库(Password Vault)构建在公钥基础设施(PKI)密钥恢复授权(KRA)子系统之上。
身份管理(Identity Management)中的 Kerberos HTTPS 代理
身份管理现在有了可与 Microsoft Kerberos KDC 独立服务器协议(MS-KKDCP)实现互用的密钥分发中心(Key Distribution Center,KDC)代理功能,它允许客户通过 HTTPS 访问 KDC 和
kpasswd
服务。系统管理员现在可以使用简单的 HTTPS 反向代理在网络边缘开放这个代理,而不需要设置和管理专门的应用程序。
缓存条目的后台刷新
SSSD 现在允许在后台更新缓存的条目。在这次更新前,缓存条目的有效性过期后,SSSD 从远程服务器获取这些条目并重新存入数据库,这会很耗时。这次更新后,因为后台一直保持这些条目的最新状态,所以可随时将其立即返回。请注意,这会导致服务器的更高负载,因为 SSSD 会定期地而不是在有请求时才下载这些条目。
缓存 initgroups
操作
SSSD 的快速内存缓存现在支持
initgroups
操作,加快了 initgroups 的处理速度,并提高了某些应用程序的性能,如 GlusterFS 和 slapi-nis
。
协商验证(Negotiate authentication)使用 mod_auth_gssapi
模块 (使用 mod_auth_gssapi
模块的协商验证(Negotiate authentication))
身份管理现在使用
mod_auth_gssapi
(模块),它用 GSSAPI 调用替代 mod_auth_kerb
模块之前使用的直接 Kerberos 调用。
用户生命周期管理能力
用户生命周期管理让管理员可以更大程度上地控制用户帐号的激活和取消激活。管理员现在可以通过将用户添加至临时区域来准备新用户帐号,而无需完全激活它们;激活不活跃的用户帐号使其成为活跃的帐号;或在无需从数据库中完全删除它们的情况下,取消激活用户帐号。
用户生命周期管理能力为大型 IdM 部署带来了显著的益处。请注意,通过直接 LDAP 操作,用户可以从标准的 LDAP 客户端直接添加至临时区域。以前,IdM 只支持通过 IdM 命令行工具或 Web 用户界面来管理用户。
certmonger
中对 SCEP 的支持
certmonger
服务现在已更新,它支持简单证书注册协议(Simple Certificate Enrollment Protocol,SCEP)。现在可以通过 SCEP 发行新的证书并更新或替换现有的证书。
现在完全支持用于 IdM 的 Apache 模块了
现在为以下用于身份管理(Identity Management,IdM)的 Apache 模块提供全面支持,之前是作为技术预览添加到 Red Hat Enterprise Linux 7.1:
mod_authnz_pam
、mod_lookup_identity
和 mod_intercept_form_submit
。外部应用程序可以使用 Apache 模块来实现与 IdM 更紧密的互动,而不是单纯提供验证。
NSS 提高了可接受密钥长度最小值
Red Hat Enterprise Linux 7.2 中的网络安全服务(Network Security Services,NSS)库不再接受小于 768 位的 Diffie-Hellman (DH) 密钥交换参数,以及密钥长度小于 1023 位的 RSA 或 DSA 证书。增大可接受密钥的最小长度值可防止利用已知安全漏洞的攻击,例如 Logjam (CVE-2015-4000) 和 FREAK (CVE-2015-0204)。
请注意,用小于最新长度限制的密钥链接服务器会失败,在之前的 Red Hat Enterprise Linux 版本中这样做是可行的。
NSS 默认启用 TLS 版本 1.1 和 1.2
使用 NSS 默认启用协议版本的应用程序现在还支持 TLS 版本 1.1 和 TLS 版本 1.2 协议。
现在支持 ECDSA 证书
使用默认 NSS 加密列表的应用程序现在支持与使用椭圆曲线数字签名算法(ECDSA)的服务器的连接。
OpenLDAP 自动选择 NSS 默认加密套件
OpenLDAP 客户端现在自动选择网络安全服务(NSS)默认加密套件与服务器进行通讯。不再需要在 OpenLDAP 源代码中手动维护默认加密套件。
现在支持将 IdM 服务器配置为可信代理
Identity Management(IdM)可区分两种 IdM 主服务器类型:即可信控制器和可信代理。可信控制器运行建立和维护信任所需的所有服务;而可信代理只运行在可信 Active Directory 丛中为使用这些 IdM 服务器注册的 IdM 客户端提供用户和组提供解决方案所需的服务。
默认情况下,可运行
ipa-adtrust-install
命令将 IdM 服务器设置为可信服务器。要将另一个 IdM 配置为可信代理,请在 ipa-adtrust-install
命令中添加 --add-agents
选项。
现在支持自动从 WinSync 迁移到信任
使用新的
ipa-winsync-migrate
程序可无间隙地将使用 WinSync 基于同步的整合迁移至基于 Active Directory(AD)信任的整合。该程序可将所有使用 WinSync 同步的用户从指定 AD 林中迁移。之前,只能和使用 ID 视图手动执行从同步到信任之间的迁移。
有关
ipa-winsync-migrate
的详情,请查看 ipa-winsync-migrate(1) man page。
一次性及长期使用密码的多步骤提示
将一次性密码(令牌)与用于登录的长期密码一同使用时,会为该用户分别提示两个密码。这样可在使用一次性密码及提取更安全的长期密码时有更好的客户体验,后者可缓存用于离线认证的长期密码。
OpenLDAP 的 LPK 方案现在可以使用 LDIF 格式
LDIF 是一种用于 OpenLDAP 导入方案的新默认格式,同时 openssh-ldap 软件包现在还在 LDIF 格式中提供 LDAP 公钥(LPK)方案。因此,管理员可在设置基于 LDAP 的公钥认证时直接导入 LDIF 方案。
Cyrus 可在此认证 AD 和 IdM
cyrus-sasl 软件包的上游发行本引进了非向后兼容更改,以防止 Cyrus 根据旧的 SASL 实施进行认证。因此,Red Hat Enterprise Linux 7 无法为 Active Directory(AD)及 Red Hat Enterprise Linux 6 Identity Management(IdM)服务器提供认证。目前已恢复这项上游更改,Cyrus 现在可以如预期认证 AD 和 IdM 服务器。
SSSD 支持覆盖自动找到的 AD 网站
默认会自动找到客户端连接的 Active Directory(AD)DNS 站点。但默认的自动搜索可能不会找到最适合某些设置的 AD 站点。如果是这种情况,现在可以使用
/etc/sssd/sssd.conf
文件 [domain/NAME]
部分的 ad_site
参数手动定义 DNS 站点。
已添加 SAML ECP 支持
lasso 软件包已恢复至版本 2.5.0,同时将 mod_auth_mellon 软件包恢复至版本 0.11.0,以便添加安全声明标记语言(SAML)增强客户端或代理服务器(ECP)支持。SAML ECP 是 SAML 配置文件的替代版本,允许不使用浏览器进行单点登录(SSO)。
winbindd 服务不会在其默认配置中列出组成员关系
Samba 版本 4.2.0 以及之后版本中的
winbindd
服务不再因显示的目的列出组成员关系。在某些情况下,比如在使用可信域的环境中,它不会总是提供此信息。要防止出现提供错误信息的风险,已将默认 winbindd
配置改为 winbind expand groups = 0
,这样可禁用之前的行为。注:有些之前会依赖此功能的命令行为可能会有变化,比如 getent group
。
第 4 章 集群
现在可在系统关机时正确协调 systemd 和 pacemaker
之前在系统关闭时无法正确协调 systemd 和 pacemaker ,这样会导致 pacemaker 资源无法正常终止。在这次更新后,pacemaker 会按顺序在 dbus 和其他 pacemaker 启动的 systemd 服务之前停止。这样就可以正确关闭 pacemaker 及其管理的资源。
pcs resource move
和 pcs resource ban
命令现在显示警告信息以阐明命令的行为
pcs resource move
和 pcs resource ban
命令创建位置约束,在该约束被删除或过期前,可以有效地禁止在当前节点中运行该资源。之前没有向用户说明这种行为。这些命令现在会显示解释这种行为的警告信息、帮助页面及相关的文档。
将 Pacemaker 资源移至其首选节点的新命令
在 Pacemaker 移动后,如果发生失效切换或管理员手动移动节点,即使导致失效切换的环境已被纠正,也不一定可将其移回最初的节点。您现在可以使用
pcs resource relocate run
命令将资源移至由当前群集状态、约束、资源位置和其他设置确定的首选节点。也可以使用 pcs resource relocate show
命令显示迁移的资源。关于这些命令的详情,请参阅《高可用性附加组件参考》。
为集群中的冗余供电配置 fencing 的简化方法
为冗余供电配置 fencing 时,必须确定电源重启时,重新打开两个电源之一前,这两个电源都处于关闭状态。如果该节点从未彻底断电,则该节点不会释放其资源。这样几个节点可能会同时访问这些资源,并破坏它们。
在 Red Hat Enterprise Linux 7.2 以前的版本中,需要使用“on”或者“off”动作明确配置设备的不同版本。从 Red Hat Enterprise Linux 7.2 开始,只需要为一台设备定义一次,并指定二者均要求 fence 该节点。
有关为冗余供电配置 fencing 的详情,请查看《高可用性附加组件参考手册》中
《Fencing:配置 STONITH》
一章。
为 fencing 代理新添加的 --port-as-ip 选项
Fence 代理仅与需要 pacemaker 中复杂配置的单一设备一同使用。现在可使用
--port-as-ip
选项在 port
选项中输入 IP 地址。
第 5 章 编译程序及工具
tail --follow 现在可以用于 Veritas 群集文件系统上的文件
Veritas 群集文件系统(Veritas Clustered file system,VXFS)是一个远程文件系统。对于远程文件系统,
tail
命令在 --follow
模式下不能使用 inotify
功能。现已将 VXFS 添加至远程文件系统列表中,但它使用轮询模式而不是 inotify
。现在,即使用于 VXFS 中的文件,tail --follow
也可以正常工作。
dd 命令现在可以显示传输进度
dd
是用来根据字节复制文件的命令,现在提供 --follow
选项来显示传输进度。对于传输大型文件尤为有用,因为这允许用户估计剩下的时间和检测可能存在的问题。
改进了 libcurl 等待时间
对于没有活跃文件描述符的动作,即使是短操作,
libcurl
库都使用不必要的长时间阻塞延迟。这意味着某些动作,如用 /etc/hosts
解析主机名会人为地耗费过长的时间。我们已修改了 libcurl
处理阻塞的代码,现在的初始延迟很短,它会逐步增加,直至事件发生。现在可更迅速地完成快速 libcurl
操作。
libcurl 库现在实现了非阻塞的 SSL 握手
libcurl
库以前没有实现非阻塞的 SSL 握手,这会对基于 libcurl
多 API 应用程序的性能有负面影响。为了解决这个问题,我们在 libcurl
中实现了非阻塞的 SSL 握手,每当 libcurl
多 API 无法向底层网络套接字读/写数据时,它都可以立即将控制权交还给应用程序。
GDB 或 IBM Power 系统访问符号表时不再失败
GDB 或 64 位的 IBM Power 系统以前会错误地释放一个为正在调试的二进制文件保存符号表的重要变量,这会导致在 GDB 试图访问该符号表时出现分段错误。为了解决这个问题,我们持久化了这个专有变量,让 GDB 可以在调试会话期间访问所需信息,而不会读无效的内存区域。
将 nscd 更新为自动重新载入配置数据
命名服务器缓存守护进程(Name Server Caching Daemon,nscd)的这次更新为 nscd 配置文件添加了一个基于 inotify 和 stat-based 备份的监控系统,nscd 现在可以正确地检测其配置的改动,并重新加载数据。这样可防止 nscd 返回失效的数据。
dlopen 库函数在递归调用时不会再崩溃
之前库函数
dlopen
的缺陷可能导致对它的递归调用崩溃或出现库断言后中止。如果用户提供的 malloc
实现调用了 dlopen
,递归调用是有可能出现的。
这个实施目前可重入,递归调用不会再崩溃或出现断言后中止。
operf 工具现在可以识别静态巨型页面标识符
之前,在分析启用了静态巨型页面且用 Java just-in-time (JIT) 编译的代码的性能时,OProfile 的 operf 命令会将大量的事件样本记录到匿名内存(在 anon_hugepage 中)而不是正确的 Java 方法。这次更新后,在使用静态分配的巨型页面时,operf 可以识别静态的巨型页面标识符,并正确地将样本映射至 Java 方法。
rsync -X
现在可正常工作
以前,
rsync
工具在设置安全属性后,而不是之前修改文件所有权。因此,目标文件的安全属性会丢失,在某些情况下无法正确运行 rsync -X
命令。这次更新修改了操作顺序,rsync
现在在设置安全属性之前修改文件所有权,所以在上述情况下安全属性会如预期地存在。
Subversion 的执行文件用完整的 RELRO 数据构建
subversion 软件包附带的执行文件现在使用完全只读的重定位数据(RELRO)进行构建,它提供了对某些类型的内存损坏攻击的保护。因此,如果将来发现了安全漏洞,攻击 Subversion 会变得更困难。
现在可在 TCL 中正常使用线程扩展
以前,工具命令语言(Tool Command Language,TCL)中的线程支持实现得不理想。如果 fork() 调用与 TCL 拦截器中启用的线程扩展一起使用,进程可能变成无应答。由此,之前附带的 TCL 拦截器和 TK 应用程序禁用线程扩展。结果是依赖启用线程扩展的 TCL 或 TK 的第三方应用程序就无法正常运行。我们应用了一个补丁修复这个程序错误,现在 TCL 和 TK 默认启用线程扩展。
可为 TLS 明确启用或禁用 AES 加密套件
使用更新的 curl 软件包,可为 TLS 协议明确启用或禁用所使用的新高级加密标准(AES)加密套件。
OpenJDK 7 现在支持 ECC
在这个更新中,OpenJDK 7 支持椭圆曲线加密(ECC)及用于 TLS 连接的相关加密法。相比老的加密解决方案,大多数情况下均倾向使用 ECC 以保证网络连接安全。
ABRT 现在支持保存 core_backtrace 文件而不是整个 coredump
现在将 ABRT 配置为在不将 coredump 文件写入磁盘的情况下生成回溯。这样可在使用分配了超大内存块的进程时节省时间。可在
/etc/abrt/plugins/CCpp.conf
文件中将 CreateCoreBacktrace
选项设定为 yes
,并将 SaveFullCore
选项设定为 no
启用该功能。
在 Python 标准库中添加的安全功能
在 466 Python 增强提案(http://legacy.python.org/dev/peps/pep-0466/)中所述的大量安全增强已移植到 Python 标准库中。这些安全增强包括
ssl
模块中的新概念,比如支持服务器名称指示(SNI),以及对新的 TLSv1.x 协议的支持,对 hashlib module
中的新哈希算法的支持等等。
Python 标准库中用来进行 SSL/TLS 证书验证的新全局设置
添加了新的选项以便用户在 Python 标准库的 HTTP 客户端(比如 urllib、httplib 或者 xmlpclib)中全局启用或禁用 SSL/TLS 证书验证。有关该选项的详情,请查看 493 Python 增强提案(https://www.python.org/dev/peps/pep-0493/)。默认值是不验证证书。详情请查看 https://access.redhat.com/articles/2039753。
第 6 章 桌面
GNOME 恢复为版本 3.14
已将
GNOME Desktop
升级至上游版本 3.14(在 3.16 的的基础上有少量增加),其中包括新功能和大量增强。值得关注的有:
Red Hat Enterprise Linux 7.2 添加了
GNOME Software
,这是使用 yum 后端,在用户系统中安装和管理软件的新方法。GNOME PackageKit 仍然是 GNOME 的默认更新程序(也默认安装此软件)。用户可使用 GNOME Software
一并管理与软件有关的任务,比如流量、安装和删除应用程序,以及查看和安装软件更新。
在顶栏中,新命名的
系统状态菜单
将所有可单独访问的指示器及小程序,即亮度调节、改进的飞行模式、连接到 Wi-Fi 网络、蓝牙、音量等等,合并为一个连贯和简洁的菜单。就 Wi-Fi 而言,GNOME 3.14 为 Wi-Fi 热点提供改进的支持。当连接到需要验证的 Wi-Fi 门户后,GNOME 现在可自动显示登录页面,这是连接过程的一部分。
已更改了锁屏的默认密钥组合。之前的默认快捷键
Ctrl+Alt+L
已改为 Super key+L
组合键。
新的
gedit
文本编辑器设计将之前的功能全部集成到一个更简洁的页面中,以便给出更多工作空间。相比之前使用对话和菜单的方法,使用弹出框(popover)选择文档格式和标签宽度更有效。整合的边栏控制不仅保留原始功能,还给出更多使用空间。其他的重要改进包括使用 Ctrl+Shift+T
新快捷键打开最后关闭的标签,以及更改问题单的功能。
GNOME 文件管理器
Nautilus
现在使用 Shift+Ctrl+Z
组合键而不是 Ctrl+Y
组合键完成重做(redo)
操作。另外,现在使用标题栏而不是工具栏。
GNOME 3.14 包括重新构思的
Videos
应用程序。新版本式样新颖,允许用户浏览计算机以及在线视频频道中的视频。Videos
还包括重新设计的回放查看。这样可为用户提供比之前的版本更流畅的体验:用户不需要时会隐藏浮动回放控制,同时全屏回放查看也更精致。
Evince
包括改进的 PDF 文档存取功能。该文档查看器的新版本使用标头栏为文档提供更多空间。如果启动时没有指定任何文件,Evince
还会显示最近打开文档的概述。最新的 Evince
版本还包括 高解析度显示支持
和增强的辅助功能。
GNOME
Weather
应用程序的新版本使用 GNOME 的新地理位置框架自动显示您所在位置的天气情况,并使用新的布局提供阅读天气预报的有效方法。
这个发行本还改进了
LibreOffice
的注释功能 - 即在 ODF、DOC、DOCX 和 RTF 过滤器中导入和导出嵌套的注释,在边距显示注释,以及格式化所有注释。
用于虚拟和远程机器的 GNOME 应用程序
Boxes
引进了快照。Boxes
现在看提供自动下载,在不同视窗中运行多个 box,以及用户界面改进,比如改进的全屏行为和缩略图。
已重新设计 GNOME
Help
文档浏览器,使其与其他 GNOME 3 应用程序一致。Help 现在使用标题栏,具有集成的搜索功能以及书签界面。
GTK+
3.14 包含了大量的程序错误修复和增强,如从资源中自动加载菜单、GtkListBox
的多选支持、GtkBuilder
文件中的属性绑定、支持在 widget 的分配区(gtk_widget_set_clip())外画图、GtkStack 中的新转换类型、用 GtkSourceView
进行文件加载和保存。此外,GTK+
现在提供了对手势交互支持。在版本 3.14 中,GTK+ 应用程序中可使用大部分常用多点触控手势,如点一下(tap)、拖动(drag)、滑动(swipe)、二指往內或往外拨动(pinch)、旋转(rotate)。可以通过 GtkGesture
在现有的 GTK+ 应用程序中添加手势。
GNOME 的 Shell Extension,
Looking Glass Inspector
为开发人员提供了大量功能:检查时显示命名空间中的所有方法、类别、对象检查程序历史记录展开、复制 Looking Glass
结果为字符串、将事件传入 gnome-shell。
高解析度显示支持
功能已扩展为包括所有核心 GNOME 3 体验的所有关键方面,其中包括活动概述,活动概述动画及新视窗动画,顶栏,锁屏及系统对话。
就 GNOME 扩展而言,这个发行本引进了备用连接定位,其中包括
Simple Dock
在该页面底部为 Gnome Shell 提供的连接。
ibus-gtk2 软件包现在更新了 immodules.cache 文件
以前
update-gtk-immodules
脚本会搜索不再存在的 /etc/gtk-2.0/$host
目录。由此,ibus-gtk2 的 post-installation 脚本会运行失败,无法创建或更新缓存就退出了。我们修改了 post-installation 脚本,用 gtk-query-immodules-2.0-BITS
替代了 update-gtk-immodules
,现在已经解决这个问题。
第 7 章 文件系统
gfs2-utils 恢复至版本 3.1.8
gfs2-utils 软件包已恢复至版本 3.1.8,它提供了重要的程序错误修复和大量的改进。
*
fsck.gfs2
、mkfs.gfs2
和 gfs2_edit
工具的性能得到了改善。
*
fsck.gfs2
工具对日志、、jindex、system inodes 和 inode 的 'goal' 值执行了更好的检查。
*
gfs2_jadd
和 gfs2_grow
工具现在是独立的程序而不是 mkfs.gfs2
的符号链接。
* 改进了测试套件和相关的文档。
* 软件包不再依赖于 Perl。
GFS2 现在可以防止用户超出其配额
GFS2 以前只在完成操作后检查配额,这可能导致用户或组超出其分配的配额。我们已修复了这个问题,GFS2 现在可以预测某个操作将分配的块数并检查实际的分配是否突破了这个配额。不会允许可导致配额突破的操作将,这样用户也就不会再超过为其分配的配额。
XFS 恢复至版本 4.1
XFS 已升级至上游版本 4.1,其中包括次要程序错误修复、某些内部机制的重构和重写,如日志、pcpu accounting 及新的 mmap 锁。除了这些上游修改之外,这次更新还扩展了 rename() 函数以添加 cross-rename (rename() 的一个对称变体) 和 whiteout 处理。
cifs 恢复至版本 3.17
CIFS 模块升级至上游版本 3.17,它提供了各种次要修复以及 Server Message Block 2 和 3 (SMB2 和 SMB3) 的新功能。
Red Hat Enterprise Linux 7.2 中 NFS 的变更:
Fallocate 支持允许在服务器中预分配文件。fseek() 功能的 SEEK_HOLE 和 SEEK_DATA 扩展可以快速有效地查找漏洞或数据。Red Hat Enterprise Linux 7.2 还添加了《技术预览》部分所述对 NFSv4 客户端灵活文件布局的支持。
第 8 章 硬件启用
在 qethqoat 中支持 OSA-Express5s 卡
在 Red Hat Enterprise Linux 7.1 中将 OSA-Express5s 卡添加到 qethqoat 工具中作为技术预览,该工具是 s390utils 软件包的一部分。这个增强更新为扩展的网络服务性及 OSA-Express5s 卡的网卡设置提供全面支持。
第 9 章 安装及引导
修复了 Kickstart 中提供网络配置时 initrd 的网络设置问题
如果
initrd
中的网络接口是在 Kickstart 文件中定义的,安装程序以前无法设置或重新配置这些接口。如果 Kickstart 文件中的其他命令要求访问网络,则可能导致安装失败或进入紧急模式。
已解决这个问题,Anaconda 在引导过程的早期可以正确处理
initrd
中的 Kickstart 文件定义的网络配置。
Anaconda 现在支持创建缓存的逻辑卷
安装程序现在支持创建缓存的 LVM 逻辑卷并将系统安装到这些卷上。
目前还只有 Kickstart 支持这个方法。要创建缓存逻辑卷,请使用
logvol
Kickstart 命令的新选项:--cachepvs=
、--cachesize=
和 --cachemode=
。
关于这些选项的详情,请参考《Red Hat Enterprise Linux 7 安装指南》。
改进了 GRUB2 引导菜单的排序
grub2-mkconfig
命令采用的排序机制中的一个问题会导致要生成的 grub.cfg 配置文件中的可用内核以错误的顺序排列。
GRUB2 现在使用 rpmdevtools 软件包为可用内核排序,配置文件可以正确地生成,最新的内核版本将列在顶部。
当磁盘选择有变动时,Anaconda 现在可以正确地恢复磁盘动作。
以前当磁盘选择有变动时,Anaconda 和 Blivet 无法正确地恢复磁盘上已调度的动作,从而造成各种问题。在这个更新中修复了 Anaconda,使其可以创建原始存储配置的快照,并在磁盘选择变动时返回原始配置,因而能够完全恢复在磁盘中调度的所有动作。
改进了对 device-mapper 磁盘名称的检测
在以前的 Red Hat Enterprise Linux 7 版本中,当在之前包含 LVM 逻辑卷且这些逻辑卷包含元数据仍存在的磁盘中进行安装时,安装程序有可能崩溃。安装程序无法识别正确的
device-mapper
名称,创建新的逻辑卷将会失败。
此版本更新了用于获取
device-mapper
设备名的方法。现在,在包含现存 LVM 元数据的磁盘上进行安装更可靠。
修复分区过程中 PReP Boot 的处理
在某些情况下,当进行自定义分区时,IBM Power 系统中的
PReP Boot
分区可能被设置为无效的大小。此时,删除任何分配都可能导致按照程序崩溃。
Anaconda 现在会对这种情况进行检查,确保分区大小总保持在
4096 KiB
和 10 MiB
之间。此外,修改 PReP Boot
分区的大小不再需要修改其分区格式。
RAID1 设备中的 EFI 分区
现在可以在 RAID1 设备中创建 EFI 系统分区,这样就可以在出现引导磁盘故障时能够恢复。但因为只能保证在 EFI 系统分区中发现本系统,如果由该固件找到的 ESP 卷崩溃(但仍作为有效 ESP 出现),
Boot####
和 BootOrder
也会崩溃,然后就无法自动重建引导顺序。在这种情况下,该系统仍可以使用第二个磁盘手动引导。
进行网络配置时文本模式安装不再崩溃
以前,在交互式文本模式安装程序的“网络配置”页面中,指定命名服务器时使用空格会导致安装程序崩溃。
Anaconda 现在在文本模式下可以正确处理命名服务器中的空格,使用空格来隔开命名服务器地址时安装程序不会崩溃。
IBM System z 的救援模式页面不会被截断
以前 IBM System z 服务器救援模式中的第二和第三屏显示不正常,部分界面被截断。此版本改进了这个架构的救援模式,现在所有屏幕均可以正常显示。
Anaconda 中的 OpenSCAP 附加组件
现在可在安装过程中应用安全内容自动化协议(Security Content Automation Protocol,SCAP)内容。这个新的附加组件为配置安全策略提供了可靠和方便的方式,无需再依赖自定义脚本。
这个附加组件提供了新的 Kickstart 部分("%addon org_fedora_oscap")以及交互式安装过程中图形界面中的新页面。《Red Hat Enterprise Linux 7 安装指南》对这些内容都进行了论述。
根据您启用的策略,在安装过程中应用安全策略会在安装过程或安装后立即执行各种修改。如果选择了某个配置集,openscap-scanner 软件包(符合 OpenSCAP 的扫描工具)将添加至您的软件包选择中,且在安装完成后将进行初始的合规性扫描。扫描结果将保存到
/root/openscap_data
。
安装媒介中的 scap-security-guide 软件包提供了几个配置集。如果有需要,您也可以从 HTTP、HTTPS 或 FTP 服务器上的数据流、归档或 PRM 软件包载入其他内容。
注:不需要在所有系统中应用安全策略。只有机构规则或政府法规强制某种策略时,才应该使用这个附加组件,否则就让附加组件处于默认状态,即不会应用任何安全策略。
在等待 CD 或 DVD 上的 Kickstart 文件时 Anaconda 不再超时
以前,如果用
inst.ks=cdrom:/ks.cfg
命令将 Anaconda 配置为使用光盘加载 Kickstart 文件,同时使用 CD 或 DVD 引导系统时,安装程序只为您提供 30 秒的等待时间让您更换磁盘。超时后系统将进入紧急模式。
在这个更新中,已将 Anaconda 修改为等待用户提供 CD 或 DVD 中的 Kickstart 文件时永不超时。如果使用
inst.ks=cdrom
引导选项,且没检测到 Kickstart 文件,Anaconda 将显示提示,等待您提供该文件或重启。
第 10 章 内核
AMD64 和 Intel 64 系统的 kdump
支持多个 CPU
在 AMD64 和 Intel 64 系统中,
kdump
内核崩溃转储机制现在可启用多个 CPU 时进行引导。这样就解决了在有些系统中创建内核崩溃转储时的高输入和输出问题,当使用 maxcpus=1
或者 nr_cpus=1
内核选项只启用一个 CPU 时,Linux 无法为设备分配中断。之前,这个功能是作为技术预览,现在可提供全面支持。
要启用崩溃内核中的多个 CPU,请在内核命令行中提供
nr_cpus=X
选项(其中 X 是处理器数目)。
支持 kpatch
kpatch 工具允许用户管理二进制内核补丁集合,可使用该工具动态为内核安装补丁而无需重启。kpatch 是作为技术预览支持的,且只适用于 AMD64 和 Intel 64 架构。
有关即时内核安装补丁支持的详情,请参考 https://access.redhat.com/solutions/2206511。
SHMMAX 和 SHMALL 内核参数恢复至默认值
之前,在
/usr/lib/sysctl.d/00-system.conf
中设置的 kernel.shmmax
和 kernel.shmall
参数值太低。因此某些应用程序,如 SAP,无法正常运行。在此版本中已删除了不合适的覆盖值,使用的内核默认值已足够高。
透明的巨型页面不再导致内存崩溃
以前在读和写操作期间没有正确地同步透明的巨型页面。在某些情况下,这会导致启用巨型页面时内存崩溃。我们现在在处理透明巨型页面时添加了内存屏障,所以不会再出现内存崩溃了。
SCSI LIO 复位
SCSI 内核目标 LIO 已恢复为 Linux-4.0.stable 版本。这包括许多程序错误修复(多数对 iSER 是至关重要的),也包括对 XCOPY、WRITE SAME 和 ATS 的支持,以及对 DIF 数据完整性的支持。
makedumpfile 现在支持代表最多 16TB 物理内存的新 sadump 格式
makedumpfile 命令现在支持代表 16TB 以上物理内存空间的 sadump 格式。这样 makedumpfile 用户就可以读取由 sadump 在某些即将发布的服务器型号中生成的超过 16TB 大小的转储文件。
删除或升级内核时不再显示警告
之前,
kmod
用来管理 kAB 兼容模块符号链接的 weak-modules 脚本,在删除和内核相关联的文件时会删除 /lib/modules/<version>/weak-updates
目录。这个目录是 kernel 软件包所有的,删除它会导致文件系统和 rpm
期望的状态不一致。所以在每次升级或删除内核时都会显示警告信息。
在这个版本中更新了这个脚本,即删除
weak-updates
目录中的内容,但会保留这个目录,所以不会再出现警告信息。
新的软件包:libevdev
Libevdev 是用于 Linux 内核输入事件设备接口的低层库。它为查询设备能力和处理设备事件提供了安全接口。目前的 xorg-x11-drv-evdev 和 xorg-x11-drv-synaptics 版本都依赖于这个库。
Tuned 现在可以在非守护进程模式中运行
Tuned 以前只能作为守护进程运行,因为占用内存,对于小型系统这可能造成性能问题。在这次更新中,Tuned 添加了不需要驻留内存的非守护进程(一次完成)模式。默认是禁用非守护进程模式,因为在这个模式下 Tuned 的大部分功能无法实现。
新软件包:tuned-profiles-realtime
在 Red Hat Enterprise Linux Server 和 Red Hat Enterprise Linux for Real Time 中添加了 tuned-profiles-realtime 软件包。它包含
tuned
程序用来执行 CPU 隔离和 IRQ 调优的一个实时配置文档。当激活这个配置文档时,它会读取其中一个变量部分,这些内容指定要隔离的 CPU,并移走所有可以从这些 CPU 内核移走的线程。
正确解析 SCSI 错误信息
之前对内核 printk() 函数的修改导致小型计算机系统接口(Small Computer System Interface,SCSI)的错误信息记录在多行上。因此,如果不同设备发生了多个错误,正确解析错误信息就变得很困难。这次更新修改了记录 SCSI 错误消息的代码,用 dev_printk() 选项来登记错误信息,将每条错误信息和产生错误的设备关联起来。
更新 libATA 子系统和驱动
本次更新提供了 libATA 子系统和驱动的大量程序错误修复和改进。
FCoE 和 DCB 已升级
Fibre Channel over Ethernet (FCoE) 和 Data Center Bridging (DCB) 内核组件已升级至最新的上游版本,相比之前的版本,它提供了大量的程序错误修复和改进。
perf
已恢复至版本 4.1
perf 软件包已升级至上游版本 4.1,相比之前的版本,它提供了大量的性能和稳定性修复和增强。值得注意的是,这个版本添加了 Intel Cache QoS Monitoring 和 AMD IBS Ops 功能,以及对 Intel Xeon v4、压缩的内核模块、参数化事件和指定断点长度的支持。此外,
perf
工具还添加了大量的选项,如:--system-wide
、top -z
、top -w
、trace --filter-pids
和 trace --event
。
对 TPM 2.0 的支持
这次更新添加了对兼容 2.0 版本的可信平台模块(Trusted Platform Module,TPM)设备的驱动级别的支持。
turbostat
现可提供正确输出结果
turbostat
以前通过读取 cpu0
而不是 cpu
的 /dev/cpu/0/msr 文件来检测系统是否支持 MSR 设备。因此,禁用某个 CPU 会导致在 turbostat 输出中删除这些 CPU。已修复了这个程序错误,运行 turbostat ls
命令现在可以返回正确的输出。
turbostat
现在支持 Intel Xeon v5 处理器
本次更新在
turbostat
工具中添加了对 Intel Xeon v5 处理器的支持。
zswap
工具开始使用 zpool
API
之前,
zswap
工具直接使用 zbud
,后者是一个保存压缩页面(满时比例为 2:1)的存储池。这个更新引进了 zpool
API,该工具可提供 zbud
或者 zsmalloc
池访问:zsmalloc
能够以较高的密度保存压缩页面,这样就能够为高度可压缩页面提供更多回收的内存。在这个更新中已将 zsmalloc
推广至 /mm 驱动程序,以便 zpool
可以如预期工作。
/proc/pid/cmdline 文件的长度现在是无限制的
ps
命令对 /proc/pid/cmdline 的长度限制以前在内核中硬编码为 4096 字节。这次更新确保了 /proc/pid/cmdline 的长度是无限制的,对列出具有较长命令行参数的进程来说,这特别有用。
现在提供了对 dma_rmb 和 dma_wmb 的支持
这次更新引入了用于同步缓存连续内存写和读的两个新的原始操作:dma_wmb() 和 dma_rmb()。这个功能将用于驱动程序。
qib HCA 驱动程序连接
由于 SRP LOGIN ID 不匹配,SRP 目标之前无法通过 qib HCA 设备驱动程序连接。这个更新修复了这个程序错误,现在可以成功建立上述连接。
增加内存限制
从 Red Hat Enterprise Linux 7.2 开始,AMD64 和 Intel 64 的最高支持内存已从 6TB 增加至 12TB。
dracut
的新变量
这个更新为
dracut
initramfs 生成器引入以下变量,以便在内核命令行中使用:
rd.net.dhcp.retry=cnt
– 如果设定这个选项,dracut
程序会在确定失败前尝试通过 DHCP cnt 连接的次数。默认为 1。rd.net.timeout.dhcp=arg
– 如果设定这个选项,则会调用附带-timeout arg
选项的dhclient
命令。rd.net.timeout.iflink=seconds
– 链接出现前要等待的秒数。默认为 60 秒。rd.net.timeout.ifup=seconds
– 链接出现UP
状态前要等待的秒数。默认为 20 秒。rd.net.timeout.route=seconds
– 显示路由前等待的秒数。默认为 20 秒。rd.net.timeout.ipv6dad=seconds
– IPv6 DAD 完成前要等待的秒数。默认为 50 秒。rd.net.timeout.ipv6auto=seconds
– 分配 IPv6 自动地址前要等待的秒数。默认为 40 秒。rd.net.timeout.carrier=seconds
– 识别运营商前要等待的秒数。默认为 5 秒。
第 11 章 网络
SNMP 现在可以通过 clientaddr 指令正确发送 IPv6 消息
以前,
snmp.conf
的 clientaddr
选项只影响通过 IPv4 发送的转出消息。在这个版本中,可以从 clientaddr
指定的接口正确发送转出的 IPv6 消息。
tcpdump
支持 -J、-j 和 time-stamp-precision 选项
因为
kernel
、glibc
和 libpcap
现在提供 API 来获取纳秒级的时间戳,已升级 tcpdump
以便利用这个功能。用户现在可以查询哪些时间戳源可用(-J)、设置专有的时间戳源(-j)以及用指定的精度(--time-stamp-precision)请求时间戳。
TCP/IP 恢复至版本 3.18
TCP/IP 栈已升级至上游版本 3.18,与之前的版本相比,本版本提供了大量程序错误修复和增强。值得注意的是,这次更新修复了 TCP Fast Open(TFO)扩展,现在 IPv6 时也可如预期工作。此外,本次更新还提供了对可选的 TCP Autocorking 的支持,并实现了 Data Center TCP(DCTCP)。
NetworkManager libreswan 恢复至版本 1.0.6
整合了大量来自上游的程序错误修复和增强,例如:
* 现在处理密码的能力更可靠
* 启动和停止连接操作更可靠
* 现在已可以在推送的路由中自动探测路由
* 添加互动密码请求支持
* 修复错误导入和导出功能广告。
NetworkManager 现在支持在绑定的接口中设置 MTU
'nmcli' 和 GUI 界面现在允许在绑定的接口中设置 MTU。
NetworkManager 现在会在应用这些选项前验证 IPv6 Router Advertisement MTU 选项
恶意或错误配置的代码会发送一个 IPv6 MTU,应用此选项会让网络通讯问题更严重,甚至根本无法通讯。NetworkManager 现在可更完善地处理这些问题,以保持 IPv6 连接性。
现在默认启用 IPv6 隐私扩展
为在激活该设备时决定并完成 IPv6 隐私设置,NetworkManager 现在可以默认检查 NetworkManager.conf 中的网络配置,必要时可回退到
/proc/sys/net/ipv6/conf/default/use_tempaddr
。
控制中心网络面板现在会显示设备容量
现在会在控制中心网络面板中显示支持的 WiFi 设备操作频率。
NetworkManager 现在可在多个接口指向同一网关时妥善解决路由冲突
NetworkManager 现在可追踪配置的路由,并可避免设定冲突的路由。当冲突的路由不再活跃时会将其删除。
修复由 multihomed 连接造成的网络中断
NetwrokManager 现在可以在激活 multihomed 中的第二个设备时避免网络中断。
可防止 NetworkManager 覆盖 ip route add
的新选项
在连接的 IP 配置中添加了新的 'never-default' 选项。这个选项可防止 NetworkManager 自己设置默认路由,而是要由管理员根据需要设置不同的默认路由。
修复在之前在某些硬件中探测到运营商故障后的原始 network.service 错误
如果在引导过程中设备没有载波,NetworkManager 会等待探测载波,而不是立即造成激活失败。
NetworkManager 现在支持 Wake on Lan 命令
现在 nmcli 程序允许在每个设备中设定
Wake on Lan
命令。
改进 VPN 连接的 firewalld 区支持
现在可在为基于设备的 VPN 连接配置防火墙区时,在 firewalld 中正确配置该区。
现在支持公平队列(Fair Queue)数据包调度程序
在 Red Hat Enterprise Linux 7.2 中添加了公平队列数据包调度程序,也称
fq
,并可使用 tc
(流量控制器)程序选择。
添加传输合并支持
已实施
xmit_more
扩展,改进 virtio-net 及其他驱动程序的传输性能,特别是禁用了 TSO(TCP 分段分载)。
改进网络帧接收性能
通过代码重构消除 NAPI 内存分配中的 IRQ 保存和恢复,减少了接收网络帧时的延迟。
显著改善路由查找性能
已使用上游代码更新 IPv4 FIB(转发信息库)代码以改进性能。
虚拟接口的网络名称空间支持
现在在虚拟接口中支持 netns id,允许跨网络名称空间的连接的网络接口进行可靠追踪。
Docker 和 LXC 容器现在可读取 net.ipv4.ip_local_port_range
已添加 net.ipv4.ip_local_port_range sysctl 的网络名称空间支持,改进需要访问此信息的软件支持的容器。
使用 'ip' 工具改进自动配置的 IPv6 路由报告
已修复
ip
工具无法从路由播发中获取 mtu 或 hoplimit 信息的问题。
现在可正确导出双协议栈套接字选项
只有在设置 IPV6_V6ONLY 时会排除 AF_INET6 套接字。在其他情况下,该套接字还可以使用 IPv4。现在可正确导出该信息,并可使用 iproute2 进行整合。
现在支持数据中心 TCP
这个发行本包括 DCTCP 实施,以改进数据中心环节中的网络性能。可在
sysctl
中设置 dctcp
参数,也可以使用 ip route
在每个路由上设置该参数。
根据各个路由进行拥塞控制
要在每个路由上启用不同的拥塞控制算法,请在
ip route
中添加 congctl
参数。
使用 GRO 时改进处理 TCP Cubic 和 Reno 的拥塞窗口
改进了决定带宽和拥塞窗口大小的方法,减少传送大量数据时的 ACK 数据包。
现在支持 TCP 节奏
已添加
SO_MAX_PACING_RATE
参数。这样会在考虑这个问题时更好地控制环境的吞吐率。
支持客户端和服务器 TFO
已添加 TCP 快速打开功能,可使用由 RFC 7413 分配的选项数。
缓解 TCP ACK 循环
已改进对重复 TCP ACK 的处理,可防止出现 buggy 问题,或可能的恶意中间盒。
使用 nf_conntrack_proto_sctp 的辅助端点的最基本支持
已在 SCTP 中添加基本多重连接支持。
重新设定 AF_UNIX 实施
已更新 AF_UNIX(有时也称 AF_LOCAL)代码,包含了多个修复及增强。特别是现在还支持 sendpage 和 splice(也称 zerocopy)。
内核隧道支持恢复至上游版本
已将内核隧道驱动程序更新至 kernel 4,为您提供大量修复和增强,特别是用于 VXLAN。
为 GRE 添加跨网络名称空间支持
现在在 x-netns 中支持 gre 和 ip6gre。
通过 VXLAN 运行虚拟机流量时可改进性能
更新传输流哈希代码,改进了将来自虚拟机的流量重新定向到隧道的功能。
改进了从 VXLAN 或 GRE 隧道接收帧的卸载
引进了大量改动,以便 GRO 支持和提高 VXLAN 和 NVGRE 隧道性能。
改进了开源 vSwitch 隧道性能
现在默认禁用
tx-nocache-copy
设备功能。之前的默认选项消耗大量负载,特别是通过 VXLAN 运行的 OVS 隧道。
改进的 IPsec 处理
已更新 IPsec,提供了大量修复及某些增强。特别值得关注的是这个发行本现在可提供匹配输出接口的功能。
所包含的 VTI6 支持包括 netns 功能
在内核栈添加了 IPv6 的虚拟隧道接口,其中包括 netns 功能。
增大了 nf_conntrack_buckets 的默认值
如果在装载模块的过程中没有指定,则默认存储区数量是通过将总内存除以 16384 来计算决定。该哈希表从未小于 32,上限为 16384 个存储区。但对于超过 4GB 内存的系统,这个上限是 65536 个存储区。
大型 SMP 机器中的 iptalbes 内存使用改进
之前,大型 iptables 规则集可能会使用大量不必要的内存,这是由在每个 CPU 中存储规则集造成的。已更改保存规则集的方法降低内存消耗。
更新网络绑定驱动程序
为提高可维护性更新了内核网络绑定驱动程序,以便其与上游资源一致。
绑定和 802.3ad 的内核 netlink 接口(LACP)
在内核中添加了用于在 LACP 设备中读取和设置捆绑参数的 netlink 接口。
VLAN 的 mactap 和 macvtap 性能改进
解决了一些设计片段问题所涉及的低输出问题:
* e1000 设备通过 mactap 与 virtio 设备通讯。
* 在虚拟机中使用 VLANs 时通过外部主机通讯。
* 在虚拟机和主机中均可通过 VLAN 与 KVM 主机通讯。
改进了 ethtool 网络查询
IBM System z 上 Red Hat Enterprise Linux 7.2 的技术预览提高了 ethtool 工具的网络查询能力,并从 Red Hat Enterprise Linux 7.2 开始提供全面支持。当使用与改进的查询兼容的硬件时,ethtool 工具提供了改进的监控选项,它可以更正确地显示网卡设置和值。
第 12 章 安全性
现在可以选择禁用 GSSAPI 密钥交换算法
由于有 Logjam 安全性漏洞,
gss-group1-sha1-*
密钥交换方法不再安全。虽然有可能禁用这个密钥交换方法作为正常密钥交换,但不可能禁止其作为 GSSAPI 密钥交换方法。使用这个更新,管理员可选择性禁用的这个算法或 GSSAPI 密钥交换使用其他算法。
为 Red Hat Gluster Storage 添加了 SELinux 策略
之前,Red Hat Gluster Storage(RHGS)组件缺少 SELinux 策略,且 Gluster 只能在将 SELinux 设定为 permissive 模式时正确使用。使用这个更新,为
glusterd
(glusterFS 管理服务)、glusterfsd
(NFS 服务器)、smbd
、nfsd
、rpcd
和 ctdbd
进程更新了SELinux 策略规则,以便为 Gluster 提供 SELinux 支持。
openscap 恢复至版本 1.2.5
已将 openscap 软件包升级至上游版本 1.2.5,该版本提供大量上一个版本的程序错误修复和增强。
值得关注的增强包括:
* 支持 OVAL 版本 5.11,该版本提供多种改进,比如 systemd 属性。
* 引进
xml.bz2
输入文件的本机支持。
* 引进
oscap-ssh
工具以访问远程系统。
* 引进
oscap-docker
工具以访问容器/映象。
scap-security-guide 恢复至版本 0.1.25。
将 scap-security-guide 工具升级至上游版本 0.1.25,该版本提供上一个版本的大量程序错误修复和增强。
值得关注的增强包括:
* Red Hat Enterprise Linux 7 服务器的新安全配置文件:一般系统的通用配置文件、PCI-DSS v3 控制基线草稿、标准系统安全配置文件及 Red Hat Enterprise Linux 7 Server 的草稿 STIG。
* Red Hat Enterprise Linux 6 和 7 中运行的 Firefox 和 Java 运行时环境(JRE)组件的新安全基准。
* 新
scap-security-guide-doc
子软件包,该软件包中包含 HTML 格式文档,文档中包含使用 XCCDF 基准生成的安全指南(Red Hat Enterprise Linux 6 和 7、Firefox 和 JRE 安全基准中附带的每个安全配置文件)。
第 13 章 服务器和服务
已验证 ErrorPolicy 指令
ErrorPolicy 配置指令以前在启动时并未生效,而是使用了计划之外的默认错误策略且没有警告。现在这个指令在启动时已生效,如果配置的值不正确还会重置为默认选项。或者使用计划中的策略,或者登记一条警告信息。
CUPS 现在默认会禁用 SSLv3 加密
以前在 CUPS 调度程序中无法禁用 SSLv3 加密,这使其容易受到 SSLv3 的攻击。为解决这个问题,我们扩展了
cupsd.conf
SSLOptions
关键字以包含两个新的选项:AllowRC4
和 AllowSSL3
,两者都启用了 cupsd
中的命名功能。/etc/cups/client.conf
文件也支持这些新的选项。现在默认会禁用 cupsd
的 RC4 和 SSL3。
cups
现在允许在打印机名称中使用下划线
cups
服务现在运行用户在本地打印机名称中包含下划线(_)。
从 tftp-server 软件包中删除了不需要的依赖关系
之前,在安装 tftp-server 软件包时都默认安装了一个额外的软件包。在这次更新后,这个多余的软件包依赖关系已被删除,安装 tftp-server 时不会再默认安装不需要的软件包。
删除已废弃的 /etc/sysconfig/conman 文件
在引入
systemd
管理器前,可在 /etc/sysconfig/conman
文件中配置各种服务限制。迁移到 systemd
后已不再使用/etc/sysconfig/conman
,因此将其删除。要设置限制和其他守护进程参数,如 LimitCPU=、LimitDATA= 或 LimitCORE=,请编辑 conman.service
文件。详情请参考 systemd.exec(5) 的手册页。此外,还在 systemd.service
文件中添加了一个新的 LimitNOFILE=10000 变量。默认注释出这个变量。注:修改 systemd
配置后,必须执行 systemctl daemon-reload
命令以便修改生效。
mod_nss 恢复至 1.0.11
将 mod_nss 软件包升级至上游版本 1.0.11,该版本提供大量针对上一个版本的程序错误修复和增强。值得注意的是现在
mod_nss
可启用 TLSv1.2,并完全删除 SSLv2。另外,添加了被认为是最安全的密码支持。
现在 vsftpd 守护进程支持 DHE 和 ECDHE 密码套件
现在
vsftpd
守护进程支持基于 Diffie–Hellman 交换(DHE)和椭圆 Diffie–Hellman 交换(ECDHE)密钥交换协议的密钥套件。
现在可为使用 sftp 上传的文件设置权限
不一致的用户环境和严格的
umask
设置可造成在使用 sftp
程序上传时无法访问文件。使用这个更新,管理员可以为使用 sftp
命令上传的文件强制设置具体权限,因此避免了上述问题。
现在可以调节使用 ssh-ldap-helper 的 LDAP 查询
不是所有的 LDAP 服务器都如预期由
ssh-ldap-helper
工具使用默认架构。这个更新可让管理员调节由 ssh-ldap-helper
使用的 LDAP 查询,以便从使用不同架构的服务器中获取公钥。默认功能仍无法使用。
logrotate 程序中的新 createolddir
指令
添加了新的 logrotate
createolddir
指令,可自动生成 olddir
目录。详情请查看 logrotate(8) 手册页。
不再将 /etc/cron.daily/logrotate
中的出错信息重新指向 /dev/null
现在会将
logrotate
每日 cronjob 生成的出错信息发送到 root
用户,而不是静默忽略。另外,会将 /etc/cron.daily/logrotate
脚本中 RPM 中标记为配置文件。
基于算法的 SEED 和 IDEA 仅限于 mod_ssl
限制了默认在 Apache HTTP 服务器的
mod_ssl
模块中启用的加密套件,以提高安全性。mod_ssl
的默认配置中不再启用基于 SED 和 IDEA 的加密算法。
Apache HTTP 服务器现在支持 UPN
现在可将保存在 SSL/TLS 客户端证书中
subject alternative name
部分的名称,比如微软用户主体名,用于 SSLUserName 指令,也可在 mod_ssl
环境变量中使用。用户现在可以使用其通用访问卡(Common Access Card,CAC)或附带 UPN 的证书进行验证,并使用其 UPN 验证用户信息,并由 Apache 中的访问控制使用,也可以在应用程序中使用 REMOTE_USER
环境变量或类似机制。现在,用户可使用 UPN 为验证设置 SSLUserName SSL_CLIENT_SAN_OTHER_msUPN_0
。
现在,默认在 mod_dav_fs
模块中启用 mod_dav
锁定数据库
现在如果载入 Apache HTTP
mod_dav_fs
模块,则默认启用 mod_dav
锁定数据库。可使用 DAVLockDB
配置指令覆盖默认位置 ServerRoot/davlockdb
。
mod_proxy_wstunnel
现在支持 WebSockets
现在默认启用 Apache HTTP
mod_rewrite
mod_proxy_wstunnel
模块,它支持方案 wss://
的 SSL 连接。另外,还可以在 mod_rewrite
指令中使用 ws://
方案。这样可使用 WebSockets 作为 mod_rewrite
的目标,并在代理服务器模块中启用 WebSockets。
第 14 章 存储
DM 恢复至版本 4.2
已将 Device Mapper (DM) 升级至上游版本 4.2,该版本提供大量针对上一个版本的程序错误修复和增强,其中包括显著 DM 加密性能更新及 DM 核心更新,以支持多队列块 I/O 查询机制(blk-mq)。
使用 blk-mq 进行多重队列 I/O 调度
Red Hat Enterprise Linux 7.2 包含了一个用于块设备(称为 blk-mq)的新多重队列 I/O 调度机制。通过允许某些设备驱动映射 I/O 请求至多个硬件或软件队列提高性能。当多线程执行在单一设备直执行 I/O 时,性能的提高来自于锁竞争的减少。更新的设备,如非易失性存储器标准(Non-Volatile Memory Express,NVMe),因为对多个硬件提交和完成队列的原生支持以及低延迟性能的特点,它们最适合于使用这个功能。但性能的提高总是取决于具体的硬件和负载。
在下列驱动程序中实施 blk-mq 功能且默认启用它:virtio-blk、mtip32xx、nvme 和 rbd。
相关功能 scsi-mq 允许小型计算机系统接口(SCSI)设备驱动程序使用 blk-mq 基础结构。scsi-mq 在 Red Hat Enterprise Linux 7.2 中是作为技术预览提供。要启用 scsi-mq,请在内核命令行中指定
scsi_mod.use_blk_mq=y
。默认值为 n
(禁用)。
如果指定了
dm_mod.use_blk_mq=y
内核选项,就也可以配置使用基于请求的设备映射器(Device Mapper,DM)的 DM 多重路径目标设备使用 blk-mq 基础架构。默认值是 n
(禁用)。
如果底层的 SCSI 设备也使用 blk-mq,设置
dm_mod.use_blk_mq=y
可以减少 DM 层的锁消耗。
要确定 DM 多重路径设备是否在使用 blk-mq,请查看
/sys/block/dm-X/dm/use_blk_mq
,这中的 dm-X
用实际的 DM 多重路径设备替代。这是只读文件,它反映 /sys/module/dm_mod/parameters/use_blk_mq
中的全局值是创建基于请求的 DM 多重路径设备的时间。
multipath.conf 文件中新的 delay_watch_checks 和 delay_wait_checks 选项
如果路径不可靠且连接频繁地掉线时,multipathd 仍然会继续使用这个路径。在 multipathd 意识到路径不再可用前的超时时间是 300 秒,这会使 multipathd 看起来已停止了。
为了解决这个问题,我们添加了两个新的配置选项:delay_watch_checks 和 delay_wait_checks。设置 delay_watch_checks 为 multipathd 在路径上线后观察它的循环次数。如果路径在这个值以内就出现故障,multipathd 将不会使用它。然后 multipathd 会依赖于 delay_wait_checks 选项来指定路径再次有效前必须通过的连续循环次数。这样可防止不可靠的路径在恢复上线后立即就使用。
multipath.conf 文件中的新 config_dir 选项
用户无法将其配置分散到 /etc/multipath.conf 和其他配置文件中。这样可防止用户设定一个用于所有机器的主配置文件,同时在独立配置文件中保留对每台机器的具体配置信息。
为解决这个问题,在 multipath.config 文件中新添加了 config_dir 选项。用户必须将 config_dir 改为空白字符串,或者完全限定目录路径名称。将其设定为空白字符串以外的任意值后,multipath 会按字母顺序读取所有 .conf 文件。然后应用该配置,如同将其添加到 /etc/multipath.conf 中。如果没有进行此类更改,则 config_dir 默认为 /etc/multipath/conf.d。
可显示和管理使用设备映射器驱动程序设备区域的 I/O 统计数据的新 dmstats 命令
dmstats
命令为 device-mapper I/O 统计提供用户空间支持。允许用户为 device-mapper 设备在用户定义的任意区域内创建、管理和报告 I/O 计数、度量和延迟直方图。现在,dmsetup
报表中有可用的统计字段,dmstats
命令添加了为使用统计信息设计的新专有报表模式。关于 dmstats
命令的信息,请参考 dmstats(8) 手册页。
LVM 缓存
LVM 缓存从 Red Hat Enterprise Linux 7.1 开始已受完全支持了。这个功能允许用户创建逻辑卷(Logical Valumn,LV),以小型快速设备作为更大、速度更慢的设备的缓存。关于创建缓存逻辑卷的更多信息,请参考 lvmcache(7) 手册页。
请注意下列使用缓存 LV 的限制:
* 缓存 LV 必须是顶层设备。它不能用作 thin-pool LV、RAID LV 映像或其它的子 LV 类型。
* 缓存 LV 的子 LV(原始 LV、元数据 LV和数据 LV)的类型只能是 linear、stripe 或 RAID。
* 缓存 LV 的属性在创建后不能修改。要修改缓存属性,请按照 lvmcache(7) 中的说明删除缓存并用需要的属性创建它。
新的 LVM/DM 缓存策略
我们编写了在多数情况下减少内存消耗和提供性能的新
smq
dm-cache 策略。它现在是新 LVM 缓存逻辑卷的默认缓存策略。希望使用传统的 mq
缓存策略的用户仍可以通过创建缓存逻辑卷时使用 —cachepolicy
参数来实现。
LVM systemID
现在可以为 LVM 逻辑组分配所有者了。逻辑组所有者是主机的系统 ID。只有给定系统 ID 的主机才可以使用这个逻辑卷。存在于共享设备上、多个主机可见的逻辑卷可以从中受益,否则无法避免多个主机的并发访问。共享设备上具有系统 ID 的 LVM 逻辑组由一个主机所有且可以避免其它主机的访问。
新的 lvmpolld
守护进程
lvmpolld
守护进程提供长期运行 LVM 命令的轮询方法。启用该守护进程后,则使用 lvmpolld
守护进程而不是原来的 LVM 命令控制重启运行的 LVM 命令。这样可继续独立使用原来的 LVM 命令操作。默认启用 lvmpolld
守护进程。
引入
lvmpolld
守护进程前,如果在 cgroup
中退出主进程(即主服务),则任意在 cgroup
系统服务中启动的源自 lvm2 命令后端轮询进程都可能会被杀死。另外,lvmpolld
可帮助防止在同一任务中多次衍生出 lvm2 轮询进程查询,因为它会追踪所有包含轮询任务的进程。
有关
lvmpolld
守护进程的详情,请查看 lvm.conf
配置文件。
增强 LVM 选项标准
Red Hat Enterprise Linux 7.2 发行本支持一些 LVM 选择标准增强。之前,只能为报告命令使用选择标准;现在,LVM 还为一些处理命令支持选择标准。另外,在这个发行本中有一些改动可提供更好的时间报告字段支持和选择。
有关这些新功能的实施,请查看《逻辑卷管理手册》中的附录
LVM Selection Criteria
。
增大了 SCSI LUN 的默认最大值
将
max_report_luns
的默认值从 511 增大至 16393。这个参数指定逻辑单元的最大数量,使用 Report LUN 机制扫描 SCSI 内部连接时可配置该参数。
第 15 章 系统和订阅管理
PowerTOP 现在可使用用户定义的报表文件名称
之前 PowerTOP 的报表文件名称是以不清楚的、无记录的方式生成的。这次更新进行了改进,生成的文件名现在可使用用户请求的名称。这适用于 CSV 及 HTML 报表。
yum-config-manager
命令的修改
yum-config-manager --disable
命令以前会禁用所有已配置的资料库,而 yum-config-manager --enable
命令并不会启用任何资料库。我们已纠正了这种不一致性。--disable
和 --enable
命令的语法现在都要求使用 '\*',因此 yum-config-manager --enable \*
会启用资料库。如果用户想禁用或启用资料库而不使用 '\*',这个命令会显示信息,要求用户运行 yum-config-manager --disable \*
或 yum-config-manager --enable \*
。
用于 yum 的新 search-disabled-repos 插件
在 subscription-manager 软件包中添加了用于 yum 的新 search-disabled-repos 插件。用户可使用这个插件成功完成由于源程序依赖于已禁用的程序库而失败的 yum 操作。在所述情况下安装 search-disabled-repos 后,yum 显示临时启用目前已禁用程序库的方法,并搜索缺少的相依性软件包。
如选择以下操作,并在 /etc/yum/pluginconf.d/search-disabled-repos.conf 文件中关闭默认的 notify_only 行为,那么此后的 yum 操作会提示临时或永久性启用所有需要的已禁用程序库,以完成 yum 事务。
获取并行的 hypervisor 数据
使用这个更新,virt-who 可获取并行的多个 hypervisor 中的数据。之前,virt-who 只能一次读取单一 hypervisor 中的数据,且如果某个系列中的一个 hypervisor 出问题,virt-who 会等待它响应,因此会失败。读取并行 hypervisor 可临时解决这个问题,并防止所述的失败情况。
过滤 virt-who 报告的 hypervisor
virt-who 服务引进了 Subscription Manager 报告的过滤机制。结果是用户现在可根据指定的参数选择应显示的主机 virt-who。例如:没有运行任何 Red Hat Enterprise Linux 虚拟机的主机,或者运行指定 Red Hat Enterprise Linux 版本虚拟机的主机。
改进了主机到虚拟机关联的虚拟化
在 virt-who 程序中添加
-p
选项。当与 -p
合用时,virt-who 输出结果会显示 Javascript 对象表示法(JSON)编码的主机-虚拟机关联映射。另外,记录在 /var/log/rhsm/rhsm.log 文件中的主机-虚拟机关联信息现在也使用 JSON 格式。
显示的 virt-who 输出结果为主机名称
现在可以配置 virt-who 查询,以便在 Red Hat Satellite 和红帽客户门户网站中查看时,可以使用主机名而不是全局唯一标识符(UUID)显示其结果。要启用此功能,请在 /etc/virt-who.d/ 目录中的配置文件中添加
hypervisor_id=hostname
选项。理想状态是应在首次使用 virt-who 前完成此操作,否则更改配置可复制 hypervisor。
预先填充的 virt-who 配置文件
virt-who 的默认配置文件在 /etc/virt-who.d/ 目录中。它包含一个模板及用户配置 virt-who 的说明。这可替换使用 /etc/sysconfig/virt-who 文件的弃用配置。
增强的代理服务器连接选项
在 Red Hat Enterprise Linux 7.2 中,virt-who 程序可以处理 HTTP_PROXY a和 HTTPS_PROXY 环境变量,因此可知需要时正确使用代理服务器。这样就可让 virt-who 连接至 Hyper-V hypervisor,并可通过代理服务器使用 Red Hat Enterprise Virtualization Manager。
订阅管理器现在支持 syslog
subscription-manager 工具除之前可以作为独立日志使用外,现在可以使用 syslog 作为日志处理器和格式化程序。这个处理器和格式化程序是在
/etc/rhsm/logging.conf
配置文件中进行配置。
Subscription Manager 现在是 Initial Setup 的一部分
已将 Firstboot 的 Subscription Manager 组件导入 Initial Setup 程序。用户现在可以在安装 Red Hat Enterprise Linux 7 系统后首次重启时使用 Initial Setup 的主菜单注册该系统。
Subscription Manager 现在可以在命令行中注册时显示服务器 URL
在命令行中使用
subscription-manager
命令注册系统时,该工具现在还会在询问用户名和密码时显示用来注册的服务器。这样可帮助用户决定使用哪个凭据。
现在 Subscription Manager 中的管理存储库对话更敏感
已更新 Subscription Manager 图形版本中的管理存储库(subscription-manager-gui)软件包,不会在每次更改复选框时提取信息,而只是在点击
save
按钮时才同步系统状态。这样就消除了上一个版本中由于每次改变复选框时就更新系统状态而造成的用户体验延迟。现在这个存储库管理的敏感性得到显著提升。
ReaR 现在还可用于 eth0 以外的接口
之前,ReaR 生成的救援模式不支持使用 eth0 以外的接口挂载 NFS 服务器。在这种情况下就无法下载救援系统和备份文件,因此也无法恢复该系统。在这个更新至修复了这个问题,现在可以使用其他接口,比如 eth1、eth2 等等。
第 16 章 虚拟化
qemu-kvm 支持虚拟机关闭跟踪事件
已在虚拟机关机过程中添加 qemu-kvm 跟踪事件支持,这样用户就可以使用
virsh shutdown
命令或者 virt-manager 程序获得有关虚拟机系统关机请求的详细诊断。这样可为用户提供增强的功能,以便在关机过程中隔离或调试 KVM 虚拟机问题。
Intel MPX 向虚拟机开放
在这次更新后,qemu-kvm 允许向虚拟机开放 Intel 内存保护扩展(Memory Protection Extensions,MPX)功能。在支持 MPX 的 Intel 64 位系统上,这启用了一系列为指针引用的边界保护提供硬件支持的扩展。
从 qemu-kvm core 中提取虚拟机内存转储
已在 QEMU 引入 dump-guest-memory.py 脚本,这样可在虚拟机内核崩溃时分析 qemu-kvm core 的虚拟机内存转储。详情请使用
help dump-guest-memory
命令查看相关的帮助文本。
全面支持 virt-v2v
Red Hat Enterprise Linux 7.2 完全支持 virt-v2v 命令行工具。这个工具将运行在 foreign hypervisor 上的虚拟机转移到 KVM 上。目前,virt-v2v 可以转换运行在 Red Hat Enterprise Linux 5 Xen 和 VMware vCenter 上的 Red Hat Enterprise Linux 和 Windows 客户。
IBM Power 系统上的虚拟化
AMD64 和 Intel 64 系统上的 Red Hat Enterprise Linux 支持使用 KVM,但 IBM Power 系统不行。Red Hat 现在提供了一个基于 POWER8 的解决方案,用于 IBM Power 系统上的 Red Hat Enterprise Virtualization。
关于版本支持和安装过程的更多信息,请阅读下列知识库文章:https://access.redhat.com/articles/1247773。
对 Hyper-V TRIM 的支持
现在可以使用精简资源调配的 Hyper-V 虚拟硬盘(Thin Provisioned Hyper-V virtual hard disk,VHDX)。这次更新添加新概念,可将 Microsoft Hyper-V 虚拟机的底层 VHDX 文件缩小至实际使用大小。
KVM 的 tcmalloc 支持
KVM 现在可使用 tcmalloc 库,该库可显著改进每秒 I/O 操作的性能。
域实时迁移过程中的选择性磁盘复制
现在用户可在实时迁移域及其磁盘时选择迁移过程中要复制的磁盘。这样可在复制某些不需要的磁盘时更有效地进行实时迁移,比如已存在于目的磁盘中,或者不再有帮助时。
现在 IOMMU API 域中不包含使用 RMRR 的设备
更改 Red Hat Enterprise Linux 7.1 后,当尝试分配由保留内存区域报告(Reserved Memory Region Reporting,RMRR)关联涉及的设备时,内核会在 dmesg 日志中报告以下出错信息:
"Device is ineligible for IOMMU domain attach due to platform RMRR requirement. Contact your platform vendor."
该平台销售商可以要求内核中的 VT-d IOMMU 子系统保持与使用高级配置和电源接口直接内存访问重新映射(ACPI DMAR)中条目的设备映射。但QEMU-KVM 和 VFIO 无法看到这些映射要求 ,且没有 API 可以禁用以后可能在这些区域中出现的通讯。因此,与 RMRR 关联的设备,即使之后分配给虚拟机 RM ,也可以继续通过这个地址空间使用 DMA。这样可造成设备使用由 RMRR 所描述内存要使用的 DMA 数据覆盖 VM 内存。
要解决这个程序错误,则要从内核内部 IOMMU API 中排除与 RMRR 关联的设备。用户现在可以使用 dmesg 日志识别此类设备,还可防止使用此类映射分配设备,因为这种分配可能会造成虚拟机内部不稳定。用户在应用此更新后要避免使用 PCI 设备分配,应与其平台供应商联络进行 BIOS 更新,以便从强加的 RMRR 要求中释放 I/O 设备。
有关这些更改的详情,请查看一下知识库文章:
新软件包:WALinuxAgent
在附加(Extras)频道中包含 Microsoft Azu Linux Agent(WALA)版本 2.0.13。这个代理支持在 Windows Azure 云中部署和运行 Linux 虚拟机,并应在 Linux 映象中安装,构建该映象的目的是使其可以在 Windows Azure 环境中运行。
第 17 章 Atomic Host and Containers
Red Hat Enterprise Linux Atomic Host
Red Hat Enterprise Linux Atomic Host 是一款安全、轻加权和占用空间最小的操作系统,并为运行 Linux 容器进行了优化。
目前,《Atomic Host and Containers 发行注记》单独发布。有关最新功能、已知问题及技术预览的详情,请查看 https://access.redhat.com/documentation/en/red-hat-enterprise-linux-atomic-host/7/single/release-notes/。
第 18 章 Red Hat Software Collections
Red Hat Software Collections 是一个 Red Hat 内容套件,可提供一组可在 AMD64 和 Intel 64 架构中的 Red Hat Enterprise Linux 6 和 Red Hat Enterprise Linux 7 支持发行本中安装和使用的动态编程语言、数据库服务器及相关软件包。
Red Hat Software Collections 中包含的动态语言、数据库服务器及其他工具不会替代 Red Hat Enterprise Linux 提供的默认系统工具,也不会优先使用这些工具。Red Hat Software Collections 使用基于
scl
的备选打包机制提供平行软件包组。这个软件包组可让您在 Red Hat Enterprise Linux 中自选使用备选软件包版本。用户可使用 scl
程序随时选择要运行的软件包版本。
Red Hat Developer Toolset 现在是 Red Hat Software Collections 的一部分,是独立的软件集合。Red Hat Developer Toolset 旨在让开发人员在 Red Hat Enterprise Linux 平台中工作。它提供 GNU 编译程序集合、GNU Debugger、Eclipse 开发平台以及其他开发、调试和性能监控工具的最新版本。
重要
Red Hat Software Collections 比 Red Hat Enterprise Linux 的生命周期和支持期限都短。有关详情请查看 Red Hat Software Collections 产品生命周期。
有关本集合所包含内容、系统要求、已知问题、用法及具体的软件集合详情请查看《Red Hat 软件集合文档》。
有关这个软件集合所包含文档、安装、用法、已知问题等等内容详情请查看《Red Hat Developer Toolset 文档》。
部分 II. 技术预览
这部分提供了 Red Hat Enterprise Linux 7.2 中引入或更新的技术预览概述。
关于 Red Hat 技术预览功能的支持范围,请参考 https://access.redhat.com/support/offerings/techpreview/。
第 19 章 身份验证和互操作性
AD 和 LDAP sudo 提供程序的使用
Active Directory(AD)提供程序是用来连接 AD 服务器的后端程序。在 Red Hat Enterprise Linux 7.2 中,将 AD sudo 提供程序与 LDAP 提供程序一同使用作为技术预览支持。要启用 AD sudo 提供程序,请在
sssd.conf
文件的 [domain] 部分添加 sudo_provider=ad
设置。
DNSSEC 在身份管理中作为技术预览提供
集成 DNS 的身份管理服务器现在支持 DNS 安全扩展(DNS Security Extensions,DNSSEC),这是一系列增强 DNS 协议安全性的 DNS 扩展。Identity Management 服务器中运行的 DNS 区可以用 DNSSEC 自动签名。加密密钥将自动生成并轮换。
建议决定使用 DNSSEC 保护 DNS 区的用户阅读并遵循这些文档中的说明:
《DNSSEC 操作实践第二版》:http://tools.ietf.org/html/rfc6781#section-2
《安全域名系统部署指南》:http://dx.doi.org/10.6028/NIST.SP.800-81-2
《DNSSEC 主要交换计时注意事项》:http://tools.ietf.org/html/rfc7583
请注意,集成了 DNS 的 Identity Management 服务器使用 DNSSEC 校验从其他 DNS 服务器获得的 DNS 响应。这可能会影响没有按《Red Hat Enterprise Linux 联网指南》中所述命名原则配置的 DNS 区的可用性:https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Networking_Guide/ch-Configure_Host_Names.html#sec-Recommended_Naming_Practices。
用于 Directory Server 的 Nunc Stans 事件框架
添加了同时处理多个连接的新 Nunc Stans 事件框架。该框架可支持数千个活跃连接而不会造成性能降级。默认禁用该功能。
可在 IdM 中查看 JSON-RPC API 的浏览器
这个更新在 Identity Management 中使用用于 JSON-RPC API 的浏览器。可使用该浏览器查看该 API。注:这个功能是实验性的,同时也不支持该 API。
新软件包:ipsilon
ipsilon 软件包为联合单点登录(SSO)提供了 Ipsilon 身份提供程序服务。Ipsilon 链接了验证提供程序和应用程序或工具以允许 SSO。它包含一个服务器和工具来配置基于 Apache 的服务提供程序。
Ipsilon 服务器和 toolkit 是专门用来配置基于 Apache 的身份服务提供程序。该服务器是可插拔独立
mod_wsgi
应用程序,该程序可为网页应用程序提供联合 SSO。
在这个发行本中引进 Ipsilon 作为技术预览。建议客户考虑现在为产品环境整合这个服务。
第 20 章 集群
支持 clufter
,它是传送和分析集群配置格式的工具
在 Red Hat Enterprise Linux 7 中作为技术预览提供的 clufter 软件包提供了转换和分析群集配置格式的工具。可使用该工具协助将旧的栈配置转换为可使用 Pacemaker 的较新配置。有关
clufter
功能的详情请查看clufter 命令可以协助从旧的栈配置移植到新的采用 Pacemaker 的配置。关于 clufter 命令的功能的详情,请参考 clufter(1)
手册页或 clufter -h
命令的输出结果。
第 21 章 文件系统
OverlayFS
OverlayFS 是一种联合文件系统。它允许用户将一个文件系统与另一个文件系统重叠(overlay)。在上层的文件系统中记录更改,而下层的文件系统保持不变。这样做有助于多位用户共享一个文件系统映像,比如容器;或者当基础映像位于只读介质中时,比如 DVD-ROM。详情请参考内核文件 Documentation/filesystems/overlayfs.txt。
在 Red Hat Enterprise Linux 7.2,多数情况下 OverlayFS 仍然是技术预览。因此,当激活这个技术时内核将记录警告信息。
与 Docker 一同使用时提供 OverlayFS 的全面支持,但有如下限制:
* 只支持将 OverlayFS 用于 Docker 图形驱动。它只能用于容器 COW 内容,而非持久性存储。如果要得到支持,任何持久性存储都必须放在非 OverlayFS 卷中。只能使用默认的 Docker 配置,也就是说,一层覆盖,一个 lowerdir,且低/高层都位于相同的文件系统中。
* 目前只支持将 XFS 用作更低层的文件系统。
* 必须在物理机制启用 SELinux ,并设置为 enforcing 模式,但在执行容器分离时必须在容器中禁用。也就是说,/etc/sysconfig/docker 不能包含 --selinux-enabled。上游正在开发 SELinux 对 OverlayFS 的支持,可能会在以后的版本中实现。
* OverlayFS 内核 ABI 和用户空间行为还不稳定,将来的更新中可能会有修改。
* 要让容器中的 yum 和 rpm 程序正常工作,用户应使用 yum-plugin-ovl 软件包。
请注意 OverlayFS 提供了 POSIX 标准的有限集合,在用 OverlayFS 部署应用程序前请进行全面的测试。
从 Red Hat Enterprise Linux 7.2 发行本开始出现一些与 OverlayFS 有关的问题。详情请阅读 Documentation/filesystems/overlayfs.txt 文件中的 ‘Non-standard behavior’ 部分。
支持 NFSv4 客户使用灵活的文件格式
Red Hat Enterprise Linux 7.2 现在支持 NFSv4 客户使用灵活的文件格式。这个技术启用了一些高级功能,如非破坏性文件移动能力和客户端镜像,改进了在一些领域中的可用性,如数据库、大数据和虚拟化。
关于 NFS 使用灵活文件格式的详情,请参考 https://datatracker.ietf.org/doc/draft-ietf-nfsv4-flex-files/。
Btrfs 文件系统
Btrfs (B-Tree) 文件系统作为技术预览出现在 Red Hat Enterprise Linux 7.2 中。这个文件系统提供了高级管理、可靠性和可扩充性功能。它让用户可以创建快照、使用压缩及集成的设备管理。
pNFS 块状布局支持
作为技术预览,已将上游代码移植入 Red Hat Enterprise Linux 客户端以提供 pNFS 块状布局支持。
第 22 章 硬件启用
IBM System z 的运行时检测(Runtime Instrumentation)功能
在 IBM System z 的 Red Hat Enterprise Linux 7.2 中,Runtime Instrumentation 功能是作为技术预览提供。Runtime Instrumentation 为 IBM zEnterprise EC12 系统中的大量用户空间应用程序启用了高级分析和执行。
LSI Syncro CS HA-DAS 适配器
Red Hat Enterprise Linux 7.1 使用 megaraid_sas 驱动程序中的代码启用 LSI Syncro CS 高可用性直连存储(High-availability direct-attached storage,HA-DAS) 适配器。megaraid_sas 驱动程序全面支持之前启用的适配器,作为技术预览它也可用于 Syncro CS。LSI、您的系统集成者或供应商直接提供这个适配器支持。我们鼓励在 Red Hat Enterprise Linux 7.2 中部署 Syncro CS 的用户向红帽和 LSI 提供反馈。关于 LSI Syncro CS 解决方案的详情,请访问 http://www.lsi.com/products/shared-das/pages/default.aspx。
第 23 章 内核
criu 工具
Red Hat Enterprise Linux 7.2 技术预览引入了
criu
工具。这个工具实现了 用户空间中的检查点(Checkpoint)/恢复(Restore)
,它可以冻结运行的程序并将其存储为文件集合。之后,应用程序可以从冻结状态进行恢复。
criu
工具依赖于协议缓冲(Protocol Buffer)
,协议缓冲是一个序列化结构化数据的与语言、平台无关的的可扩展机制。Red Hat Enterprise Linux 7.2 技术预览中也添加了提供这个依赖关系的 protobuf 和 protobuf-c 软件包。
用户命名空间
通过更好地隔离主机和容器,这个功能为运行 Linux 容器的服务器提供了额外的安全性。容器的管理员不再能够在主机上执行管理性操作,从而增强了安全性。
IBM System z 的 LPAR Watchdog
技术预览为 IBM System z 提供了改进的 watchdog 驱动程序。这个驱动程序支持 Linux 逻辑分区(LPAR)以及 z/VM 管理程序中的 Linux 虚拟机,并在 Linux 系统变得没有响应时提供自动重启和自动转储功能。
i40evf 处理大的 reset
虚拟功能(Virtual Function,VF)最常遇到的重置类型是物理功能(Physical Function,PF)重置,它会为每个 VF 层叠为 VF 重置。然而,对于“更大”的重置,如 Core 或 EMP 重置,当设备被重新初始化时,VF 之前没有获得相同的 VSI,所以 VF 无法恢复,它会继续为它的原始 VSI 请求资源。作为技术预览,这次更新在管理队列状态主机中添加了额外的状态,驱动程序可以在运行时重新请求它的配置信息。在重置恢复期间,这个位将在 aq_required 字段中设置,配置信息将在恢复驱动前被获取。
OPA 内核驱动程序支持
Intel Omni 路径架构(OPA)内核驱动程序是作为技术预览支持,在初始化中提供主机光纤互连(HFI)硬件,并中高性能计算(HPC)集群中设置将高性能数据传送到其他计算和 I/O 节点。
有关获取 Omni-Path 文档的步骤,请参考 https://access.redhat.com/articles/2039623。
支持 IBM System z 中的 Diag0c
Red Hat Enterprise Linux 7.2 作为技术预览引入 IBM System z 的 Diag0c 功能。Diag0c 支持让您可以读取 z/VM hypervisor 提供的 CPU 性能指标,并可以在执行诊断任务时获取 Linux 虚拟机中每个在线 CPU 的管理时间。
RDMA 的 10GbE RoCE Express 功能
作为技术预览,Red Hat Enterprise Linux 7.2 包括 10GbE RDMA over Converged Ethernet(RoCE)快速功能。这样就可能在 IBM System z 中使用以太网和远程直接内存访问(RDMA),以及直接访问编程库(DAPL)以及 OpenFabrics Enterprise Distribution(OFED)API。
在 IBM z13 系统中使用此功能前,请确定应用了最低要求服务:z/VM APAR UM34525 和 HW ycode N98778.057(bundle 14)
IBM System z 中的 zEDC 压缩
Red Hat Enterprise Linux 7.2 包括 Generic Workqueue(GenWQE)引擎设备驱动程序作为技术预览。该驱动程序的第一个任务是执行 zlib-style 压缩,并解压缩 RFC1950、RFC1951 和 RFC1952 格式,但可将其调整为加速其他各种任务。
第 24 章 网络
i40e 和 i40evf 恢复至版本 1.3.21-k 和 1.3.13
将 i40e 和 i40evf 内核驱动程序更新至版本 1.3.21-k 和 1.3.13。这些驱动程序在 Red Hat Enterprise Linux 7.2 中是作为技术预览提供。
在 i40e 端口,之前运行与 iSCSI 相关的命令会造成 i40e 端口中的网络连接丢失。这个更新会修复这个程序错误,且系统现在可以允许执行 iSCSI 命令。
Cisco usNIC 驱动程序
Cisco Unified Communication Manager(UCM)服务器有一个附加功能,提供 Cisco 专有用户空间网络接口控制器(usNIC),允许为用户空间应用程序执行类似远程直接内存访问(RDMS)的操作。作为技术预览的 libusnic_verbs 驱动程序可以通过基于 Verbs API 的标准 InfiniBand RDMA 编程方法使用 usNIC 设备。
Cisco VIC 内核驱动程序
Cisco VIC Infiniband 内核驱动程序作为技术预览受到支持,它允许在私有 Cisco 架构中使用类似远程目录内存访问(Remote Directory Memory Access,RDMA)。
可信网络连接
可信网络连接(Trusted Network Connect)功能作为技术预览用于现有的网络访问控制(NAC)解决方案,比如 TLS、802.1X 或者 IPsec 整合端点态势评估,即收集端点系统信息(比如操作系统配置设置,安装的软件包及其他,总称为完整性测量)。在允许该端点访问该网络前,使用可信网络连接并根据网络访问策略确认这些测量。
qlcnic 驱动程序中的 SR-IOV 功能
已在 qlcnic 中添加单一 Root I/O 虚拟化(Single-Root I/O virtualization,SR-IOV)支持作为技术预览。对这个功能的支持直接由 QLogic 提供,同时鼓励用户为 Red Hat 提供反馈意见。仍全面支持 qlcnic 驱动程序中的其他功能。
第 25 章 存储
SCSI 的多队列 I/O 调度
Red Hat Enterprise Linux 7.2 包含了一个用于块设备(称为 blk-mq)的新多重队列 I/O 调度机制。scsi-mq 软件包允许 SCSI 子系统使用这个新的队列机制。它是作为技术预览提供的,默认并没有启用。请在内核命令行中添加
scsi_mod.use_blk_mq=Y
来启用它。
改进的 LVM 锁架构
lvmlockd
是下一代的 LVM 锁架构。它允许 LVM 使用 dlm
或 sanlock
管理器安全地管理多个主机的共享存储。sanlock
允许 lvmlockd
通过基于存储的锁协调主机,而不需要整个群集架构。详情请参考 lvmlockd
(8) 的手册页。
libStorageMgmt API 的 Targetd 插件
从 Red Hat Enterprise Linux 7.1 开始全面支持使用独立于存储阵列的 API 的 libStorageMgmt 进行存储阵列管理。它提供的 API 稳定、一致,开发人员可通过程序管理不同的存储阵列并利用硬件加速功能。系统管理员也可以使用 libStorageMgmt 手动配置存储或使用包含的命令行接口自动化管理任务。
Targetd 插件仍是不被完全支持的技术预览。
DIF/DIX
DIF/DIX 是 SCSI 标准的新补充。在 Red Hat Enterprise Linux 7.2 为《特性(Features)》一章中指定的 HBA 和存储阵列提供全面支持;但对所有其他的 HBA 和存储阵列而言,它仍然是技术预览。
DIF/DIX 将常用的 512 字节磁盘块的大小从 512 增加到 520 个字节,添加了数据完整性字段(Data Integrity Field,DIF)。当发生写入操作时,DIF 会存储主机总线适配器(Host Bus Adapter,HBA)所计算数据块的校验和。然后存储设备在接收时会确认这个校验和,并存储数据以及校验和。反之,当发生读取操作时,存储设备和接收 HBA 会验证校验和。
第 26 章 虚拟化
嵌套虚拟化
Red Hat Enterprise Linux 7.2 提供嵌套虚拟化功能作为技术预览。它允许使用 KVM 启动虚拟机,这些虚拟机可作为 hypervisor 使用,并创建它们自己的虚拟机。
virt-p2v 工具
Red Hat Enterprise Linux 7.2 提供 virt-p2v 工具作为技术预览。virt-p2v(physical to virtual)是用户可以用来在物理主机上引导、然后将物理主机转换为运行在 KVM 上的虚拟机的 CD-ROM、ISO 或 PXE 映像文件。
KVM 客户对 USB 3.0 的支持
在 Red Hat Enterprise Linux 7.2 中,KVM 客户的 USB 3.0 主机适配器(xHCI)模拟仍保持为技术预览。
对 VirtIO-1 的支持
Virtio 驱动已更新至 Kernel 4.1 以提供对 VirtIO 1.0 设备的支持。
部分 III. 设备驱动程序
这部分提供了在 Red Hat Enterprise Linux 7.2 中更新的所有设备驱动程序的完整列表。
第 27 章 存储驱动程序的更新
- hpsa 驱动程序已更新至版本 3.4.4-1-RH4。
- qla2xxx 驱动程序已更新至版本 8.07.00.18.07.2-k。
- lpfc 驱动程序已更新至版本 10.7.0.1。
- megaraid_sas 驱动程序已更新至版本 06.807.10.00。
- fnic 驱动程序已更新至版本 1.6.0.17。
- mpt2sas 驱动程序已更新至版本 20.100.00.00。
- mpt3sas 驱动程序已更新至版本 9.100.00.00。
- Emulex be2iscsi 驱动程序已更新至版本 10.6.0.0r。
- aacraid 驱动程序已更新至版本 1.2。
- bnx2i 驱动程序已更新至版本 2.7.10.1。
- bnx2fc 驱动程序已更新至版本 2.4.2。
第 28 章 网络驱动程序更新
- tg3 驱动程序已更新至版本 3.137。
- e1000 驱动程序已更新至版本 7.3.21-k8-NAPI,它提供使用 xmit_more 布尔型变量时对 txtd 更新延迟的支持。
- e1000e 驱动程序已更新至版本 3.2.5-k。
- igb 驱动程序已更新至版本 5.2.15-k。
- igbvf 驱动程序已更新至版本 2.0.2-k。
- ixgbevf 驱动程序已更新至版本 2.12.1-k。
- ixgbe 驱动程序已更新至版本 4.0.1-k。
- bna 驱动程序和固件已更新至版本 3.2.23.0r。
- bnx2 驱动程序已更新至版本 2.2.6。
- CNIC 驱动程序已更新至版本 2.5.21。
- bnx2x 驱动程序已更新至版本 1.710.51-0,它也添加了对 qlogic-nx2 适配器的 qlogic NPAR 支持。
- be2net 驱动程序已更新至版本 10.6.0.3r。
- qlcnic 驱动程序已更新至版本 5.3.62。
- qlge 驱动程序已更新至版本 1.00.00.34,它修复了之前看造成系统崩溃的 New API (NAPI) 注册和未注册之间的一个竞争条件。当将网卡(NIC)设置为“down”时更改某些参数会出现竞争条件。
- r8169 驱动程序已更新至版本 2.3LK-NAPI。
- i40e 驱动程序已更新至版本 1.3.21-k。
- i40evf 驱动程序已更新至版本 1.3.13。
- netxen_nic 驱动程序已更新至版本 4.0.82。
- sfc 驱动程序已更新至最新的上游版本。
- 这次更新添加了 0.15.2-k 版本的 fm10k 驱动程序。
- 这次更新添加了包含 netns 功能的 VTI6 支持。
- bonding 驱动程序已更新至版本 3.7.1。
- iwlwifi 驱动程序已更新至最新的上游版本。
- vxlan 驱动程序已更新至版本 0.1。
第 29 章 图形化驱动程序和其他驱动程序的更新
- HDA 驱动程序已更新至最新的上游版本以使用新的 jack kctls 方法。
- HPI 驱动程序已更新至版本 4.14。
- 更新 Realtek HD-audio codec 驱动程序以包含 EAPD init 代码的更新。
- 更新 IPMI 驱动程序以替换 timespec64。
- 更新了 i915 驱动程序以包含 Red Hat Enterprise Linux 7.2 中的 ACPI Video Extensions 驱动程序。
- ACPI Fan 驱动程序已更新至版本 0.25。
- Update NVM-Express 驱动程序已更新至版本 3.19。
- rtsx 已更新至 4.0 以支持 rtl8402、rts524A、rts525A 芯片。
- Generic WorkQueue Engine 设备驱动程序已更新至最新的上游版本。
- PCI 驱动程序已更新至版本 3.16。
- EDAC 内核模块已更新,提供了对 Intel Xeon v4 处理器的支持。
- pstate 驱动程序已更新,支持第 6 代的 Intel 核心处理器。
- intel_idle 驱动程序已更新,支持第 6 代的 Intel 核心处理器。
第 30 章 弃用的功能
本章提供了有关在所有 Red Hat Enterprise Linux 7 到 Red Hat Enterprise Linux 7.2 之间的次要发行本中弃用的功能概述。
在 Red Hat Enterprise Linux 7 生命周期结束前均提供已弃用功能支持,但在本产品的下一个主要发行本中则一般不会支持弃用的功能,也不建议在新的部署中使用这些功能。有关具体主要发行本中的最新弃用功能列表,请参考发行文档的最新版本。
不建议在当前或今后的主要发行本的全新安装中使用已弃用的硬件组件。硬件驱动程序更新仅限于安全问题及关键问题修复。红帽建议在可行的条件下尽快更换这样的硬件。
软件包也可以被弃用,同时也不建议今后使用已弃用的软件包。在某些情况下,可从产品中删除某个软件包。然后产品文档会为您提示与弃用软件包有类似、相同甚至更高级功能的较新的软件包,并进一步提供建议。
仅限 Windows 虚拟机支持
从 Red Hat Enterprise Linux 7 开始,只在具体订阅程序中支持 Windows 虚拟机,比如
已弃用的设备驱动程序
- 3w-9xxx
- 3w-sas
- mptbase
- mptctl
- mptsas
- mptscsih
- mptspi
- 已弃用以下
megaraid_sas
驱动程序中的控制器:- Dell PERC5, PCI ID 0x15
- SAS1078R, PCI ID 0x60
- SAS1078DE, PCI ID 0x7C
- SAS1064R, PCI ID 0x411
- VERDE_ZCR, PCI ID 0x413
- SAS1078GEN2, PCI ID 0x78
- 已弃用以下由
be2net
驱动程序控制的以太网适配器:- TIGERSHARK NIC, PCI ID 0x0700
- 已弃用以下由
be2iscsi
驱动程序控制的以太网适配器:- Emulex OneConnect 10Gb iSCSI 发起程序(通用),PCI ID 0x212
- OCe10101, OCm10101, OCe10102, OCm10102 BE2 适配器产品线,PCI ID 0x702
- OCe10100 BE2 适配器产品线,PCI ID 0x703
- 已弃用
lpfc
驱动程序中的以下 Emulex 主机板:BladeEngine 2 (BE2) 设备
- TIGERSHARK FCOE,PCI ID 0x0704
光纤(FC)设备
- FIREFLY,PCI ID 0x1ae5
- PROTEUS_VF,PCI ID 0xe100
- BALIUS,PCI ID 0xe131
- PROTEUS_PF,PCI ID 0xe180
- RFLY,PCI ID 0xf095
- PFLY,PCI ID 0xf098
- LP101,PCI ID 0xf0a1
- TFLY,PCI ID 0xf0a5
- BSMB,PCI ID 0xf0d1
- BMID,PCI ID 0xf0d5
- ZSMB,PCI ID 0xf0e1
- ZMID,PCI ID 0xf0e5
- NEPTUNE,PCI ID 0xf0f5
- NEPTUNE_SCSP,PCI ID 0xf0f6
- NEPTUNE_DCSP,PCI ID 0xf0f7
- FALCON,PCI ID 0xf180
- SUPERFLY,PCI ID 0xf700
- DRAGONFLY,PCI ID 0xf800
- CENTAUR,PCI ID 0xf900
- PEGASUS,PCI ID 0xf980
- THOR,PCI ID 0xfa00
- VIPER,PCI ID 0xfb00
- LP10000S,PCI ID 0xfc00
- LP11000S,PCI ID 0xfc10
- LPE11000S,PCI ID 0xfc20
- PROTEUS_S,PCI ID 0xfc50
- HELIOS,PCI ID 0xfd00
- HELIOS_SCSP,PCI ID 0xfd11
- HELIOS_DCSP,PCI ID 0xfd12
- ZEPHYR,PCI ID 0xfe00
- HORNET,PCI ID 0xfe05
- ZEPHYR_SCSP,PCI ID 0xfe11
- ZEPHYR_DCSP,PCI ID 0xfe12
请运行
lspci -nn
命令检查您系统中的硬件 PCI ID。
注:所述驱动程序中的其他控制器,在此没有列出的仍保持不变。
部分 IV. 已知问题
这部分介绍了 Red Hat Enterprise Linux 7.2 中的已知问题。
第 31 章 常规更新
升级 BM Power Systems 中的 Red Hat Enterprise Linux 6 会失败
由于
yaboot
引导装载程序中的程序错误,在 IBM Power Systems 服务器中从 Red Hat Enterprise Linux 6 升级到 Red Hat Enterprise Linux 7 会失败,并显示 Unknown or corrupt filesystem
出错信息。
这个问题通常是因为错误放置
yaboot.conf
配置文件造成。请确保这个文件存在、有效,并将其放在标准(非 LVM)/boot 分区中。
升级后 /etc/os-release 文本包含过期信息
升级到下一个次要发行本(比如从 Red Hat Enterprise Linux 7.1 升级到 7.2)不会使用新产品号更新
/etc/os-release
文件。反之,这个文件会继续列出之前的发行本号码,且名为 os-release.rpmnew
的新文件是位于/etc
目录中。
如果要求
/etc/os-release
文件是最新版本,则请使用 /etc/os-release.rpmnew
替换该文件。
第 32 章 身份验证和互操作性
拒绝为短生命周期发出 Kerberos ticket 请求
由于 Active Directory 中的程序错误,为短生命周期(一般少于三分钟)请求 kerberos ticket 会被拒绝。要临时解决这个问题,请申请一个较长生命(五分钟以上)的 ticket。
使用 Red Hat Enterprise Linux 7 机器复制到 Red Hat Enterprise Linux 6 机器会失败
目前,Camellia Kerberos 加密类型(enctypes)是 krb5、krb5-libs、krb5-server 软件包的默认加密类型。结果是在使用 Enterprise Linux 7 机器复制到 Red Hat Enterprise Linux 6 机器时会失败,并显示出错信息。要临时解决这个问题,请使用默认加密类型控制,或者告诉 kadmin 或 ipa-getkeytab 要使用哪种加密类型。
在启动 SSSD 时会记录一条无害出错信息
如果 SSSD 连接到没有与 AD 服务器建立可信关系的 IdM 服务器,则会在 SSSD 域启动时会输出以下无害出错信息:
Internal Error (Memory buffer error)
要防止出现这个无害出错信息,如果该环境不会设定任意可信域,则请将 sssd.conf 文件的
subdomains_provider
设定为 none
。
无法使用最新生成的 DNSSEC 密钥签署 DNS 区
IdM 无法使用最新生成的 DNS 安全扩展(NDSSEC)密钥正确签署 DNS 区。在这种情况下,named-pkcs11 服务会记录以下出错信息:
The attribute does not exist: 0x00000002
这个程序错误是由生成 DNSSEC 密钥和发布进程之间的竞争条件错误造成。该竞争条件会防止 named-pkcs11 访问新的 DNSSEC 密钥。
要临时解决这个问题,请在受影响的服务器中重启 named-pkcs11。重启后,则会正确签署该 DNS 区。
如果在运行 realmd 时进行更新则会启动旧的 realmd 版本
只有在请求时会启动
realmd
守护进程,然后执行给出的操作,稍后会超时。如果更新 realmd
时该程序仍在运行,则会在下次要求时启动旧版本的 realmd
,因为不会再更新后重启 realmd
。要临时解决这个问题,请在更新前确定没有运行 reamld
。
ipa-server-install 和 ipa-replica-install 没有验证其选项
目前,
ipa-server-install
和 ipa-replica-install
程序不会验证为其提供的选项。如果用户在这些程序中使用不正确的值,则安装会失败。要临时解决这个问题,请确定提供正确值,然后再运行这些程序。
如果没有安装所需 openssl 版本则升级 ipa 软件包会失败
用户尝试升级
ipa
软件包时,身份管理(IdM)不会自动安装 openssl
软件包的所需版本。结果是,如果用户在运行 yum update ipa*
命令前没有安装 openssl
版本 1.0.1e-42,则会在配置 DNSKeySync 服务的过程中的升级会失败。
要临时解决这个问题,请在更新
ipa
前,手动将 openssl
更新至版本 1.0.1e-42 或更新的版本。这样可以防止升级失败。
第 33 章 编译程序及工具
使用 FCoE 从 SAN 引导时的多个程序错误
目前通过以太网光纤通道( Fibre Channel over Ethernet,FCoE)从存储区域网络(Storage Area Network,SAN)引导的实现出现了多个程序错误。红帽的目标是在将来的 Red Hat Enterprise Linux 7 版本中修复这些错误。关于受影响的程序错误和临时解决方案(如果有),请联系您的红帽支持代表。
Valgrind 无法运行根据早期 Open MPI 版本构建的程序
Red Hat Enterprise Linux 7.2 只支持 1.10 版本的 Open MPI 应用程序二进制接口(Application Binary Interface,ABI),它和之前附带的 Open MPI ABI 1.6 不兼容。因此,根据之前的 Open MPI 版本构建的程序无法运行在 Red Hat Enterprise Linux 7.2 附带的 Valgrind 下运行。临时解决方案是在链接到 Open MPI 1.6 的程序使用 Red Hat Developer Toolset 版本的 Valgrind。
GCC 生成的综合函数会干扰 SystemTap
GCC 优化可为其他函数的特定内联副本生成综合函数。这些综合函数类似一级函数,并干扰类似 SystemTap 和 GDB 的工具,因为 SystemTap 探测可同时放在综合函数和实函数入口点。这样就造成每个单一底层函数调用中有多个 SystemTap 探测。
要临时解决这个问题,SystemTap 脚本需要采用反措施,比如探测与内联部分函数有关的递归和抑制探测。例如:以下脚本:
probe kernel.function("can_nice").call { }
可尝试以下操作以避免出现上述问题:
global in_can_nice% probe kernel.function("can_nice").call { in_can_nice[tid()] ++; if (in_can_nice[tid()] > 1) { next } /* real probe handler here */ } probe kernel.function("can_nice").return { in_can_nice[tid()] --; }
注:这个脚本不会考虑所有可能的情况。在有些情况下可能无法如预期工作,例如:缺少 kprobes 或者 kretprobes,或者缺少真正的递归。
ABRT 收集回溯时会生成 SELinux AVC
如果使用
/etc/abrt/plugins/CCpp.conf
配置文件的 CreateCoreBacktrace
选项禁用 ABRT 的新自选功能,即允许在从崩溃的进程中收集回溯时不需要在磁盘中写入 core-dump 文件,则在 abrt-hook-ccpp
工具尝试使用 sigchld
访问崩溃的进程以便获取该进程栈中的函数列表时会生成 SELinux AVC 信息。
即使报告监测点命中 GDB 也会保持其活跃
有时在 64 位 ARM 架构中,GDB 可错误地保持监测点活跃,即使已报告它们命中。这样就造成第二次命中这些监测点,只有这次才不会再将硬件指示识别为监测点,而是显示一个通用 SIGTRAP 信号。可采用几个方法临时解决这个问题,并停止出现大量 SIGTRAP 报告。
* 命中监测点后如果看到 SIGTRAP 则请输入
continue
命令。
* 在
~/.gdbinit
配置文件中添加以下行,让 GDB 忽略 SIGTRAP 信号:
handle SIGTRAP nostop noprint
* 使用软件监测点而不是对应的硬件监测点。注:使用软件监测点进行调试要缓慢很多,且只能使用
watch
命令(不是 rwatch
或者 awatch
)。请在您的 ~/.gdbinit
配置文件中添加以下行:
set can-use-hw-watchpoints 0
使用 grubaa64.efi 引导失败
由于 pxeboot 或者 PXE 配置文件中的问题,使用 7.2 grubaa64.efi 引导装载程序安装 Red Hat Enterprise Linux 7.2 可能会失败,也可能会在引导操作系统时会有显著延迟。作为临时解决方案,请在安装 Red Hat Enterprise Linux 7.2 时使用 7.1 grubaa64.efi 文件而不是 7.2 grubaa64.efi 文件。
GCC 的 MPX 功能需要 libmpx 库的 Red Hat Developer Toolset 版本
libmpx library 的 gcc-libraries 版本缺少 libmpxwrappers 库。这样造成内存保护扩展(MPX)功能可能无法在 GCC 中正常工作,且该应用程序可能无法正确链接。要临时解决这个问题,请使用 libmpx 库的 Red Hat Developer Toolset 4.0 版本。
第 34 章 桌面
损坏的 pygobject3 软件包依赖关系妨碍 Red Hat Enterprise Linux 7.1 升级
已从 Red Hat Enterprise Linux 7.2 删除了 32 位的 pygobject3-devel.i686 软件包,并使用 multilib 版本替换。如果在 Red Hat Enterprise Linux 7.1 中安装了它的 32 位的软件包,在升级到 7.2 时就会遇到
yum
错误。
要临时解决这个问题,请在升级系统前,作为
root
使用 yum remove pygobject3-devel.i686
命令删除它的 32 位的软件包。
没有为 Emacs 正确规定构建要求
binutils 软件包早于 2.23.52.0.1-54 的版本会在构建过程中造成分段错误。结果是无法在 IBM Power Systems 中构建 Emacs 文本编辑器。要临时解决这个问题,请安装最新版本的 binutils。
笔记本电脑从扩展坞取下/连接同时挂起时的外部显示会出现问题
在某些笔记本电脑使用 GNOME 桌面环境时,当从扩展坞取下笔记本电脑,然后重新连接后,在恢复挂起的笔记本电脑时可能无法自动激活连接到扩展坞的外部显示器。
要临时解决这个问题,请打开显示器配置面板或在终端运行
xrandr
命令。这样就可以在此使用外部显示器。
有时在 ARM 中使用向上箭头时会意外终止 Emacs
在 ARM 架构中,
Emacs
文本编辑器有时会意外终止,并在向上卷文件缓冲区时出现片段错误。只有启用语法突出显示才会出现这种问题。目前这个问题没有临时解决方案可用。
第 35 章 安装和引导
在 Kickstart 文件中指定 %packages --nobase --nocore 后安装会失败并给出 traceback
使用包含
%packages
部分的 Kickstart 文件,同时指定 --nobase
和 --nocore
会因缺少 yum-langpacks 软件包造成安装失败,并给出 traceback 信息。
要解决这个问题,请在您的 Kickstart 文件中使用
%packages --nobase --nocore
时在 %packages
部分添加 yum-langpacks 软件包。
如果在 Kickstart 中指定的 root 密码不满足密码策略要求,则不会执行安装。
如果使用定义了 root 密码的 Kickstart 文件,但该密码不满足安全策略中所选安全政策的要求,则无法完成安装。此时
开始安装
按钮会变灰,且在按下这个按钮前不可能更改 root 密码。
要临时解决这个问题,请确定您的 Kickstart 文件使用足够强大的密码,以便其可以满足所选安全成为了中定义的要求。
救援模式无法在 Btrfs 探测和挂载 root 卷
这个安装程序救援模式(从安装介质引导菜单或使用
inst.rescue
引导选项访问)无法探测到在 Btrfs 子卷中放置了 /
(root)目录的现有系统。反之,会有一条出错信息,显示 'You don't have any linux partitions.'。
要临时解决这个问题,请进入 shell 并手动挂载 root 卷。
会在初始设置(Initial Setup)中显示错误的窗口标题
在首次后安装重启后会自动显示 Initial Setup 工具,这样可让您配置设置,比如网络连接及注册您的系统,在窗口标题中显示
__main__.py
。
这是一个外观问题,对可用性没有任何负面影响。
在 IBM System z 的 FBA DASD 中重新安装会造成安装程序崩溃
在有固定块架构(FBA)DASD 的 IBM System z 中重新安装 Red Hat Enterprise Linux 7 时,安装程序会因不全面支持这些设备而崩溃。
要临时解决这个问题,请将 FBA DASD 放入设备忽略清单中,以确认在安装过程中不会出现它们。请在启动安装程序前完成此操作。在 root shell 提示符后,使用
chccwdev
命令,后接 cio_ignore
命令手动让设备离线,然后将其添加到设备忽略列表中。
另外,还可将 FBA DASD 设备 ID 从 CMS 配置文件或参数文件中删除,并在开始安装前使用这些命令。
在 IBM System z 中完成安装后 HyperPAV 别名不可用
已知有一个问题会防止将 DASD 配置为在安装完成后自动将 HyperPAV 别名附加到系统中。在安装的过程中会在安装目标页面中看到这些存储设备,但完成安装并重启后不能立即使用这些设备。
要临时解决这个问题(到下一次重启前),请使用
chccwdev
命令从设备黑名单中删除这些设备:
# chccwdev -e <devnumber>
要让 HyperPAV 别名在重启后仍可用,请将其设备号添加到
/etc/dasd.conf
配置文件中。
请使用
lsdasd
命令验证这些设备已可用。
在 IBM System z 中生成的 anaconda-ks.cfg 文件不能用于重新安装该系统
anaconda-ks.cfg
是在安装过程中生成的 Kickstart 文件,该文件包含在安装过程选择的所有内容,在 IBM System z DASD 中使用小数值数代表磁盘大小。这是由于 DASD 报告 4KiB 对齐,从而造成计算的磁盘大小与子 Kickstart 文件中记录的大小不符,因为只接受整数。所以无法重新使用生成的 Kickstart 文件复制该安装。
使用 IBM System z 中的
anaconda-ks.cfg
文件重新安装系统则需要您手动将所有小数改为整数。
安装过程中可能出现的 NetworkManager 错误信息
安装该系统时会显示并在日志中记录以下出错信息:
ERR NetworkManager: <error> [devices/nm-device.c:2590] activation_source_schedule(): (eth0): activation stage already scheduled
这个出错信息会造成安装无法完成。
在 InfiniBand Support 软件包组中缺少软件包 libocrdma
InfiniBand Support 组的默认软件包集中不包含 libocrdma。因此,当用户选择 InfiniBand Support 组,并期待在 Emulex OneConnect 适配器中可以使用通过聚合以太网的 RDMA(RDMA over Converged Ethernet,RoCE)时,则不会默认安装所需驱动程序 libocrdma。
首次引导时,用户可使用以下命令手动安装缺少的软件包:
# yum install libocrdma
另外,也可以在 Kickstart 文件中的
%packages
部分添加 libocrdma 软件包。
结果是现在用户可在 RoCE 模式下使用 Emulex OneConnect 设备。
如果 /boot 分区大小不足则无法升级系统
如果安装多个内核及附加软件包,比如 kernel-debug,则包含已安装的内核及初始 ram 磁盘的 /boot 会变满。这是因为在安装过程中将这个分区默认设定为 500MB,并妨碍系统升级。
作为临时解决方案,如果不需要它们,则请使用
yum
删除旧的内核。如果要安装新系统,则应考虑到这种可能性,并将 /boot 分区设定为较大值(比如 1 GB),而不是默认的(500 MB)。
如果一个或多个磁盘缺少标签则无法在多路径设备中安装
在多路径设备中安装时,如果安装程序无法读取多路径成员中的一个或多个磁盘,则会显示出错对话。这个问题是因一个或多个磁盘缺少标签造成,因为出现这种情况时则无法进行安装。
要临时解决这个问题,请在安装过程中为多路径设备的所有磁盘中常见磁盘标签。
如果在 %pre 脚本中定义主机名则会覆盖 Kickstart 文件中的静态 IPv4 配置
在 Kickstart 文件的
%pre
部分定义主机名后,将只设定主机名( "network --hostname=hn")的 network
命令视为设备配置,使用默认的 --bootproto 值("dhcp")和 --device
值("link",即找到其链接的第一个设备)。然后 Kickstart 会按照使用的 network --hostname=hn --device=link
行动。
如果将视为
--device
选项默认设备(第一个找到链接的设备)配置为使用静态 IPv4 配置(例如:之前的 network
命令),该配置会被 --hostname
选项利用的 IPv4 DHCP 覆盖。
要临时解决这个问题,请确定使用第一个定义主机名的
network
命令,之后使用的第二个 network
命令通常会被覆盖。
如果定义主机名的
network
命令是 Kickstart 文件中的唯一此类命令,则请在非现有接口中使用添加 --device
选项的这个命令(例如:network --hostname=hn --device=x
)。
在 Kickstart 中使用 realm 命令会造成安装程序崩溃
这是妨碍在 Kickstart 文件中使用
realm
命令的已知问题。在安装过程中使用这个命令尝试加入 Active Directory 或者 Identity Management 域会造成安装程序崩溃。
要临时解决这个问题,可以等待安装完成后手动加入域,也可以在 Kickstart 文件的
%post
部分添加 realm join <realm name>
命令。有关使用命令行加入域的详情,请查看 realm(8)
手册页。
安装程序的内置帮助程序不会在系统升级时更新
从 Red Hat Enterprise Linux 7.1 升级至版本 7.2 时,Anaconda 安装程序的内置帮助(anaconda-user-help 软件包)不会升级,因为打包方式有很大变化。
要临时解决这个问题,请在执行升级前,使用
yum
删除 anaconda-user-help 软件包,然后再升级到 yum
删除 anaconda-user-help 后再次安装该软件包。
grubby 生成的引导菜单条目排序出错
grubby
是用来修改和更新 GRUB2 引导装载程序配置文件的工具,可在生成引导菜单配置文件时,在该列表的顶部添加 debug boot menu 条目。这些调试菜单可向下压常规条目,同时还会默认突出显示并选择这些调试菜单。
使用多个驱动程序同时更新映象只适用于最后指定的一个
在安装过程中尝试使用
inst.dd=/dd.img
引导选项执行驱动程序更新,且多次指定该选项载入多个驱动程序更新映象时,Anaconda 会忽略所有参数实例,最后一个除外。
要临时解决这个问题,您可以:
* 如可能可在安装后安装附加驱动程序
* 使用备选方法指定驱动程序映象,比如
driverdisk
Kickstart 命令
* 将多个驱动程序更新映象合并为一个
探测到 LDL 格式的 DASD 时安装程序会崩溃
无论何时安装程序在 IBM System z 的一个或多个 DASD 中探测到 LDL(Linux 磁盘不符)格式,该程序就会崩溃。这个崩溃是由
libparted
库的竞争条件造成,即使未将这些 DASD 选择为安装目标也会出现这个问题。这个问题没有影响其他架构。
如果在安装过程中使用 LDL DASD,用户应在启动该安装程序前,在 root shlle 提示符后使用
dasdfmt
命令手动将每个 LDL DASD 重新格式化为 CDL(兼容磁盘布局)格式。
如果某个系统中有 LDL DASD,且用户不想在安装时使用它们,则应在安装过程中将该设备放在设备忽略列表中。这个操作应在启动安装程序前完成。在 root shell 提示符后,用户可使用
chccwdev
命令,然后是 cio_ignore
命令手动切换设备离线,然后在将该设备添加到忽略列表中。
另外,也可以删除 CMS 配置文件或参数文件中的所有 LDL DASD 设备 ID,而不是在开始安装前使用这些命令。
升级 kernel 和 redhat-release 软件包后重启时出现内核 panic
在同一 Yum 事务中安装 redhat-release-server-7.2-9.el7 和 kernel 软件包可造成 GRUB2 配置的新内核菜单条目中缺少
initrd
行。随后,当使用最新安装的内核引导时会因缺少 initrd 造成内核 panic。这个问题通常是由使用 yum update
从之前的次要发行本升级至 Red Hat Enterprise Linux 7.2 时造成。
要临时解决这个问题,请确定使用不同的 Yum 事务分别升级 redhat-release-server 和 kernel 软件包。另外,还可以在 GRUB2 配置文件(在 BIOS 系统中是
/boot/grub2/grub.cfg
,在 UEFI 系统中是 /boot/efi/EFI/redhat/grub.cfg
)中找到新内核的菜单条目,并手动添加 initrd。
initrd 配置行类似
initrd /initramfs-3.10.0-327.el7.x86_64.img
。请确定该文件名称与同一菜单条目中配置的内核(vmlinuz)匹配,该文件位于 /boot
目录中。请使用旧的菜单条目作为参考。
即使已安装图形环境也可以在文本模式中启动 Initial Setup
Initial Setup 程序会在安装完成后及安装的系统首次引导时启动,有时即使在安装了图形环境且应启动 Initial Setup 的图形版本时,也会在文本模式中启动。这是因为同时启用了 Initial Setup 的图形和文本模式服务。
要临时解决这个问题,可在安装过程中使用的 Kickstart 文件中包含
%post
部分,以便禁用不想要使用的 Initial Setup 版本。
要确保在安装后启动 Initial Setup 的图形变体,请使用
%post
部分:
%post systemctl disable initial-setup-text.service systemctl enable initial-setup-graphical.service %end
如果要启用 Initial Setup 的文本模式变体,请切换
enable
和 disable
命令,以便禁用图形服务,并启用文本模式。
使用 ldconfig.service
删除 /lib/
和 /lib64/
中的非 root 文件系统链接。
Red Hat Enterprise Linux 7.2 引进了
ldconfig.service
,它是在引导过程初期,即挂载非 root 文件系统前运行。运行 ldconfig.service
后,对于 /lib/
和 /lib64/
目录中的链接,如果指向未挂载的文件系统就会被删除。要临时解决这个问题,请使用 systemctl mask ldconfig
命令禁用 ldconfig.service
,这样就不会再删除这些符号链接,系统也可如预期引导。
更新至 Red Hat Enterprise Linux 7.2 后使用 IPC 的守护进程会意外终止
在 Red Hat Enterprise Linux 7.2 中引进了新功能
systemd
:使用用户完成的最后一个会话清除所有分配的进程间通讯(IPC)资源。会话可以是管理 cron
任务,也可以是互动会话。这个行为可造成同一用户使用同样资源运行的守护进程意外终止。要临时解决这个问题,请编辑 /etc/systemd/logind.conf
文件并添加以下行:
RemoveIPC=no
然后执行以下命令以便更改生效:
systemctl restart systemd-logind.service
执行这些步骤后,在上述情况下守护进程就不会再崩溃。
第 36 章 内核
某些 ext4 文件系统无法调整大小
由于 ext4 代码的一个程序错误,目前无法调整具有 1KB 块大小且小于 32MB 的 ext4 文件系统的大小。
反复丢失与启用 iSER 的 iSCSI 目标的连接
将服务器用作启用 iSER 的 iSCSI 目标时,连接丢失会反复发生,目标会停止响应且内核也会变得不响应。临时解决方案是最小化 iSER 连接丢失或转换到非 iSER iSCSI 模式。
安装程序不会探测到 EDD 系统中使用以太网磁盘的光纤设备
在 EDD 系统中,因为缺少
edd
驱动程序,Anaconda 无法自动探测到 FCoE 磁盘。这样在安装过程中无法使用此类磁盘。
请按照以下步骤操作临时解决这个问题:
* 在安装过程中的内核命令行中添加
fcoe=edd:nodcb
,以便 anaconda 可以探测到 FCoE 磁盘。
* 在救援映象中添加
fcoe=edd:nodcb
并用它来引导该系统。
* 执行以下命令在 initrd 映象中添加 edd 模块:
#dracut --regenerate-all -f
#dracut --add-drivers edd /boot/initramfs-3.10.0-123.el7.x86_64.img
* 使用默认引导菜单条目重启该系统
在某些情况下 NUMA 平衡无法达到最佳效果
在 Red Hat Enterprise Linux 7 中的以下条件下,Linux 内核非一致性内存访问(NUMA)平衡无法达到最佳效果。即设定
numa_balancing
选项时,有些内存会在移至受限制节点前被移动到随机非目标节点中,同时在某些情况下目标节点中的内存还会下降。目前还没有临时解决方案。
禁用 PSM2 MTL 以避免 PSM 和 PSM2 API 之间的冲突
新 libpsm2 软件包提供可在 Intel Omni-Path 设备中使用的 PSM2 API,该软件包与使用 infinipath-psm 软件包安装,用于 Truescale 设备的性能扩展消息传递(Performance Scaled Messaging,PSM)重叠。API 重叠会在某个进程与两个软件包提供的库链接时造成未定义行为。如果其启用的 MCA 组件包含
psm2
映射传输层(MTL),且一个或多个模块直接或间接依赖 infinipath-psm 软件包的 libpsm_infinipath.so.1
库时,这个问题会影响 Open MPI
。
为避免 PSM 和 PSM2 API 冲突,在
/etc/openmpi-*/openmpi-mca-params.conf
配置文件中默认禁用了 MPI 的 psm2
MTL。如果启用它,则需要禁用 psm
和 ofi
MTL,以及与其冲突的 usnic
字节传输层(BTL),该配置文件注释中还提供了操作步骤。
软件包 libpsm2-compat-devel 和 infinipath-psm-devel 之间还有打包冲突,因为它们都包含 PSM 标题文件。因此,不能同时安装这两个软件包。要安装其中之一,需首先卸载另一个软件包。
perf 程序的性能问题
perf archive
命令会生成 perf.data
文件在找到的附带构建 ID 的对象文件存档,在 IBM System z 中需要较长时间完成。目前还没有临时解决方案。其他构架未受影响。
绑定无法使用 qlcnic
某些绑定模式在没有正确识别 qlcnic 驱动程序的设备中设定 MAC 地址。这样该设备就无法在将其从绑定中删除后恢复其原始 MAC 地址。
作为临时解决方案,可取消使用 qlcnic 驱动程序并重启您的操作系统。
Red Hat Enterprise Linux 7.2 无法在某些 Applied Micro 64 位 ARM 系统中安装,并给出以下出错信息:
Red Hat Enterprise Linux 7.2 无法在某些 Applied Micro 64 位 ARM 系统中安装,并给出以下出错信息:
Unable to handle kernel NULL pointer dereference at virtual address 0000033f
目前这个问题还没有临时解决方案。
VFIO 设备的 libvirt
管理可导致主机故障
使用 VFIO 驱动程序分配给虚拟机的主机 PCI 设备
libvirt
管理可造成主机内核驱动程序和 vfio-pci 驱动程序同时绑定到 IOMMU 组中的设备。这是一个无效状态,并可造成主机意外终止。
现在,如果在同一 IOMMU 组中有其他设备,则唯一的临时解决方案是不要在虚拟机中热插拔 VFIO 设备。
使用 iSCSI 安装且 IPv6 中止 15 分钟
如果启用 IPv6 ,则会在尝试连接到指定的 iSCSI 服务器 15 分钟后 Dracut 会超时。最终,Dracut 会成功连接并如预期进行处理。但要避免此延迟,请在安装程序的命令行中使用
ip=eth0:auto6
。
i40e NIC 无法使用
在旧的固件中,使用 i40e 驱动程序的网卡会在进入混杂模式后无法使用约 10 秒钟。要避免这个问题,请更新该固件。
i40e 给出 WARN_ON
i40e 驱动程序将在更改环大小的过程中给出 WARN_ON 宏,因为该代码要在分配新内存前克隆 rx_ring 结构,但不会将指针归零。注:这个警告对您的系统没有任何影响。
引导时未挂载 netprio_cgroups
目前,systemd 将 /sys/fs/cgroup/ 目录作为只读挂载,这样可防止挂载 /sys/fs/cgroup/net_prio/ 目录。结果是会在引导时不挂载 netprio_cgroups 模块。要临时解决这个问题,请使用
mount -o remount
命令,然后使用 rw -t cgroup nodev /sys/fs/cgroups
命令。这样就可以手动安装基于模块的 cgroups。
第 37 章 网络
Red Hat Enterprise Linux 7.2 内核中没有启用超时策略
Red Hat Enterprise Linux 7.2 不支持
nfct timeout
命令。临时解决方案是使用 /proc/sys/net/netfilter/nf_conntrack_*_timeout_*
中的全局变量值设置超时时间。
在 Red Hat Enterprise Linux 7 中禁用了使用 MD5 哈希算法验证签名的功能
无法连接需要 MD5 签字证书的 Wi-Fi 安全访问(WPA)企业接入点(AP)。要临时解决这个问题,请将
/usr/lib/systemd/system/
目录中的 wpa_supplicant.service
文件复制到 /etc/systemd/system/
目录中,并在该文件的 Service
部分添加以下行:
Environment=OPENSSL_ENABLE_MD5_VERIFY=1
然后作为 root 运行
systemctl daemon-reload
命令重新载入该服务文件。
重要
注:MD5 证书极不安全,红帽不建议使用这些证书。
第 38 章 存储
不支持在集群中顶级 RAID 的精简预配
虽然在分别激活后仍可在集群中使用 RAID 逻辑卷和精简预配逻辑卷,现在在集群的顶级 RAID 中不支持精简预配。即使这种组合形式是单独激活的也不行。目前,只在 LVM 的单机非集群节点中支持这个组合形式。
使用精简预配时,如果达到其容量,则可能会丧失精简池的缓冲写入功能。
如果某个精简池已满,即便此刻增大该池的容量也可能丢失某些写入的内容。这是因为 resize 操作(即使是自动运行的 resize 操作)会尝试执行 resize 前将未完成的 I/O 冲入存储设备。因为在精简池中没有看见,必须首先将 I/O 操作变为错误操作才可以成功扩大其容量。精简池容量扩大后,与精简池关联的逻辑卷会返回正常操作。
要临时解决这个问题,请根据您的需要在 lvm.conf 文件中正确设置 'thin_pool_autoextend_threshold' 和 'thin_pool_autoextend_percent'。请勿将该阈值设定过高,也不要将百分比设置得太低,以防精简池很快就填满,造成没有足够的时间可将其自动扩展(或根据您的需要手动扩展)。如果您没有使用超额预配(创建超过后备精简大小的逻辑卷),然后在精简池容量接近填满时准备根据需要删除快照。
第 39 章 系统和订阅管理
Initial Setup 工具的 Subscription Manager 附加组件中的 Back
按钮不可用
Initial Setup 工具的 Subscription Manager 附加组件的第一个面板上的
Back
按钮无法使用。临时解决方案是点击 Initial Setup 顶部的 Done
退出注册流程。
virt-who 无法将 host-to-guest 关联改为 Candlepin 服务器
在添加、删除或迁移虚拟机时,virt-who 目前无法发送 host-to-guest 映射,并会在日志文件中写入 RateLimitExceededException 错误。要临时解决这个问题,请在 /etc/sysconfig/virt-who 文件中将
VIRTWHO_INTERVAL=
参数设定为较大的数字,比如 600。这样就可以正确修改映射,但在处理 host-to-guest 映射时会需要很长时间。
ReaR 无法在 IBM System z 中创建 ISO
ReaR 无法在 IBM System z 中创建 ISO 映象。要临时解决这个问题,请使用 ISO 以外的不同类型的救援系统。
ReaR 只有在系统恢复时支持 grub
ReaR 只支持 grub 引导装载程序。结果是 ReaR 不会自动使用不同的引导装载程序恢复系统。请注意:目前,在 PowerPC 机器中的 ReaR 还不支持 yaboot。要临时解决这个问题,请手动编辑引导装载程序。
第 40 章 虚拟化
KVM 中的 GRUB2 菜单导航出现问题
在通过 KVM 使用串口控制台时,长时间按住箭头键在 GRUB 2 菜单中进行选择时会导致不确定的行为。为了避免这个问题,请不要长时间按住箭头键进行快速输入。
Hyper-V 虚拟机中调整 GUID 分区表磁盘大小会导致分区表错误
如果在最后的分区之后还有空闲空间,Hyper-V Manager 允许用户删除未使用的磁盘空间,从而缩小虚拟机中的 GPT 分区磁盘。然而,这个操作会无提示地删除磁盘中的次级 GPT 标题信息,在虚拟机检查分区表时(例如用 parted(8))会触发错误信息。这是已知的 Hyper-V 限制。
临时解决方案是在缩小 GPT 磁盘后,用 gdisk(8) 命令的 expert 选项
e
来手动恢复二级 GPT 头部信息。这种情况在使用 Hyper-V 的 expand 选项时也会发生,您也可以用 parted(8) 工具来修复。
使用 virsh iface-bridge
创建网桥失败
使用网络以外的资源安装 Red Hat Enterprise Linux 7 时,必须在接口配置文件中默认指定网络设备名称(即使有
DEVICE=
行)。结果是使用 DEVICE=
命令创建新网桥时会失败,并给出出错信息。要临时解决这个问题,请在 /etc/sysconfig/network-scripts/ifcfg-* 文件中添加 DEVICE=
行。
模拟 QEMU CAC 智能卡与 ActivClient 软件不兼容
目前,ActivClient 软件与模拟 QEMU 的通用访问卡(Common Access Card,CAC)智能卡不兼容。要临时解决这个问题,请禁用 pcscd 守护进程,预配 Windows KVM 虚拟机,在 virt-viewer 工具中预先配置它,并选择 USB 创新定向选项,安装 ActivClient 软件,以及缓冲器 KVM 虚拟机。使用这个设置,ActivClient 接受模拟 CAC 卡。
virtio-win VFD 文件不包含 Windows 10 驱动程序
由于软盘文件大小的限制,virtio-win 软件包中的虚拟软盘(VFD)文件不包含 Windows 10 文件夹。如果用户需要使用 VFD 安装 Windows 10 驱动程序,则可以使用 Windows 8 或 Windows 8.1 驱动程序替代。另外,还可以使用 /usr/share/virtio-win/ 目录中的 ISO 文件安装 Windows 10 驱动程序。
迁移的虚拟机不会在串口控制台中显示引导菜单
在没有图形卡的 Red Hat Enterprise Linux 6 中创建的虚拟机(比如使用 virt-install 程序的
--graphics none
选项创建的 VM),如果迁移到 Red Hat Enterprise Linux 7 主机,则不会在串口控制台显示引导菜单。要临时解决这个问题,可在 domain.xml 文件中添加 <bios useserial='yes'/> 行,这样就可以如预期显示引导菜单。
注:以这种方法修改的 XML 文件不能用于 Red Hat Enterprise Linux 6.6 或之前的版本,因此这些发行本不会从引进的 BZ#1162759 中获益。
附录 A. 组件版本
这个附录是 Red Hat Enterprise Linux 7.2 中组件及其版本的列表。
表 A.1. 组件版本
组件
|
版本
|
---|---|
内核
|
3.10.0-327
|
QLogic
qla2xxx 驱动程序
|
8.07.00.18.07.2-k
|
QLogic
qla4xxx 驱动
|
5.04.00.00.07.02-k0
|
Emulex
lpfc 驱动程序
|
0:10.7.0.1
|
iSCSI initiator utils
|
iscsi-initiator-utils-6.2.0.873-32
|
DM-Multipath
|
device-mapper-multipath-0.4.9-85
|
LVM
|
lvm2-2.02.130-5
|
附录 B. 修订历史
修订历史 | |||
---|---|---|---|
修订 0.0-1.48.4 | Fri Oct 7 2016 | ||
| |||
修订 0.0-1.48.3 | Fri Oct 7 2016 | ||
| |||
修订 0.0-1.48.2 | Fri Oct 7 2016 | ||
| |||
修订 0.0-1.48.1 | Mon Sep 12 2016 | ||
| |||
修订 0.0-1.48 | Thu Aug 04 2016 | ||
| |||
修订 0.0-1.47 | Mon Aug 01 2016 | ||
| |||
修订 0.0-1.46 | Thu Jul 11 2016 | ||
| |||
修订 0.0-1.45 | Fri Jul 08 2016 | ||
| |||
修订 0.0-1.44 | Thu Jun 23 2016 | ||
| |||
修订 0.0-1.43 | Wed Jun 22 2016 | ||
| |||
修订 0.0-1.42 | Mon Jun 13 2016 | ||
| |||
修订 0.0-1.41 | Fri Jun 10 2016 | ||
| |||
修订 0.0-1.40 | Mon Jun 06 2016 | ||
| |||
修订 0.0-1.38 | Thu May 19 2016 | ||
| |||
修订 0.0-1.37 | Thu May 12 2016 | ||
| |||
修订 0.0-1.36 | Thu Apr 21 2016 | ||
| |||
修订 0.0-1.35 | Wed Apr 13 2016 | ||
| |||
修订 0.0-1.34 | Thu Mar 31 2016 | ||
| |||
修订 0.0-1.33 | Mon Mar 28 2016 | ||
| |||
修订 0.0-1.32 | Mon Feb 29 2016 | ||
| |||
修订 0.0-1.31 | Tue Feb 23 2016 | ||
| |||
修订 0.0-1.30 | Tue Feb 16 2016 | ||
| |||
修订 0.0-1.29 | Thu Feb 11 2016 | ||
| |||
修订 0.0-1.28 | Tue Jan 26 2016 | ||
| |||
修订 0.0-1.27 | Tue Jan 19 2016 | ||
| |||
修订 0.0-1.26 | Wed Jan 13 2016 | ||
| |||
修订 0.0-1.25 | Thu Dec 10 2015 | ||
| |||
修订 0.0-1.22 | Wed Dec 02 2015 | ||
| |||
修订 0.0-1.21 | Thu Nov 19 2015 | ||
| |||
修订 0.0-1.4 | Mon Aug 31 2015 | ||
|
法律通告
Copyright © 2015 Red Hat, Inc.
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
为了尽快向用户提供最新的信息,本文档可能会包括由机器自动从英文原文翻译的内容。如需更多信息,请参阅此说明。