第 8 章 更新的软件包
8.1. 389-ds-base
程序错误修复
- BZ#1001037
- 当在 Active Directory (AD)上创建新用户并设置了密码时,系统管理员人员会检查标记"User must change password on next login"。之后,默认密码发送到 Red Hat Directory Server (RHDS),它设置密码,但删除了上述标志。在这个版本中,在下次登录时保留密码更改的标记,如果选中该标志,则允许传递 7 天约束的密码同步工具。
- BZ#1008021
- 如果将 ACI (访问控制指令)配置为向"自己"、绑定用户本身授予权限,则条目的访问权限会被缓存,并可能会错误地对所有条目重复使用。因此,绑定的客户端可能会检索它不应该获得的条目或属性,或者无法检索这些条目及其应该检索的属性。在这个版本中,每个条目会授予某些访问,请确保如果缓存了授予访问权限,它会清除下一个条目。
- BZ#1009122
- 多主复制协议保留服务器之间相对时间偏移的累积计数器。但是,在更新之前,如果超过一天调整了系统时间,则计数器会超过一天。因此,复制消费者拒绝接受来自 master 的更改,复制过程会失败。在这个版本中,为 cn=config - nsslapd-ignore-time-skew 添加了一个新的配置属性,默认值为 "off"。另外,会记录一条错误消息,提醒系统管理员有关时间偏移问题。另外,如果此属性设置为 "on",则复制消费者允许复制,尽管过度时间偏移也会进行复制。
- BZ#1012699
- 在以前的版本中,当提供来自主机名到服务器的无效安装脚本时,会给用户返回 vague 错误消息。在这个版本中,当设置脚本在主机名中遇到错误时,会提供正确的错误消息。
- BZ#1044218
- 在以前的版本中,在处理简单页面结果的搜索请求后,目录服务器的大小会持续增加。导致这个程序错误的内存泄漏已被修复,服务器大小不会在上述情况下增加。
- BZ#1049029
- 在此次更新之前,Windows Sync Control 请求仅返回组条目的重命名成员,而不是包含此成员的组。因此,在活动目录(AD)上重命名用户可辨识名称(DN)不会应用到用户 DN 所属的组中同步成员 DN。在这个版本中,当从 AD 接收 rename 操作后,Windows Sync Control 搜索组具有 member 值,并使用重命名的 DN 替换旧 DN。另外,Windows Sync Control 还会根据预期更新组中重命名的成员 DN。
- BZ#1053766
- 在以前的版本中,当导入 LDAP 数据交换格式(LDIF)或执行包含 tombstone 条目的复制初始化时,tombstone 条目的父条目会错误递增。在这个版本中,在处理 tombstone 条目时,父条目 numsubordinate 属性不会更新,而 numsubordinate 值现在在所有条目中都准确。
- BZ#1057805
- 在以前的版本中,计算内存中条目的大小接近:条目缓存大小大于配置中指定的大小。这个程序错误已通过计算每个条目大小更准确来解决,这会导致条目缓存更准确的大小。
- BZ#1060385
- 当尝试处理空日志文件时,logconv.pl 实用程序无法运行并报告一系列 Perl 错误。要解决这个问题,会检查并忽略空日志文件,logconv.pl 会根据以下消息报告空日志文件:
Skipping empty access log, /var/log/dirsrv/slapd-ID/access.
- BZ#1070583
- 在发生 Total Replication Update 或 Replica Initialization 时,服务器可能会意外终止。在这个版本中,在副本的整体更新仍在运行时,复制插件无法终止,因此服务器不再崩溃。
- BZ#1070720
- 在此次更新之前,使用 "-f" filter 选项会导致 rsearch 工具返回过滤器语法错误。在这个版本中,确保正确评估了过滤器,在使用 "-f" 选项时 rsearch 现在可以正常工作。
- BZ#1071707
- 在以前的版本中,当对简单页面结果的搜索请求发送到服务器且请求被取消时,连接表中的页结果插槽不会被正确释放。因此,因为插槽不可用,临时初始插槽号 "-1" 被保留以访问数组,这会导致其无效的访问。在这个版本中,带外的插槽内容可以被正确删除,以便重复使用。现在,临时插槽号被替换为正确的插槽号,不再会发生无效的阵列访问。
- BZ#1073530
- 由于超过大小限制,访问控制指令(ACI)组评估会失败。但是,"sizelimit" 值可以是从非搜索操作中检索的 false 值。在这个版本中,检测到的 false 值被替换为无限值(-1),ACI 组评估不再因为意外的 sizelimit 超过错误而失败。
- BZ#1077895
- 使用代理验证控制执行 LDAP 操作可能会导致服务器内存泄漏。在这个版本中,分配的内存会在操作完成后发布,服务器在使用代理验证控制处理操作时不再泄漏内存。
- BZ#1080185
- 在此次更新之前,tombstone 数据缓解没有考虑其父条目成为冲突条目的情况。另外,在 entryrdn 索引中缺少 resurrected tombstone 数据处理。因此,当 tombstone 数据被重新恢复时,父子关系会变得混淆。在这个版本中,Directory Information Tree (DIT)结构已被正确维护,即使 tombstone-data 条目的父项变为冲突条目,父子关系现在可以正确管理。
- BZ#1083272
- 由于使用 valueset_add_valueset () 函数不正确,它只需要传递空值,服务器可能会意外终止。这个版本处理函数的滥用,现在不再会导致服务器崩溃。
- BZ#1086454
- 在以前的版本中,对于消息的严重性,日志记录级别太详细,错误日志可能会使用冗余信息填满。要修复这个错误,只有在使用 "access control list processing" 日志级别时,日志才会被写入,因此错误日志不再会占用不必要的警告信息。
- BZ#1086903
- 在以前的版本中,如果 do_search ()函数在早期阶段失败,则存储给定 baseDN 的内存不会被释放。底层源代码已被修复,即使搜索在早期阶段失败,baseDN 不再泄漏内存。
- BZ#1086907
- 在以前的版本中,在条目缓存中,在 tombstone 清除过程中删除条目时,一些删除操作会失败并显示错误。在这个版本中,重试以获取父条目,直到成功或超时为止。因此,删除条目缓存中的操作现在可以如预期成功。
- BZ#1092097
- 在以前的版本中,当配置了 Multi Master Replication 时,如果在 Master 1 上更新一个条目,在 Master2 上删除了一个条目,则来自 Master 1 的复制更新可以在已删除的条目上为目标(一个 tombstone)。这会导致两个后果。首先,复制的更新失败,并可能会破坏复制。其次,tombstone 条目在 Master 1 和 Master 2 上有所不同。如果更新源自于复制,则此更新允许在一个 tombstone 上更新。现在,复制会成功,tombstone 条目在所有服务器上都相同。
- BZ#1097002
- 当删除其下级删除的节点条目时,之前只检查第一个位置。因此,第一个位置上的子条目会在数据库中删除。但是,它可以被重复使用用于替换的 tombstone 条目,这会报告 false 错误 "has children",从而导致节点删除失败。在这个版本中,而不是检查第一个位置,而是检查所有子条目是否是 tombstones;如果它们都为 tombstones,则节点会被删除。现在,不再报告 false 错误 "has children",其子对象都是 tombstones 的节点条目才可以成功删除。
- BZ#1098653
- 配置复制时,复制更改日志数据库也是备份的目标。但是,备份更改日志数据库之前会失败,因为没有与复制更改日志数据库关联的后端实例。因此,在服务器上备份会失败。在这个版本中,如果备份数据库是更改日志数据库,db2bak.pl 实用程序会跳过检查后端实例,因此备份可以正常工作。
- BZ#1103287
- 在不使用任何详细选项的情况下处理大量访问日志时,内存将继续增长,直到系统耗尽可用内存或日志被完全处理。向后移植的功能会导致过量内存消耗,无论处理日志记录量,内存都会保持稳定状态。
- BZ#1103337
- 在以前的版本中,以下信息被错误地编码为错误级别:
changelog iteration code returned a dummy entry with csn %s, skipping ...
因此,当服务器进入状态后,这个 benign 错误消息会重复记录在错误日志中。要修复这个程序错误,日志级别已被更改,消息将不再被记录。 - BZ#1106917
- 在此次更新之前,当在受管条目上执行 modrdn 操作时,受管条目插件无法正确更新受管条目指针。底层源代码已被修复,受管条目链接现在在 modrdn 操作上保持不变。
- BZ#1109333
- 前面的 MemberOf 插件代码假定 Distinguished Name (DN)值具有正确的语法,且不会检查该 DN 的规范化值。这可能会导致解引用 NULL 指针和意外终止。在这个版本中,检查规范化值并记录正确的错误。因此,无效的 DN 不再会导致崩溃和错误被正确记录。
- BZ#1109335
- 在添加和删除条目时,在条目缓存中可以替换修改后的父条目 numsubordinates,即使操作失败。因此,父 numsubordinate 计数可能会被错误地更新。这个更新添加了代码来取消切换缓存中父条目,现在保证父 numsubordinate 计数正确。
- BZ#1109337
- 在以前的版本中,如果存在嵌套的 tombstone 条目,则父项总是首先清除,因此它们的子条目会变得孤立。在这个版本中,在执行 tombstone purge 时,候选列表按照相反的顺序处理,这会在父条目前删除子条目。因此,在清除后不再有孤立的 tombstone 条目。
- BZ#1109352
- 在以前的版本中,tombstone purge 线程会发出一个回调搜索,该搜索开始读取 id2entry 文件,即使后端已经停止或禁用。这可能导致服务器意外终止。现在,当执行搜索和返回条目时,这个更新会在读取 id2entry 前检查后端是否已启动。因此,即使停止后端时 tombstone purge 也会发生,服务器也不会崩溃。
- BZ#1109356
- 由于源代码中各种错误,可能会发生潜在的内存泄漏、损坏的内存或崩溃。所有上述错误都已被解决,服务器现在可以在不崩溃或泄漏内存的情况下的行为正常。
- BZ#1109358
- 由于后端事务失败,后插件没有正确传递给后端。因此,ldapdelete 客户端会意外执行 tombstone 删除。在这个版本中,添加了一个失败检查代码,ldapdelete 的 tombstone 删除会如预期失败。
- BZ#1109361
- 在以前的版本中,服务器启用了 rsa_null_sha 密码,这被视为不安全。在这个版本中,rsa_null_sha 不再可用。
- BZ#1109363
- 在以前的版本中,slapi_valueset_add_attr_valuearray_ext () 函数的调用者会在失败时错误地释放返回的 Slapi_ValueSet 数据类型。因此,当属性添加操作失败时,Slapi_ValueSet 会泄漏内存。在这个版本中,添加了代码来释放内存,返回 Slapi_ValueSet 不再泄漏内存。
- BZ#1109373
- 在此次更新之前,在 bootstrap 过程中载入语法插件。然而,在这个阶段中,属性已被处理。因此,在 schema 和 Directory Server 特定条目(DSE)中的多属性值排序结果无效。在这个版本中,添加了一个默认语法插件,DSE 和 schema 的排序结果现在以正确顺序进行。
- BZ#1109377
- 在以前的版本中,如果使用"service"实用程序启动程序,则忽略来自 TERM 和 LANG 的环境变量。因此,无法配置内存碎片。要修复这个错误,mallopt 环境变量 "SLAPD_MXFAST", "MALLOC_TRIM_THRESHOLD_" 和 "MALLOC_MMAP_THRESHOLD_" 已被配置。现在,可以明确控制内存碎片,并为"服务"实用程序提供说明。
- BZ#1109379
- 在此次更新之前,在运行 CLEANALLRUV 任务时,changelog 复制会错误地检查一个 Change Sequence Number (CSN),它可以被删除并返回为副本的最小 CSN。在这个版本中,来自"干净"副本 ID 的 CSN 会被忽略,复制现在使用正确的 CSN。
- BZ#1109381
- 在以前的版本中,Active Directory (AD)上的组有一个新成员,它不是 windows sync 的目标,且仅在 AD 上存在。如果在 AD 中执行操作,则成员将被替换为窗口同步目标的其他成员。因此,新成员值不会被同步。在这个版本中,修改操作遵循包括 member 值,现在通过确认 AD 上的存在,从而解决了这个问题。如果 Active Directory (AD)和 Directory Server (DS)上的组具有本地的、未同步的成员,并且成员从一侧的组中被删除,则删除操作会被同步,且所有包含本地服务器的成员都会被删除。底层源代码已被修改来检查,首先,如果一个属性在一侧完全删除,如果另一端上的每个值都在同步范围内。另外,只有在值位于同步范围时,该值才会放入 delete 的模式。
- BZ#1109384
- 在以前的版本中,logconv.pl 工具的手册页缺少了一些命令行选项。手册页已被更新,以显示 logconv.pl 的完整用法,以及所有可用选项。
- BZ#1109387
- 由于部分恢复过程中存在一个错误,恢复的索引的顺序会被混淆。在这个版本中,默认的比较函数被调用。现在,在运行部分恢复后,不再会出现索引问题。
- BZ#1109443
- 在处理 Service (CoS)定义条目中,如果处理 cosAttribute 条目时尚未提供 cosTemplateDn 条目,则父条目 Distinguished Name (DN)会自动设置为 cosTemplateDn。因此,父条目可以是要更新的条目的上级条目。另外,如果条目是 betxn 型插件的目标,则会出现死锁。在这个版本中,只有在未提供 codTemplateDn 时,才会添加父条目 DN。现在,即使 CoS 定义条目中按顺序列出了 cosAttribute 和 cosTemplateDn,并且 betxn 类型插件被启用,更新条目不再会导致死锁。
- BZ#1109952
- 在以前的版本中,如果虚拟列表视图(VLV)搜索失败,并显示 "timelimit" 或 "adminlimit" 服务器资源,则分配的 ID 列表不会被释放。因此,当发生失败时,用于 ID 列表的内存会泄漏。在这个版本中,为错误问题单添加了可用代码,且 VLV 失败导致的内存泄漏不再发生。
功能增强
- BZ#985270
- 在以前的版本中,只有 root Distinguished Name (DN)帐户才能指定可以绕过密码策略设置或向用户添加哈希密码的用户。在这个版本中,非 root DN 帐户也可以执行这些类型的操作。
错误修复
- BZ#1080185
- 对复制冲突解析的程序错误修复
8.2. NetworkManager
程序错误修复
- BZ#1025009
- 当机器暂停时,NetworkManager 守护进程会停用该机器上的所有网络设备。因此,Wake-on-LAN 客户端无法正常工作,因为这个网络设备已关闭,因此无法接收 Magic Packet。在这个版本中,如果设备启用了 Wake-on-LAN 或 Wake-on-Wireless-LAN 变量,NetworkManager 会在挂起时让设备保持运行,如果管理员启用了它,则 Wake-on-LAN 可以正常工作。
- BZ#1034860
- 在以前的版本中,NetworkManager 使用内核的以太网的点对点协议(PPPoE)驱动程序,当它收到 PPPoE Active Discovery Terminate (PADT)框架时,它不会告知用户。因此,当连接到某些数字订阅者行(DSL)供应商时,NetworkManager 守护进程无法注意到连接是否已丢弃。在这个版本中,NetworkManager 使用 userland PPPoE 驱动程序而不是内核驱动程序,现在所有供应商都会注意到丢弃的 DSL 连接。
- BZ#1113996
- NetworkManager 会自动为接口提供自动连接。在以前的版本中,当更改并保存此连接时,NetworkManager 会意外终止。write_ip4_setting ()函数已更新,修复此错误,NetworkManager 在保存更改的配置后不再崩溃。
8.3. ORBit2
错误修复
- BZ#784223
- 由于访问共享数据对象时在多个线程之间不当同步,bonobo-activation-server 进程在某些情况下是由 SIGSEGV 信号终止的。在这个版本中,在一个线程上清理任务已被延迟,因此不再需要同步。因此,在上述场景中,这个过程不会崩溃。
8.4. PackageKit
程序错误修复
- BZ#743399
- 由于回归问题,一些系统会在自动错误报告工具(ABRT)中报告以下条目,即使时间没有测试应用程序,系统闲置:"进程 /usr/sbin/packagekitd 是由信号 11 (SIGSEGV)终止的"已提供了一个补丁来修复这个错误,ABRT 不再生成此类错误消息。
- BZ#811097
- 在运行 "pkcon install" 命令时,pkcon 工具无法为需要更多信息的用户提供提示。相反,pkcon 工具意外终止并返回以下错误:"严重错误:用户拒绝模拟"已提供了一个上游补丁来修复这个错误。因此,pkcon 会提示具有 "Proceed with changes? [N/y]" 的用户获得输入,并成功完成。
- BZ#874270
- 由于一系列进程全部中止和 nsswitch 出现故障,启动 KVM 主机或客户机在 ABRT 上显示错误消息。这个 bug 已被修复,KVM 不再返回错误消息。
8.5. Release Notes
8.6. X11 客户端库
安全修复
- CVE-2013-1981,CVE-2013-1982,CVE-2013-1983,CVE-2013-1984,CVE-2013-1985,CVE-2013-1986,CVE-2013-1987,CVE-2013-1988,CVE-2013-1989,CVE-2013-1990,CVE-2013-1991,CVE-2013-2003 7, CVE-2013-2062,CVE-2013-2064, CVE-
- 在处理某些协议数据的各种 X11 客户端库的方式中发现多个整数溢出漏洞,导致基于堆的缓冲区溢出漏洞。攻击者可以通过恶意 X11 客户端向 X11 服务器提交无效的协议数据,可以利用这些漏洞之一在系统上升级其权限。
- CVE-2013-1997,CVE-2013-1998,CVE-2013-1999,CVE-2013-2000,CVE-2013-2001,CVE-2013-2002,CVE-2013-2066
- 以各种 X11 客户端库处理从 X11 服务器返回的数据的方式中发现,导致基于堆的缓冲区出现多个阵列索引错误。一个恶意的 X11 服务器可能会使用这个缺陷来执行具有运行 X11 客户端的用户特权的任意代码。
- CVE-2013-1995
- 在 X.Org X11 的 libXi 运行时库的 XListInputDevices ()函数处理签名号的方式中发现了一个缓冲区溢出缺陷。一个恶意的 X11 服务器可能会使用这个缺陷来执行具有运行 X11 客户端的用户特权的任意代码。
- CVE-2013-2005
- 在 X.Org X11 libXt 运行时库使用未初始化指针的方式中发现了一个安全漏洞。一个恶意的 X11 服务器可能会使用这个缺陷来执行具有运行 X11 客户端的用户特权的任意代码。
- CVE-2013-2004
- 在 libX11 (核心 X11 协议客户端库)中发现两个基于堆栈的缓冲区溢出漏洞,处理某些用户指定的文件。一个恶意的 X11 服务器可能会使用这个缺陷通过特制的文件使 X11 客户端崩溃。
程序错误修复
8.7. abrt
错误修复
- BZ#1084467
- 在以前的版本中,内核 oops 信息由 ABRT 删除,因此用户没有足够了解内核行为。在这个版本中,内核 oops 消息会被保留,并由解释补充。在新创建的 /etc/abrt/plugins/oops.conf 文件中可以恢复之前的行为(man abrt-oops.conf)。
功能增强
- BZ#989530
- 在这个版本中,ABRT 消息包含机器主机名。
8.8. aide
程序错误修复
- BZ#806911
- 在以前的版本中,如果没有安装 prelink 软件包,AIDE 工具无法正确处理 'prelink' 文件。因此,通过运行 'aide --init' 命令初始化数据库会导致错误,然后无法使用 'aide --check' 命令读取数据库。在这个版本中,在上述情况下运行 'aide --init' 命令后,会显示一个警告 massage,以提示用户首先安装 prelink 软件包。
- BZ#1119759
- 在此次更新之前,AIDE 工具无法正确处理 'report_attributes' 参数。因此,运行 'aide --check' 命令会导致报告不完整,并会产生分段错误。现在,一个补丁已被应用于解决这个程序错误,当报告强制属性时 AIDE 现在可以正常工作。
8.9. akonadi
错误修复
- BZ#1073939
- 在以前的版本中,Akonadi 服务使用硬编码的 ~/.local/share/akonadi 套接字目录。因此,如果主目录位于 Andrew File System (AFS)上,则 Akonadi 服务器不会启动,这不支持创建 UNIX 套接字。在这个版本中,包含套接字的目录已改为 '/tmp/[username]-akonadi.[random]'。因此,Akonadi 会如预期在 AFS 上带有主目录的系统启动。
8.10. alsa-utils
错误修复
- BZ#1072956
- alsa-utils 软件包已使用各种上游修复进行了更新,以改进稳定性和使用。
8.11. amtu
8.11.1. RHBA-2014:0639 - 一个mtu 程序漏洞修复更新
程序错误修复
- BZ#689823
- 在以前的版本中,在某些情况下,Abstract Machine Test utilities (AMTU)无法正确处理接口的名称。因此,AMTU 无法获取要测试的网络接口列表。在这个版本中,接口硬件类型和载体是从 /sys/class/net/ 目录中获得的。现在,只能使用以太网和令牌环,并且必须存在载体。因此,MTU 会如预期处理新的网络接口名称。
- BZ#723049
- 在以前的版本中,MTU 在配置了没有现有连接的静态 IP 配置的接口上运行网络测试,从而导致这些测试失败。在这个版本中,AMTU 不再对没有启动的接口运行测试。
- BZ#1098076
- 在以前的版本中,由于使用 sizeof ()运算符而不是 strlen ()函数,因此网络接口的名称仅限于 32 位系统和 64 位系统上的 8 个字符。因此,在输出的某些部分中,AMTU 无法正确显示完整的网络接口名称。现在,一个补丁已被应用于解决这个程序错误,AMTU 现在总是按预期显示完整的网络接口名称。
8.12. anaconda
程序错误修复
- BZ#734121
- 当 IBM System z 的用户安装了 kdump 软件包时,默认内核被设置为
kernel-kdump
。但是,zIPL
工具在创建zipl.conf
文件时会忽略Kdump
和调试的内核。因此,在更新系统后,新安装的内核不会被设置为zipl.conf
中的默认条目,因为默认内核已设置为kernel-kdump
。现在,如果内核名称包含 “-kdump”,则这样的内核不会被设置为默认值,而不是新安装的内核。 - BZ#979163
- 在某些情况下,下载 kickstart 文件可能会因为网络初始化缓慢而失败。为解决这一程序错误,在网络管理器中添加了一个新的
GATEWAY_PING_TIMEOUT
选项。选项会在报告连接网络接口之前检查与服务器的连接。有了这个更新,Anaconda 已被nicedelay
引导选项被修改来使用这个功能,现在可以在网络初始化非常慢时使用。 - BZ#1001960
- Red Hat Enterprise Linux 的引导菜单没有写入主版本。因此,在多引导系统上安装后,不知道哪个 Red Hat Enterprise Linux 条目与主版本相对应。引导菜单条目现在包含 Red Hat Enterprise Linux 版本的主版本。对于 Red Hat Enterprise Linux 6,这意味着有
Red Hat Enterprise Linux 6
条目。请注意,没有次版本号,如6.6
。这是因为目前没有更新引导菜单条目的基础架构,因此升级后该条目会不正确。 - BZ#1038001
- 当在 kickstart 文件的
%pre
部分中指定了绑定设备,并与%include
kickstart 选项一同使用时,Anaconda 无法正确创建绑定接口。在这个版本中,提供了一个补丁来修复这个程序错误和绑定接口,在上述场景中会如预期创建。 - BZ#1039051
- 在以前的版本中,Kickstart network 命令无法指定本地域名。因此,如果短主机名由 kickstart network--
hostname 选项配置
,则本地域中的短名称的名称解析在 Anaconda 安装程序中无法正常工作。为 network 命令添加了一个 new-domain
选项来解决这个问题。 - BZ#1044716
- 当使用 Anaconda 升级时,它会尝试启用系统上
/etc/fstab/
目录中列出的所有交换设备。但是,Anaconda 不会检查交换设备是否存在。因此,/etc/fstab/
中列出的不存在的交换设备会导致在升级过程中返回错误。在这个版本中,当 Anaconda 遇到这样的设备时,它会显示一个对话框窗口,允许用户跳过该设备或中止升级。 - BZ#1046320
- 输出 kickstart 文件中省略了-
percent
参数,即使在输入 kickstart 文件中提供了该参数。因此,使用输出 kickstart 文件无法重现安装。在这个版本中,Kickstart 代码已被修改,使其不会省略输出 kickstart 文件中的-percent
参数。 - BZ#1067857
- 在以前的版本中,Anaconda 不会检查作为引导参数传递的 VLAN ID。因此,Anaconda 无法通过 VLAN 接口检索 NFS 卷上的 kickstart 文件,因为尚未建立 VLAN 连接。这个版本修改了 Anaconda 以检查 VLAN ID。
- BZ#1123791
- 在安装过程中,
/tmp/
size 目录始终为 250M。在有大量驱动器、大型驱动程序更新磁盘或大量存储库的系统上,/tmp/
空间可能会耗尽,从而导致安装意外终止。在这个版本中,在 RAM 大于 512M 的系统上为/tmp/
保留 50% 内存,因此在上述场景中安装可以正确进行。
功能增强
- BZ#1081596
- 在这个版本中,允许对 IBM System z 的
generic.prm
文件中的cio_ignore
内核参数使用符号控制台设备标识符。如果安装时没有默认控制台设备号码,或者控制台设备号与之前generic.prm
文件中的硬编码值不同,使用这个标识符可防止问题。因此,使用与之前硬编码到generic.prm
文件中的不同设备标识符的控制台设备可以从黑名单中删除,并可供使用。
8.13. audit
8.13.1. RHBA-2014:1515 - 审计程序错误修复和功能增强更新
程序错误修复
- BZ#1065067
- 改进了"ausearch -i"命令的解释,也可以"ausearch --interpret"。* audit 软件包支持新的事件类型。* 远程日志记录错误已被修复。* 改进了 ausearch 匹配。* 在审计软件包中添加了 augenrules 工具支持。* 对 audispd 插件的管理已被完全重新工作。* 更新的 ausearch 和 aureport 工具现在可以从命令行指定包含日志的目录,从未包含在配置的审计日志目录中生成报告。* auditctl list rules 命令( -l 选项)现在以新格式输出内核中的规则,其格式与被加载到内核的格式匹配。
- BZ#1028635
- 在以前的版本中,audisp-remote 插件在临时"关键"网络错误后不会连接到远程服务器。底层源代码已被修补,audisp-remote 现在根据需要连接到远程服务器。
功能增强
8.14. augeas
程序错误修复
- BZ#1001635, BZ#1059383
- 在以前的版本中,Grub lens 不支持 "setkey", "lock", 和 "foreground" 指令,这会导致 virt-v2v 进程意外终止并显示错误消息。这个程序错误已被解决,virt-v2v 进程不再失败。
- BZ#1093711, BZ#1016904
- 当 sudo 配置文件 sudoers 包含在使用下划线字符的用户别名或组名称的指令时,sudoers lens 无法解析配置文件。在这个版本中,在组名称中允许使用下划线,sudoers lens 现在可以成功解析文件。
- BZ#1033795
- 在此次更新之前,当 shell 配置文件包含带有多个变量或 case 语句的"导出"行,并带有两个分号(;;),在与表达式相同的行中,Augeas 无法解析这些文件。在这个版本中,Augeas 处理同一导出行中的多个变量,并且预期有两个分号,并且上述文件被成功解析。
- BZ#1043636
- 在以前的版本中,当使用 sysconfig lens 来解析包含空白注释的 shell 配置文件时,解析过程会失败。lens 已被修复,解析这个注释组合,解析现在可以成功完成。
- BZ#1062091
- 当解析带有键或值分隔符的空格的 yum 配置文件时,Augeas 无法解析这些文件。底层源代码已被修复,yum 配置文件现在可以成功解析。
- BZ#1073072
- 在此次更新之前,没有用于解析 INI 风格文件的通用 lens,因此解析会失败并显示出错信息。IniFile 模块已被修复,包含通用 lenses,现在按照预期解析 INI 样式的文件。
- BZ#1075112
- 当自动挂载程序映射包含主机名(包含连字符)的主机的引用时,自动挂载程序将无法解析 /etc/auto.export 配置文件。现在,提供了一个补丁来修复这个错误,/etc/auto.export 现在会如预期被解析。
- BZ#1083016
- 在此次更新之前,Red Hat Enterprise Linux 中提供的默认 rsyslog 配置文件无法使用 Augeas 解析。rsyslog lens 已被修复,用于解析使用的过滤器和模板,/etc/rsyslog.conf 现在可以成功解析。
- BZ#1100237
- 当 Nagios Remote Plugin Executor (NRPE)配置文件包含 "allow_bash_command_substitution" 选项时,NRPE lens 无法解析这些文件。现在,提供了一个补丁来修复这个错误,带有 "allow_bash_command_substitution" 的文件会被按预期解析。
功能增强
8.15. authconfig
程序错误修复
- BZ#852997
- 在以前的版本中,authconfig 工具不会备份 /etc/passwd 文件、/etc/group、/etc/shadow 和 /etc/gshadow 文件。因此,如果运行了 "authconfig --restorebackup" 命令,则这些文件不会被恢复。有了这个更新,authconfig 会备份上述文件,在使用 "--restorebackup" 选项时,它会正确恢复这些文件的状态。
- BZ#912851
- 在此次更新之前,如果指定了多个特定 LDAP 基础,则 authconfig 工具不会正确读取 nslcd.conf 文件中的 LDAP 基础。因此,从 nslcd.conf 中读取的 LDAP 基础的值不正确。在这个版本中,authconfig 会忽略特定的 LDAP 基础,并只读取并覆盖常规 LDAP 基础值。
- BZ#975203
- 在某些情况下,authconfig 工具无法正确检测 SSSD 或 Winbind 是否已启用。因此,当运行 authconfig 时这些守护进程会停止,尽管它们没有生效。在这个版本中,如果服务配置没有改变,authconfig 不再更改状态或重启服务。因此,SSSD 或 Winbind 在执行 "authconfig --update" 命令后运行,且不会对与 SSSD 或 Winbind 相关的任何设置的影响。
- BZ#1023294
- 当使用 "authconfig --disableipav2 --update" 命令时,"ipa-client-install --uninstall"命令不会被运行。因此,IPA 客户端没有在机器上正确重新初始化,机器没有从之前加入的域中删除。现在,在上述场景中,更新的 authconfig 工具可以正确地调用 "ipa-client-install --uninstall",机器的 IPA 客户端已被正确初始化,并从域中删除机器。
- BZ#1025065
- 在此次更新之前,使用 pam_mkhomedir 工具创建主目录时的默认 umask 是 0022,这使得这些目录为全局可读。要修复此错误,默认使用 pam_mkhomedir 的"umask=0077"选项,pam_mkhomedir 新创建的主目录不再是全局可读的。
- BZ#1119797
- 在以前的版本中,用于 IPAv2 域 join 的 ipa-client-install 命令以交互方式请求输入。从 authconfig-gtk GUI 调用时,用户无法与之交互,因此域加入操作会失败。在这个版本中,authconfig GUI 使用 "ipa-client-install --unattended" 命令,不再尝试与用户交互。因此,IPAv2 域 join 操作现在可以成功。
功能增强
- BZ#916574
- authconfig 工具现在可以在 nsswitch.conf 文件中设置 automount 条目,以通过 SSSD 客户端从 LDAP 服务器拉取信息。
8.16. autofs
8.16.1. RHBA-2014:1587 - autofs 程序错误修复更新
程序错误修复
- BZ#994217
- 在 Red Hat Enterprise Linux 6 中不再支持以 amd 格式自动挂载映射的 am-utils 软件包。但是,在使用包含正斜杠(/)的密钥时,仍需要 amd 格式的映射,使用通配符匹配键,或者在匹配密钥后执行更复杂的操作。在这个版本中,将 amd 格式的解析程序添加到 autofs 工具中。
- BZ#1036032
- 如果 IPv6 本地链接地址包含百分比符号(%),autofs 工具会错误地将地址报告为无效。挂载位置有效检查已被更新,在上述情况下不再会出现不正确的报告。
- BZ#1038696
- 在检查挂载选项字符串时,automount 守护进程不会考虑字符串的长度,这会导致比较不正确。因此,当使用 "-v" 选项时,挂载探测不包括 NFS 版本 3,在某些情况下,挂载没有正确创建。选项匹配已被修改为考虑选项长度,从而解决了这个问题。
- BZ#1046164
- 由于之前对 autofs 实用程序的更改,autofs 没有正确处理远程过程调用(RPC)来探测服务器可用性。因此,autofs 没有查询 NFS 版本 2 和 NFS 版本 3 的 portmapper 服务。autofs 中的 RPC 处理已更新,autofs 现在会正确查询主机可用性。
- BZ#1059549
- autofs 工具没有正确处理负缓存超时。因此,autofs 无法正确读取包含的自动挂载器映射。在这个版本中解决了 autofs 中负缓存的处理。
- BZ#1068999, BZ#1081285
- 当使用 OpenLDAP 库中的初始化和终止函数时,autofs 工具不会应用相互排除。由于这些功能不是 thread-safe,因此会出现双可用错误,并且 autofs 意外终止。这个程序错误已通过为上述 OpenLDAP 功能添加相互排除条件来解决。
- BZ#1073197
- autofs 工具无法正确处理 scandir ()函数的输出。因此,autofs 可能会意外终止分段错误。autofs 工具已被修改,以正确读取 scandir ()输出。
- BZ#1081479
- 如果在进入守护进程状态之前启动 autofs 实用程序 autofs 的进程关闭了标准 I/O 文件描述符,则可以创建与其中一个标准 I/O 文件描述符对应的文件描述符。当 autofs 进入守护进程模式时,这些文件描述符会被关闭,autofs 会意外终止。现在,在 autofs 文件系统版本检查后,设备控制文件描述符会被关闭,并在 autofs 进入守护进程模式后打开新的描述符。
- BZ#1083744
- autofs 工具没有正确检查与之前失败的挂载尝试对应的条目,即所谓的"负条目"。因此,当使用"browse"选项指定"autofs mount"命令时,autofs 工具可以创建与对应自动挂载程序映射中与映射条目不匹配的目录。在这个版本中,对负映射条目的检查已被修复。
- BZ#1089576
- 在调用 autofs 解析器时,扫描缓冲区有时没有为下一次扫描正确重置。因此,后续的操作会出现不正确的成功返回。autofs 实用程序试图添加这些返回的条目,这会导致分段错误。这个程序错误已通过添加一个在每个映射条目扫描开始时重置 parse 缓冲区的功能来解决。
8.17. avahi
8.17.1. RHBA-2014:1535 - avahi 程序错误修复更新
程序错误修复
- BZ#768708, BZ#885849
- 在以前的版本中,当 DNS Response Header 中的 ARCOUNT 字段包含非零值时,avahi-daemon 会执行检查并记录有关被接收无效 DNS 数据包的错误。请注意,非零值为 ARCOUNT 是 DNS 数据包中附加数据部分的指示,而 avahi-daemon 不会解释它们。因此,vahi-daemon 无法与其他 mDNS/DNS-SD 实现无缝操作,因此自动发现不会为用户提供一些平台的预期结果。另外,avahi-daemon 会以不准确记录的信息,以忽略日志文件。删除了冗余检查,上面描述的情况不再发生。
- BZ#1074028
- 在以前的版本中,无法配置缓存资源记录的最大计数或与处理连接客户端到 avahi-daemon 的大量选项。因此,在大型网络中,vahi-daemon 可以访问一些内部限制的上限。另外,avahi-daemon 呈现错误的行为,如记录错误消息和无法在大型网络中发现一些服务。要修复这个程序错误,以下新添加的选项增加了配置各种内部限制的支持: cache-entries-max、client-max、object-per-client-max、entry-per-entry-group-max。有关这些选项的详情,请查看 avahi-daemon.conf (5)手册页。
8.18. bash
8.18.1. RHBA-2014:1503 - bash 程序错误修复更新
程序错误修复
- BZ#948207
- 在某些情况下,嵌套的 Bash 功能中会出现文件描述符泄漏。这个程序错误已被解决,在上述情况下,文件描述符不再泄漏。
- BZ#951171
- 由于 tty 驱动程序中的一个错误,在"read"命令中断时,ioctl 调用可能会返回 "-EINTR" 错误代码,如 SIGCHLD。因此,后续的"read"调用会导致 Bash shell 中止,并带有 "double free or corruption (out) " 错误消息。应用的补丁会更正 tty 驱动程序以使用"-ERESTARTSYS"错误代码,以便在需要时重新启动系统调用。因此,Bash 不再在此场景中崩溃。
- BZ#986095
- 当 HISTFILESIZE 变量设为大于零的值时,HISTSIZE 变量也被设置为零。如果 .bash_history 文件启用了时间戳且没有为空,执行 "su - " 命令会导致 Bash 变得无响应。这个程序错误已被解决,Bash 在上述场景中不再挂起。
- BZ#1007926
- 在以前的版本中,当在功能声明中使用带有多行输入的字符串时,Bash 不会正确处理引号字符。因此,声明被破坏,这会影响到复制此类功能或将其传送到另一个 shell。这个程序错误已被解决,现在可以正确地处理带有多行输入的这里字符串。
- BZ#1010164
- 在 Bash 脚本中处理较大的关联数组时,会出现内存泄漏。这个程序错误已被解决,在使用关联数组时 Bash 不再泄漏内存。
- BZ#1012015
- 如果用双引号字符括起的命令替换包含双引号的字符串,则 Bash 在执行命令前在命令上执行花括号扩展。因此,命令创建的输出与预期不同。这个 bug 已被修复,命令替换现在在上述情况下的大括号扩展前出现。
- BZ#1102803
- 在 vi 可视模式中编辑命令后,Bash 会回显每个替换的命令,它会在编辑循环时生成较长的 shell 输出。这个行为已被更改,Bash 现在只在上述场景中回显原始字符串。
8.19. bfa-firmware
8.20. bind
8.20.1. RHBA-2014:1373 - 绑定程序错误修复和功能增强更新
名为
),它将主机名解析为 IP 地址;解析器库(供应用程序在与 DNS 交互时使用); 以及用于验证 DNS 服务器是否正常运行的工具。
程序错误修复
- BZ#1044545
- 在以前的版本中,
allow-notify
配置选项不会考虑 Transaction SIGnature (TSIG)密钥进行验证。因此,这会导致从服务器不接受来自使用 TSIG 密钥进行身份验证的非 master 服务器的NOTIFY
消息,即使从服务器被配置为使用特定的 TSIG 密钥时接受NOTIFY
消息。现在,命名的
源代码已被修复,在从非 master 服务器收到NOTIFY
消息时也检查 TSIG 密钥 ID,现在从服务器现在可以正确地接受NOTIFY
消息。 - BZ#1036700
- 在此次更新之前,Red Hat Enterprise Linux 6 中发布的 BIND 中的 Response Rate Limiting (RRL)功能缺少
referrals-per-second
和nodata-per-second
选项。因此,配置为使用 RRL 功能的 BIND 用户无法明确过滤有效域的空响应,以及给给定域的服务器引用或委托。在这个版本中,缺少的功能已向后移植到 BIND,用户现在可以在 BIND 中使用 RRL 功能时明确过滤有效域的空响应,并在 BIND 中使用 RRL 功能时为给定域明确过滤空响应。 - BZ#1008827
- 在以前的版本中,host 工具对所有传出查询使用相同的发送缓冲。因此,在高网络负载下,当多个查询使用缓冲区时,主机 实用程序会在发送另一个查询完成后意外终止并出现分段错误。主机 实用程序源代码已修改为将单独的发送缓冲区用于所有传出查询,上面描述的问题不再发生。
- BZ#993612
- 在此次更新之前,BIND 解析器源代码中的一个错误会导致竞争条件,这可能会导致预先释放获取内存对象。因此,当 BIND 已访问已释放的内存时,BIND 可能会意外终止分段错误。已修复 BIND 解析器源代码,以确保解析器获取对象不会被释放,直到没有对该对象的未处理引用,BIND 不再在此场景中崩溃。
- BZ#1023045
- 在以前的版本中,dig 工具的手册页包含国际域名(IDN)库的上游特定选项。因此,这些选项无法按预期工作,用户可以按照手册页中的步骤在 dig 中禁用 IDN 支持。dig (1)手册页已修改为包含 Red Hat Enterprise Linux 中使用的 IDN 库的选项,用户现在可以根据手册页中的步骤在 dig 中成功禁用 IDN 支持。
- BZ#919545
- 在此次更新之前,因为回归,dig 工具可在域名解析过程中尝试多个源时访问已释放的查询。因此,dig 工具有时会意外终止分段错误,特别是在
/etc/resolv.conf
文件中配置多个搜索域的主机上运行时。dig 源代码已被修改,总是使用在尝试下一个源时仍有效的查询,dig 工具不再在此场景中崩溃。 - BZ#1066876
- 在此次更新之前,
命名的
源代码无法正确处理互联网控制消息协议(ICMP)目标无法访问(Protocol unreachable)响应。因此,在收到此类 ICMP 响应时命名
了错误消息,但 BIND 不会将名称服务器的地址添加到无法访问的名称服务器列表中。这个程序错误已被解决,在收到 ICMP Destination unreachable (Protocol unreachable)响应时,不会记录任何错误。 - BZ#902431
- 在以前的版本中,
/var/named/chroot/etc/localtime
文件是在安装 bind-chroot 软件包的过程中创建的,但不会恢复其 SELinux 上下文。因此,/var/named/chroot/etc/localtime
有一个不正确的 SELinux 上下文。在这个版本中,在 SPEC 文件的 post transaction 部分添加了创建后恢复/var/named/chroot/etc/localtime
的 SELinux 上下文的命令,并在安装 bind-chroot 后保留正确的 SELinux 上下文。 - BZ#917356
- 在以前的版本中,
/var/named/named.ca
文件已过时,某些根服务器的 IP 地址无效。虽然named
服务在启动时获取所有 root 服务器的当前 IP 地址,但无效的 IP 地址可以在重启后降低性能。现在,/var/named/named.ca
已被更新,以包含 root 服务器的当前 IP 地址。 - BZ#997743
- 在此次更新之前,
命名的
init 脚本仅在服务器启动期间检查rndc.key
文件是否存在。因此,即使用户有自定义远程名称守护进程控制(RNDC)配置,init 脚本也会生成rndc.key
。这个 bug 已被修复,如果用户有自定义 RNDC 配置,初始化脚本将不再生成rndc.key
。 - BZ#919414
- 在以前的版本中,当调用 sqlite 命令时,zone2sqlite 工具使用格式化选项,它不会对参数添加单引号。因此,zone2sqlite 无法对名称以数字开头或包含句点(
.
)或横线(-
)字符的表执行操作。在这个版本中,zone2sqlite 已被修复,使用正确的格式化选项,上面描述的问题不再发生。 - BZ#980632
- 在以前的版本中,
命名的
init 脚本不会检查在named.pid
文件中写入的 PID 是否为运行named
server 的 PID。服务器未完全关闭后,使用named.pid
编写的 PID 可以属于现有的进程,而named
服务器没有运行。因此,初始化脚本可以把服务器识别为正在运行,因此用户无法启动服务器。在这个版本中,init 脚本已被改进来执行必要的检查,如果named.pid
中编写的 PID 不是运行named
server 的 PID,则初始化脚本会删除named.pid
文件。检查检查会在启动、停止或重新加载服务器之前执行,并在检查其状态之前执行。因此,用户可以在上述场景中出现问题地启动服务器。 - BZ#1025008
- 在此次更新之前,BIND 没有使用
--enable-filter-aaaa 配置选项
配置。因此,在 BIND 配置中无法使用filter-aaaa-on-v4
选项。添加了-enable-filter-aaaa
选项,用户现在可以在 BIND 中配置filter-aaaa-on-v4
选项。 - BZ#851123
- 在此次更新之前,
命名的
init 脚本命令 configtest 不会检查 BIND 是否已运行,并将文件系统挂载到 chroot 环境中。因此,在named
服务在 chroot 环境中运行时,调用的
chroot 文件系统已损坏。这个 bug 已被修复,如果使用 init script configtest 命令,如果named
在 chroot 环境中运行,则使用 init 脚本 configtest 命令不会破坏文件系统。 - BZ#848033
- 在以前的版本中,由于
命名的
init 脚本中缺少声明,在调用某些命令(即 checkconfig、config、config、检查 )时,如果命名的
配置 包含错误,则初始化脚本可能会返回不正确的退出状态。 因此,例如,当 名为 configtest 命令的服务时,初始化脚本会返回零值表示成功,而无论配置中的错误如何。在这个版本中,init 脚本已被修复,以便在指定配置
出现错误时正确返回非零值。 - BZ#1051283
- 在以前的版本中,绑定 软件包安装的一些文档文件的所有权没有被正确设置。因此,文件被命名错误地所有,而不是
root
用户。应用了补丁,绑定 软件包安装的文档文件的所有权已被修正。
- BZ#951255
- 在此次更新之前,作为随机数据源的
/dev/random
设备在引导新安装的虚拟机(VM)时没有足够数量的熵。因此,当命名
服务首次启动时,生成/etc/rndc.key
文件会过长。初始化脚本已被修改为使用/dev/urandom
而不是/dev/random
作为随机数据源,/etc/rndc.key
的生成会在此场景中消耗更合理的时间。 - BZ#1064045
- 在以前的版本中,nsupdate 工具无法在 the
-r
选项后正确处理额外的参数,它会设置 User Datagram Protocol (UDP)重试的数量。因此,当参数后跟 the-r
选项时,nsupdate 会意外终止,并显示 segmentation 错误。应用了补丁,nsupdate 现在会如预期处理带有参数的 the-r
选项。 - BZ#948743
- 在以前的版本中,当指定服务在 chroot 环境中运行时,初始化脚本会检查服务器是否已挂载 chroot 文件系统。
因此,如果在 chroot 环境中某些目录为空,当使用 名为 start 命令的服务时,它们会被再次挂载。在这个版本中,init 脚本已被修复,在将文件系统挂载到 chroot 环境前检查
named
是否运行,在这种情况下没有目录被多次挂载。 - BZ#846065
- 在以前的版本中,BIND 没有使用
-with-dlopen=yes
选项配置。因此,无法动态加载外部动态加载区域(DLZ)驱动程序。现在,应用了补丁,外部 DLZ 驱动程序可以按预期动态加载。
功能增强
- BZ#1092035
- 在以前的版本中,worker 和 client-objects 的数量被硬编码在轻量级解析器守护进程(
lwresd
)源中,它不足。在这个版本中,添加了两个新选项:lwres-tasks
选项,可用于修改创建的 worker 数量,以及lwres-clients
选项,用于指定每个 worker 创建的客户端对象数量。这些选项可以在named/
配置文件中的 lwres 语句中使用。lwres
d - BZ#956685
- 在这个版本中,增加了对输入区域文件中的 TLSA 资源记录类型的支持,如 RFC 6698 中指定的。TLSA 记录与域名系统安全扩展(DNSSEC)一起用于基于 DNS 命名实体(DANE)的身份验证。
名为
)将自动重启。
8.21. binutils
程序错误修复
- BZ#1128279
- 在以前的版本中,ld linker 可能会使用 DT_NEEDED 记录中的空字符串覆盖有效的 SONAME。因此,某些程序已被链接,且无法执行,因为某些库中的符号没有被加载。在这个版本中,ld linker 可以正确地处理 SONAME 中的空字符串,ld 链接的程序现在可以按预期执行。
- BZ#906079
- 为"ppc64"目标创建共享库时,ld linker 选择的 stub 默认不是线程的 stub。因此,如果多线程应用程序使用这样的共享库,对库的调用可能会失败。要解决这个问题,ld linker 现在使用 thread-safe linker stubs 为 "ppc64" 目标构建共享库。
- BZ#909056
- 如果存档使用了长名称,则 readelf 实用程序错误地假定一个较长的名称表将始终可用。因此,readelf 可能会在使用长名称但没有长名称的归档库中意外终止分段错误。要解决这个问题,readelf 现在会在归档库上验证是否存在长名称表。
- BZ#959422
- ld linker 错误地处理在调试(DWARF)部分中出现的某些 TLS 重新定位。因此,TLS 部分中某些变量的调试信息可能会不正确。在这个版本中,ld linker 可以正确地处理 DWARF 部分中的 TLS 重新定位,现在可以正确检查相关的 TLS 变量。
8.22. biosdevname
8.23. boost
8.23.1. RHBA-2014:1440 - 增强程序错误修复和增强更新
程序错误修复
- BZ#1037680
- 由于为 Red Hat Enterprise Linux 打包 Python 编程语言的方式,无法为辅助架构提供 boost 软件包。例如,x86-64 构架上不提供 boost-devel.i686。Python 打包已更新,现在可以安装 boost 软件包的二级架构版本。
- BZ#1021004
- shared_ptr pointer 中的编码错误之前,在序列化和取消序列化共享指针时会导致内存泄漏。shared_ptr 代码已被修正,内存泄漏不再发生。
- BZ#969183
- 由于 GNU Compiler Collection (GCC)版本 4.7 或更高版本的线程配置出现错误,Boost 无法检测到对 GCC 的多线程版本的支持。这个补丁修复了这个错误,Boost 现在会在上述情况下正确检测到多线程支持。
- BZ#1108268
- 在此次更新之前,很多 boost 库与 Red Hat Developer Toolset 提供的 GCC 不兼容。现在,一个修复已被用来解决这个问题,受影响的库现在可以与 Red Hat Developer Toolset GCC 正常工作。
- BZ#801534
- mpi.so 库之前在增强库中缺失。因此,将消息传递接口(MPI)与 Python 脚本结合使用会失败。在这个版本中,mpi.so 包含在 boost 软件包中,使用带有 Python 的 MPI 可以正常工作。
功能增强
- BZ#1132455
- MPICH2 库已被一个更新的版本 MPICH 3.0 替代。请注意,Boost 打包已被更新,新的软件包被命名为 boost-mpich* 而不是 boost-mpich2*。
8.24. c-ares
8.25. ca-certificates
8.26. ccid
8.26.1. RHBA-2014:1531 - ccid 程序错误修复更新
错误修复
- BZ#1071366
- 智能卡读取器有多种模式,其中的一些模式对可发送到智能卡的命令大小有限制。在以前的版本中,OmniKey 3121 支持允许较长命令但不支持标准 CCID 的操作模式。因此,在运行长命令时,用户会收到不可恢复的错误消息。这个版本可识别 OmniKey 3121 并启用较长的模式,以便在智能卡上成功执行较长的命令。
8.27. certmonger
错误修复
- BZ#1125342
- 在这个版本中解决了 certmonger 软件包中的 remove_known_ca dbus 调用的实现,以防止 certmonger 守护进程在 remove_known_ca 调用时意外终止。
功能增强
- BZ#1027265
- 在这个版本中,添加了 certmonger_selinux 手册页,以记录 SELinux 对 certmonger 守护进程的允许访问位置的影响。另外,selinux.txt 文档已添加到 certmonger 软件包中,以提供有关与 SELinux 交互的更多详细信息。对 certmonger_selinux 和 selinux.txt 的引用已添加到其他 certmonger man page 中。
8.28. cluster
8.28.1. RHBA-2014:1420 - 集群程序错误修复和功能增强更新
程序错误修复
- BZ#843160
- 在以前的版本中,当隔离代理完成或者 corosync 回调延迟时,隔离时间比较无法正常工作。因此,在等待隔离完成后,分布式锁定管理器(DLM)变得无响应。在这个版本中,被隔离或 corosync 回调顺序没有影响的不同时间戳会被保存并进行比较,DLM 在上述情况下不再挂起。
- BZ#1059269
- 在此次更新之前,"pcs stonith confirm <node>"命令无法确认 STONITH 隔离技术。因此,来自集群中其他节点或同一节点中的客户端的任何请求都会被忽略。已提供了一个补丁来修复这个错误,"pcs stonith confirm" 现在可以正常工作,"pcs stonith confirm" 现在可以正常工作。
- BZ#1029210
- 由于配置中的错误,在某些情况下 qdisk 守护进程在初始化时为等待周期使用不正确的 "tko" 参数。因此,qdisk 初始化过程可能会非常延迟,在某些情况下完全失败。在这个版本中,集群配置文件已被修复,qdisk 初始化现在可以按预期进行。
- BZ#980575
- 在以前的版本中,ccs_read_logging () 函数使用 create_daemon_path ()函数为属性生成特定于守护进程的 CCS 路径。因此,单个 logging_daemon 中的属性无法正确应用。这个程序错误已被解决,单个 logging_daemon 中的属性现在可以正确地应用。
- BZ#979313
- 由于 corosnync 中的代码错误,在 corosync 实用程序意外终止了分段错误后,qdiskd 守护进程会被驱除其他集群节点。底层源代码已被修补,如果 corosync 崩溃,qdiskd 不再驱除其他节点。
- BZ#1074551
- 在此次更新之前,运行 "ccs_tool -verbose"命令会导致 ccs_tool 意外终止,并显示分段错误。这个 bug 已被修复,ccs_tool 现在会返回一个错误信息。
- BZ#1059853
- 由于限制过限制的 umask,运行"gfs2_grow"命令会将 /etc/mtab 文件权限从默认的 644 改为 600。已提供了一个补丁来修复这个错误,gfs2_grow 不再重置 /etc/mtab 权限。
- BZ#1062742
- 在以前的版本中,fsck.gfs2 没有修复损坏的 quota_change 系统文件。因此,尝试挂载文件系统(FS)会导致错误,即使 fsck.gfs2 报告 FS 进行清理。有了这个补丁,如果 fsck.gfs2 找到损坏的 quota_change 文件,它可以重建它。现在,GFS2 会按预期成功挂载。
- BZ#1080174
- 以前,挂载已挂载的 GFS2 文件系统会导致进一步的挂载尝试完成。在这个版本中,mount.gfs2 不再在文件系统已挂载时保留挂载组,并尝试正确挂载已挂载的 GFS2 文件系统。
- BZ#1053668
- 在以前的版本中,在从 GFS 转换到 GFS2 后,GFS2 卷无法挂载,而 gfs2_convert 工具会中止分段错误。gfs2-utils 代码已被修补来解决这个问题,上述转换现在可以成功进行。
功能增强
- BZ#1081517
- 为了帮助调试和管理,fsck.gfs2 现在会在系统启动和结束时记录信息到系统日志。
8.29. ClusterMon
错误修复
- BZ#1076716
- 在以前的版本中,modcluster 服务会错误地处理大小为 4096 的大小的处理请求,以字节为单位,即读取缓冲区的大小。因此,modcluster 会错误地评估此类请求,如错误。这个程序错误已被解决,modcluster 现在像预期处理所有请求。
8.30. cmake
程序错误修复
- BZ#611250
- 在以前的版本中,cmake 软件包中缺少 FindGTK2.cmake 模块。因此,构建 GTK2 应用程序会失败。在这个版本中,添加了 FindGTK2.cmake 和 GTK2 应用程序,现在可以按预期构建。
- BZ#752864
- 在此次更新之前,CMake 在使用 rpmbuild-4.8 软件包时会忽略一些选项。因此,在基于 RPM 的系统上构建 RPM 软件包会失败。在这个版本中,CMake 可以与 rpmbuild-4.8 正常工作,以上问题将不再发生。
- BZ#896116
- 由于 "add_custom_target" 命令中有一个错误,CMake 以前在创建后不会检测到自定义目标。在这个版本中,"add_custom_target"可以正常工作,CMake 会如预期检测到创建的自定义目标。
8.31. coolkey
错误修复
- BZ#1125987
- 之前在 coolkey 代码中未初始化某个变量。如果该变量继承了单个"magic"值,则 coolkey 可能无法显示由 coolkey (CAC、PIV 或 coolkey 卡)控制的智能卡中的任何证书或密钥。因此,虽然智能卡被识别,但证书和密钥对一些应用程序不可见。在这个版本中,该变量被初始化为安全的值,coolkey 现在正确显示其证书和密钥。
8.32. coreutils
程序错误修复
- BZ#812449
- 在以前的版本中,当将符号链接指定为参数时,"df"命令不会显示目标设备信息。因此,会显示有关该文件的信息,而不是有关该设备的信息。这个版本应用了补丁来修复这个程序错误,在上述场景中"df"命令可以正常工作。
- BZ#1016163
- 如果没有指定用户,"id -G"和"groups"命令会打印密码数据库中列出的默认组 ID。因此,在某些情况下 ID 无效或不正确。在这个版本中,命令已被改进,只打印正确的 ID,从而显示有关组的正确信息。
- BZ#1046818
- 以前的 coreutils 软件包更新修复了 tail 实用程序,以正确处理符号链接。但是,由于此次更新,尾部返回有关恢复到轮询的不必要的警告。这个版本提供了一个补丁来修复这个程序错误,只有在需要时才显示警告信息。
- BZ#1057026
- coreutils 软件包的最新更新将输出格式从"df"和"df -k"命令改为每个条目所需的一行,这是 POSIX 模式所必需的。因此,脚本依赖于每个条目格式的前两行启动失败。要修复这个程序错误,双行条目已重新引入 POSIX 以外的模式输出。因此,依赖双行格式的脚本不再会失败。
- BZ#1063887
- 最近对 coreutils 软件包的更新会在 su 实用程序中的信号处理中造成回归问题。因此,当收到 SIGTERM 信号时,父进程会终止,而不是 su 进程。在这个版本中,处理 SIGTERM 信号已被修复,su 不再在收到终止信号时终止父进程。
- BZ#1064621
- chcon (1)手册页在解引用符号链接时没有描述默认行为;没有记录"--dereference"选项。在这个版本中,在手册页中添加了适当的信息。
- BZ#1075679
- 某些文件系统(如 XFS)具有特殊功能,如指定内存漏洞的预分配。这些功能可能会导致上游测试套件中的"dd"命令测试失败。因此,无法在 XFS 文件系统上重新构建 coreutils 软件包源 rpm。为了解决这个程序错误,测试已被改进,以防止在上述场景中出现失败。
- BZ#1104244
- "tail --follow"命令使用 inotify API 来跟踪文件中的更改。但是,inotify 不适用于远程文件系统,而 tail 实用程序应该回退到轮询此类文件系统上的文件。在以前的版本中,远程文件系统列表中缺少 Veritas 文件系统,因此"tail --follow"没有显示此文件系统上的文件更新。Veritas 文件系统已添加到远程文件系统列表中,不再出现这个问题。
功能增强
- BZ#1098078
- 这个版本增强了 "dd" 命令以支持 count_bytes 输入标记。当指定标志时,计数将被视为字节数,而不是块的数量。此功能在复制虚拟磁盘镜像时很有用。
8.33. corosync
程序错误修复
- BZ#1067043
- 如果在其中一个节点上的 corosync 暂停时,活跃集群节点上的 cpg 客户端被终止,则 corosync 在恢复后无法正确更新其他节点上 cpg 客户端的内部信息。因此,该节点认为已终止的 cgp 客户端仍然启动并运行。这个版本修改了 cpg 代码,以确保 corosync 正确更新关于 cpg 成员资格的信息。
- BZ#1011307
- 在以前的版本中,当在 /dev/shm 设备已满的系统中启动时,corosync 会意外终止并出现分段错误。这是因为 corosync 日志记录系统 logsys 无法正确初始化。这个版本改进了 logsys 初始化的处理,corosync 现在会显示一个适当的错误消息,并在无法初始化 logsys 时安全地退出。
- BZ#1025321
- 由于 Corosync Closed Process Group (CPG) API 中的列表损坏错误,在某些情况下,corosync 可能会意外终止并出现分段错误。要解决这个问题,corosync 已被修改来处理同一线程中的 CPG init 并列出删除功能。
- BZ#1005179
- 在以前的版本中,如果文件无法将文件存储到用户的文件系统,corosync 可以在没有记录错误的情况下中止。有了这个更新,corosync 现在可以正确地验证"blackbox"是否可以存储在文件系统中。环 ID 存储操作故障不再被 assert 处理,但 corosync 现在尝试记录错误,然后安全退出。
- BZ#1001210
- 在以前的版本中,当将 InfiniBand 架构(IBA)用作 corosync 的传输协议时,corosync 无法正确处理 IBA 子网管理器(SM)的重启。如果 IBA SM 重启,则 corosync 无法启动或变得无响应(如果已经运行)。解决此问题的一系列补丁已应用到 corosync,现在在这种情况下,它现在可以正常工作。
8.34. cpupowerutils
错误修复
功能增强
- BZ#1093513
- 在这个版本中,在 turbostat 工具中添加了对 Intel Broadwell Microarchitecture 的支持。
8.35. crash-trace-command
错误修复
- BZ#895899
- 在以前的版本中,crash-trace-command 会显示不正确的 "Packager" 和 "Vendor" 信息。在这个版本中,crash-trace-command 会如预期在这些字段中打印 "Red Hat, Inc."。
8.36. crda
8.36.1. RHEA-2014:1607 - crda 增强更新
8.37. createrepo
程序错误修复
- BZ#1035588
- 在以前的版本中,createrepo 工具无法正确测试文件锁定。因此,当在一个位于 NetApp 存储设备提供的通用互联网文件系统(CIFS)共享的目录中执行时,createrepo 会意外终止。文件锁定的测试已被修正,在创建repo 现在在上述情况下可以正常工作。
- BZ#1083185
- 在以前的版本中,如果 createrepo 工具是使用"-i"或"--pkglist"选项执行的,且指定的文件名不存在,createrepo 会意外终止。createrepo 工具已被修改来处理这个错误条件,现在它会在这种情况下安全退出。
- BZ#1088886
- 在以前的版本中,createrepo 软件包有描述,它们没有表示软件包中存在维护工具。此更新更正了此遗漏。
功能增强
- BZ#952602
- 在这个版本中引进了对 modifyrepo 工具的以下新选项的支持:"--checksum",用于指定校验和类型;"--unique-md-filenames",用于在文件名中包含文件的校验和;以及 "--simple-md-filenames",用来在文件名中包含文件的校验和。"--unique-md-filenames" 选项是该实用程序的默认选项。
- BZ#1093713
- 在以前的版本中,modifyrepo (1)和 mergerepo (1)手册页没有描述某些选项。这些 man page 现在记录了以下 modifyrepo 工具命令行选项: "--mdtype", "--remove", "--compress", "--no-compress", "--compress-type", "---checksum", "--unique-md-filenames", "--simple-md-filenames", "---version", 和 "--help"。这些 man page 现在记录了以下 mergerepo 工具命令行选项:"--no-database", "--compress-type", "--version", 和 "--help"。
8.38. cryptsetup-luks
功能增强
- BZ#1009707
- FIPS 产品现在通过在系统中存在 dracut-fips 软件包来定义。在库初始化过程中,应该使用加密模块来确定库是否为 FIPS 产品,以减少所需的完整性测试量。为此,在 cryptsetup-libs 库中添加了一个新的构造器函数。构造器会检测 /etc/system-fips 文件(它是 dracut-fips 的一部分)是否存在于系统中,并确定是否需要 FIPS 完整性测试。
8.39. ctdb
程序错误修复
- BZ#987099
- 在此次更新之前,CTDB 有时会等待很长时间以便建立文件锁定。因此,访问 CTDB file-server 集群的客户端可能会因为高延迟而超时。在这个版本中,底层代码已被修复,来解决这个问题,客户端现在可以在没有超时的情况下访问 CTDB file-server 集群中的文件。
- BZ#1075913
- 在以前的版本中,当 CTDB 配置为使用两个绑定接口时,CTDB 无法为第二个绑定接口分配 IP 地址。因此,即使实际状态为 "OK",集群节点的集群状态也会显示为 "PARTIALLYONLINE"。处理网络接口的脚本已被修复,集群状态会显示正确的值。
- BZ#1085413
- 在此次更新之前,在某些情况下 CTDB 会尝试在无效的地址释放分配的内存,这会导致 CTDB 意外终止分段错误。在这个版本中,底层代码和 CTDB 使用正确的地址来释放分配的内存。因此,崩溃不再发生。
8.40. cups
安全修复
- CVE-2014-2856
- CUPS Web 界面中发现了一个跨站点脚本(XSS)缺陷。攻击者可以利用此漏洞对 CUPS Web 界面的用户执行跨站点脚本攻击。
- CVE-2014-3537CVE-2014-5029CVE-2014-5030CVE-2014-5031
- 发现 CUPS 允许特定用户在
/var/cache/cups/
下的特定目录中创建符号链接。具有lp
组特权的本地用户可能会使用此缺陷来读取系统上的任意文件的内容,或者可能在系统上升级其权限。
程序错误修复
- BZ#769292
- 当在轮询配置的 BrowsePoll 服务器过程中暂停系统时,恢复系统保留
cups-polld
进程,等待响应,即使连接已被丢弃,从而导致发现的打印机消失。现在,会使用 HTTP 超时,以便可以重试请求。因此,使用 BrowsePoll 的打印机现在在上述场景中仍然可用。 - BZ#852846
- CUPS 调度程序中的 HTTP 多部分处理问题会在尝试使用 Web 界面添加打印机时导致一些浏览器无法正常工作。这个问题已通过从更新的版本应用补丁来解决,在添加打印机时,所有浏览器现在可以按预期工作。
- BZ#855431
- 当发现的远程队列被决定不再可用时,会删除本地队列。当针对此类目的地排队时,CUPS 调度程序中的逻辑错误会导致问题。这个程序错误已被解决,作业不会为删除队列启动。
- BZ#884851
- CUPS 维护一个常用字符串值的缓存。在以前的版本中,当修改返回的字符串值时,缓存会丢失其一致性,这会导致增加内存用量。更正此问题的实例,将返回的值视为只读。
- BZ#971079
- 添加了缺少的检查,防止调度程序在记录有关无法决定作业文件类型的消息时终止。
- BZ#978387
- 应用了对互联网打印协议(IPP)版本 2.0 回复中错误处理集合属性的修复。
- BZ#984883
- 在修改其状态文件时,CUPS 调度程序没有使用
fsync()
功能,如printers.conf
,这可能会导致在断电时截断 CUPS 配置文件。添加了一个新的cupsd.conf
指令SyncOnClose
,以便在这些文件中使用fsync()
。指令默认为启用。 - BZ#986495
- 作业的默认环境变量在读取 CUPS 配置文件之前设置,从而导致
cupsd.conf
文件中的SetEnv
指令无效。现在,在读取配置后,变量可以被设置,SetEnv
可以正常工作。 - BZ#988598
- 因为在 spec 文件中使用较新的语法,RPM 软件包管理器(RPM)无法构建 cups 软件包。现在,使用更可移植的语法,允许旧版本构建 CUPS。
- BZ#1011076
cupsctl
命令的一个示例选项中的拼写拼写错误已在cupsctl (8)
man page 中进行了修复。- BZ#1012482
- CUPS 附带的
cron
脚本具有不正确的权限,允许对脚本进行全局读取。现在,该文件被授予权限 “0700”,删除组和全局可读权限。 - BZ#1040293
- 在某些情况下,通用安全服务(GSS)凭证会被缓存。这个行为不正确,因为发送缓存的副本可能会导致拒绝,因为明显的 “重播” 攻击。应用了补丁来防止重播 GSS 凭证。
- BZ#1104483
- 处理 Web 界面的代码逻辑错误使得无法更改 web 界面中队列的
Make 和 Model
字段。现在,一个补丁已被用来修复这个程序错误,现在可以按预期更改字段。 - BZ#1110045
- CUPS 调度程序不会检查客户端连接在读取前是否有数据可以被读取。这个行为在某些实例中导致 10 秒超时。调度程序现在在读取前检查数据可用性,避免超时。
- BZ#1120419
- CUPS 调度程序没有正确执行通用网关接口(CGI)脚本,从而导致对此类脚本的请求失败。现在,通过应用补丁和脚本可以正确执行对 CGI 脚本的参数处理已被修复。
cupsd
守护进程将自动重启。
8.41. cyrus-sasl
程序错误修复
- BZ#838628
- 发现 Digest MD5 插件中的内存泄漏。具体来说,make_client_response ()函数无法正确释放输出缓冲区。因此,使用带有非常大的数据集的 Digest MD5 的应用程序可能会意外终止。在这个版本中修正了 make_client_response (),并关闭内存泄漏。因此,使用 Digest MD5 作为带有大型数据集的身份验证的一部分的应用程序现在可以正常工作。
- BZ#1081445
- 在以前的版本中,当用户使用 useradd 命令创建,在 cyrus-sasl.spec 文件中会使用不必要的引号字符。因此,Saslauth 用户在注释字段中使用引号("Saslauthd user")创建。在这个版本中,不需要的引号已从注释字段中删除。
功能增强
- BZ#994242
- ad_compat 选项已向后移植到来自上游的 cyrus-sasl 软件包。这个选项控制与 AD 或类似服务器的兼容性,它们需要在安全层协商过程中选择完整性和机密位。
8.42. device-mapper-multipath
程序错误修复
- BZ#1009061
- 当在特定设备上运行命令时,多路径工具不接受使用 major:minor 格式的设备规格。这个程序错误已被解决,多路径设备现在可以使用路径设备 major:minor 规格与多路径设备关联。
- BZ#1027061
- 在以前的版本中,在计算要读取的块数量时,readsector0 检查程序不会考虑 blocksize,这会导致 readsector0 在 512 字节设备上读取太多,从而导致设备错误。在这个版本中,readsector0 在计算要读取的数量时考虑设备 blocksize,512 字节设备现在可以按预期与 readsector0 检查器一起工作。
- BZ#1049637
- 在此次更新之前,处理 multipathd sysfs 设备的代码可能会释放设备结构,而其他数据仍指向该设备。因此,multipathd 守护进程偶尔可能会遇到 use-after-free 内存崩溃,从而导致意外的终止。multipathd 的 sysfs 设备处理代码已被重写,multipathd 在仍在使用时不再释放 sysfs 设备内存。
- BZ#1078485
- 一些 multipathds prioritizers 运行 scsi 命令,并带有较长的超时。这些优先级程序不会异步运行,multipathd 会处于忙碌等待超时。因此,当路径失败时,multipathd 守护进程可能会变得无响应,只要 5 分钟。在这个版本中,优先级程序使用 "checker_timeout" 选项来配置它们的超时时间。现在,可以使用 checker_timeout 选项调整优先级超时以防止 multipathd 挂起。
- BZ#1080052
- 当多路径设备在 multipathd 守护进程之外重新载入,且从现有路径从设备中删除时,mutipathd 仍然被视为多路径设备。因此,multipathd 会尝试访问不存在的 path_group,并意外终止。在这个版本中,multipathd 可以正确地分离删除的路径,在外部程序删除现有路径时不再崩溃。
- BZ#1086417
- 如果 multipathd 守护进程无法添加多路径设备表的路径,则路径被错误地孤立。因此,多路径工具将路径视为属于多路径设备,multipathd 可能会尝试切换到不存在的 path_group。底层源代码已被修复,multipathd 现在可以正确地添加到多路径设备表中。
功能增强
- BZ#1054747
- 在这个版本中,添加了 force_sync multipath.conf 选项。将 force_sync 设置为 "yes" 可让 multipathd 守护进程以异步模式调用路径检查程序,它会强制 multipathd 一次只运行一个检查程序。另外,在设定此选项时,当存在大量路径时,multipathd 不再会占用大量 CPU。
- BZ#1088013
- 在以前的版本中,默认路径排序通常导致 Round Robin 路径选择器选择多个路径到同一控制器,从而减少了多个路径的性能优势。在这个版本中,多路径重新排序设备路径以在设备控制器之间进行交错,从而提高性能。
- BZ#1099932
- 在这个版本中,增加了对 "fast_io_fail_tmo" 选项的 iscsi 支持,以便用户修改多路径响应失败的 iscsi 设备的速度。
- BZ#1101101
- 在这个版本中,"-w"和"-W"选项已添加到多路径中;"-w"选项会从 wwids 文件中删除命名 WWID,"-W"选项会从 wwids 文件中删除所有 WWID,除了当前多路径设备的 WWID 除外。
8.43. device-mapper-persistent-data
错误修复
- BZ#1035990
- thin_dump 工具以及其他持久性数据工具只在访问的设备中只支持 512 B 块大小。因此,持久性数据工具可能会执行 I/O,以错误地对齐缓冲区。底层源代码已更新为支持 4 KB 块大小,从而解决了这个问题。
8.44. dhcp
8.44.1. RHBA-2014:1406 - dhcp 程序错误修复更新
程序错误修复
- BZ#1015997
- 当 dhcpd 守护进程收到值为 0xffff 的数据包时,数据包会被丢弃。在这个版本中,值为 0xffff 的 checksum 被认为正确,数据包会按预期处理。
- BZ#1053155
- 在以前的版本中,用户无法运行 dhcrelay 服务的 IPv6 版本,因为没有这样的启动脚本。要修复这个程序错误,dhcrelay 的启动脚本已被添加,用户现在可以为 dhcrelay 的 IPv6 版本运行服务。
- BZ#1053431
- 当 dhcpd 守护进程的 IPv6 版本提供太多请求时,/var/lib/dhcpd/dhcpd.leases 文件会分配w uncontrollably 的大小。因此,dhcpd 拒绝重启并显示以下错误消息:文件太长时间进行缓冲现在,上游补丁已被向后移植来解决这个问题,IPv6 的 dhcpd 现在会轮转 /var/lib/dhcpd/dhcpd.leases,以防止它增长。
- BZ#1064416
- 当在 Infiniband 卡(IPoIB)上使用 ISC DHCP 服务器和客户端时,称为 GUID 的硬件地址不会出现在日志中。在这个版本中,在 IPoIB 日志中添加了 GUID。
- BZ#1067142
- 每次启动 dhcpd 守护进程时,/var/lib/dhcpd/dhcpd.leases 文件的所有权都从 dhcpd:dhcpd 改为 root:root。Fedora 补丁已向后移植来修复这个错误,/var/lib/dhcpd/dhcpd.leases 的所有权不再改变。
- BZ#1099698
- 当配置 dhcpd 守护进程并为客户端使用非常长的租期时,启动 dhcpd 时会返回以下错误:无法写入租期应用了补丁来修复这个错误,错误消息不再出现在日志中。
- BZ#1102662
- 在以前的版本中,当启动 dhcpd 守护进程或 dhcrelay 代理时,用户会指定网络接口的名称。如果超过 15 个字符,dhcpd 或 dhcrelay 会意外终止并出现以下错误消息:*** 缓冲溢出检测到了 ***现在,一个补丁已被向后移植来修复这个程序错误,dhcpd 或 dhcrelay 现在会被安全退出,并显示一个新的错误消息,告知用户接口名称太长。
8.45. ding-libs
8.46. dnsmasq
错误修复
- BZ#991473
- 在以前的版本中,初始化脚本中的 Dnsmasq 服务状态验证不够强大,仅确定系统中正在运行的 Dnsmasq 的所有实例是否存在。因此,即使没有启动 Dnsmasq 系统实例,init 脚本也会把 Dnsmasq 识别为正在运行。已修复初始化脚本,以明确验证系统实例的 PID 文件中带有进程 ID 的进程。因此,即使运行的实例没有由初始化脚本启动,也可以正确识别 Dnsmasq 系统实例的状态。
8.47. dracut
程序错误修复
- BZ#1022766
- 引进了 Anaconda "fcoe=edd:<dcb_setting>" 选项,以允许多路径配置中的系统从存储区域网络(SAN)引导。在以前的版本中,选项只适用于使用增强磁盘驱动器服务(EDD) BIOS 的系统。因此,不使用 EDD (如基于 UEFI 的系统)的系统无法从 SAN 引导。在这个版本中,选项已被改进,以便适用于所有系统。
- BZ#1026302
- 在 FIPS 模式中,只有在 /etc/system-fips 文件存在时才进行二进制文件的自我检查。dracut 工具没有在初始 ram 文件系统(initramfs)中复制 /etc/system-fips 和某些校验和文件。因此,无法进行对解密分区所需的二进制文件进行自我检查,因此无法解锁分区。现在,dracut 复制 initramfs 中所有需要的文件,带有加密磁盘的系统现在可以在 FIPS 模式中成功引导。
- BZ#1033784
- dracut (8)手册页没有描述某些新功能。在这个版本中,缺少的信息被添加到手册页中。
- BZ#1041484
- initrd 镜像中缺少 nvme 驱动程序。因此,当在非易失性内存表达(NVMe)存储上安装 Red Hat Enterprise Linux 时,安装后重启会失败。在这个版本中,添加了缺少的驱动程序,Red Hat Enterprise Linux 可以如预期在 NVMe 存储中安装。
- BZ#1051448
- 只有 plymouth 模块负责创建 initramfs /emergency/ 目录。当在安装过程中省略该模块时,/emergency/ 不会被创建。这个行为会导致返回错误,因为其他模块还需要 /emergency/。在这个版本中,无论载入的模块是什么,都会创建 /emergency/。
- BZ#1070676
- 只有在加载 btrfs 内核模块后,/dev/btrfs-control 设备节点才会创建。在以前的版本中,在模块被意外终止前试图访问节点的工具。现在,dracut initramfs 环境静态创建设备节点。因此,当实用程序尝试访问节点时,内核会自动加载 btrfs,因此在上述场景中,工具不再会失败。
- BZ#1099603
- 只能在网络接口成功启动后,才能执行 iscsistart 实用程序(用于添加 iSCSI 磁盘)。当内核命令行上没有正确指定接口时,就无法运行 实用程序并从 iSCSI 磁盘引导系统。现在,当在内核命令行中请求 iSCSI 磁盘时,即使没有正确指定网络接口,dracut initramfs 环境也会运行 iscsistart,从而允许系统从 iSCSI 磁盘引导。
- BZ#1126346
- 当 iSCSI 服务器不可用时,iscsistart 工具需要很长时间才能连接它,这会减慢引导过程的速度。有了这个更新,iscsistart 现在在后台启动,因此可以在 iSCSI 服务器可用后立即连接到 iSCSI 服务器。因此,引导不再需要大量时间。
功能增强
- BZ#737687
- 在这个版本中,当主设备失败时,服务器可以从辅助设备引导。新的 "rootfallback=<secondary_device>" 参数已添加到 dracut 参数中。当无法找到使用 "root=<primary_device>" 参数指定的主设备时,会使用此参数。
8.48. e2fsprogs
程序错误修复
- BZ#1036122
- resize2fs 工具有时会在 ext4 文件系统离线调整大小过程中导致文件系统崩溃。这是因为 resize2fs 在执行调整大小操作前没有保留所有现有的元数据块。在这个版本中修复了 resize2fs,以在这种情况下保留所有现有的元数据块。
- BZ#1040122
- tune2fs 手册页指出"-f"选项可用于删除文件系统日志,即使日志需要重播。但是,之前版本的 tune2fs 的行为与记录不同。此更新允许 tune2fs 在命令行上提供两个"-f"选项来删除脏日志。
- BZ#1093446
- 对于以前的 mke2fs 版本,可以使用 "-r" 选项在命令行中指定不受支持和卸载的文件系统修订。mke2fs 工具现在拒绝创建一个大于当前支持的修订版本的文件系统。
- BZ#1097061
- 在以前的版本中,e2image 程序可以根据挂载的块设备运行,从而导致元数据镜像不一致。在这个版本中,如果挂载了块设备,e2image 程序会显示一个警告信息,并在这种情况下需要"-f"选项。
- BZ#1112242
- 对于以前的 e2fsck 版本,不会报告或修复 "zeroed-out" 目录块。e2fsck 工具现在检测并修复这类损坏。
功能增强
- BZ#1052409
- enable_periodic_fsck 选项已添加到 /etc/mke2fs.conf 中,以便在使用 mke2fs 工具创建新文件系统时启用或禁用定期 e2fsck 操作。默认启用定期文件系统检查。
8.49. edac-utils
错误修复
- BZ#679812
- 在以前的版本中,edac-utils 软件包初始化脚本的退出状态没有正确设置。因此,运行 'service edac status' 命令返回退出状态 0,这不是预期的行为,因为执行 'service edac start' 命令后没有运行任何程序。在这个版本中,在上述情形中,返回的退出状态已更改为 3。
8.50. efibootmgr
错误修复
- BZ#1121782
- 在以前的版本中,在引导过程中,有些较新的机器会创建大于 1024 字节的变量,内核 API 用于统一可扩展固件接口(UEFI)不支持。因此,efibootmgr 工具收到尝试读取这些变量的错误,并跳过它们,这会导致 anaconda 无法创建引导变量。在这个版本中,efibootmgr 会显示变量,但不显示其内容。因此,Anaconda 能够读取大型变量,并成功创建引导变量。
8.51. elfutils
程序错误修复
- BZ#755728, BZ#1059897
- 在这个版本中引进了 eu-stack 工具,用来检索进程或核心文件的后端追踪。* elfutils libdwfl ()函数已扩展,以支持将进程状态与 Dwfl 对象相关联。可以使用新的 dwfl_core_file_attach ()和 dwfl_linux_proc_attach ()函数将状态附加到进程或核心文件。当状态附加到 Dwfl 对象时,可以使用新的函数 dwfl_getthreads ()来迭代正在运行的线程。每个线程可以使用新的 dwfl_getthread_frame_frames ()函数检查调用堆栈上的帧。* 库和工具提供各种改进来识别 DWARF 版本 4、DWARF GNU 工具链扩展(类型 DWARF 堆栈、调用_site、条目_value、DW_AT_high_pc、DW_OP_GNU_parameter_ref 和实验支持 DWZ 多文件)以及处理 DWARF 位置表达式的新功能。* eu-readelf 工具现在支持 "/SYM64/" 特殊条目来读取 IBM System z 架构中使用的 64 位 ar 归档文件。
- BZ#1101440
- 在此次更新之前,eu-readelf 工具无法读取缺少字符串表的损坏的 ELF 文件。因此,eu-readelf 会意外终止,并显示分段错误。在这个版本中,eu-readelf 已被修复,可以跳过带有不存在的字符串表的数据部分,并只读有效数据。因此,在这种场景中 eu-readelf 不再会崩溃。
- BZ#806474
- 在以前的版本中,由于某些工具链工具中的错误,主 ELF 文件和单独的 debuginfo 文件有不同的标头类型或标志。因此,eu-unstrip 工具无法组合 ELF 文件和单独的 debuginfo 文件。当主 ELF 文件在调试信息被分隔到 debuginfo 文件中时,会出现同样的问题。有了这个更新,eu-unstrip 会显示类似于"ELF 标头识别(e_ident)不同"的警告信息,如果无法组合剥离和未传输的文件,则显示哪些标头字段不匹配。另外,还添加了 "--force" 选项,以便用户可以忽略警告并组合这些文件。另外,如果 DWARF 数据需要调整 bias,则 eu-unstrip 会输出警告消息。因此,eu-unstrip 现在会显示适当的警告信息,不匹配主 ELF 和单独的 debuginfo 文件可以使用 "--force" 选项将其重新编译到其中。
8.52. ethtool
程序错误修复
- BZ#1003891
- 在以前的版本中,ethtool 工具不支持 Backplane 链接类型。因此,在 be2net 设备上,ethtool 不会返回"支持的链接模式"和"解析链接模式"。在这个版本中,添加了对 Backplane 的支持,ethtool 现在会如预期返回 "supported link mode" 和 "advertised link mode"。
- BZ#1010843
- 在以前的版本中,当尝试设置 Large Receive Offload (LRO)选项时,ethtool 工具无法正确与网络设备驱动程序通信。因此,无法在支持 LRO 的设备上设置 LRO 选项。在这个版本中,ethtool 已被修复,与网络设备驱动程序正确通信,现在可以在网络设备上设置 LRO 选项。
- BZ#1018367
- 由于 ixgbe 驱动程序的更改,非原始模式的"ethtool -d"命令停止提供输出。因此,"ethtool -d"无法用来检查 ixgbe 设备的状态。要修复这个程序错误,ethool 已被修改为使用新的 ixgbe 设备驱动程序,而非原始模式下的"ethtool -d"命令现在可以在 ixgbe 设备上再次使用。
功能增强
- BZ#1105589
- 在这个版本中,ethtool 工具支持 e1000、e1000e 和 igb 驱动程序上的 Medium Dependent Interface crossover (MDI-X)模式设置。
8.53. evolution
程序错误修复
- BZ#1052955
- 在以前的版本中,在 Evolution 应用程序中选择时间格式的选项不适用于某些语言。因此,日历组件编辑器总是以 24 小时格式显示时间。在这个版本中,根据用户选择在 Edit 菜单中显示正确的时间格式: Preferences、Calendar 和 Tasks。
- BZ#1054772
- 在此次更新之前,新创建的本地地址图书没有正确设置。因此,无法删除 Evolution 应用程序中的地址图书,并显示不正确的数据。在这个版本中,地址图书可以被移除,分隔的地址书中的联系人只在适当的地址书中保持可见,添加、编辑和删除操作不再会导致任何不一致的情况。
- BZ#1054865
- 在以前的版本中,Evolution 应用程序并不总是正确处理新的附件。因此,附加大型文件会导致 Evolution 应用程序在某些情况下意外终止。补丁已被应用于解决这个程序错误,添加新附件不再会导致 Evolution 崩溃。
- BZ#1070846
- 在以前的版本中,Evolution 应用程序只显示智能卡 PIN 的一般提示。因此,用户可以不确定要输入的 PIN。这个版本改进了提示符,用户现在知道请求的 PIN 所属的证书。
- BZ#1080467
- 在此次更新之前,Evolution 应用程序无法正确处理调用 "Mark All As Read" 功能。因此,Evolution 可能会变得无响应,直到操作完全完成为止。已提供了一个补丁来解决这个问题,Evolution 在上述情况下不再挂起。
- BZ#1139166
- 在以前的版本中,在显示新电子邮件通知时可能会出现错误。因此,在某些情况下,Evolution 应用程序无法正常工作。在这个版本中,这个程序错误已被解决,并正确显示电子邮件通知。
8.54. evolution-data-server
错误修复
- BZ#1040178
- 由于表访问错误,Evolution 以前在启动时变得无响应。这个版本修复了表访问的锁定,Evolution 现在会如预期启动。
功能增强
- BZ#1042996
- 在这个版本中,对邮件帐户的 TLS 版本 1.2 的支持已添加到 Evolution 中。
8.55. fence-agents
程序错误修复
- BZ#641632, BZ#642232, BZ#841556, BZ#1114528
- 在以前的版本中,无法在 fence_brocade 代理中输入超时选项。此外,已发布的命令不具有持久性,这可能会在重启隔离硬件时造成问题。另外,当输入无效的密码时,隔离代理会作为 stale 进程终止,而不会向用户报告任何错误消息。这个更新提供了新的隔离代理实现,可解决上述错误。
- BZ#990537
- 在以前的版本中,fence_ilo 代理的用户无法输入包含引号字符(" 的密码。在这个版本中,用户可以如预期在密码中输入任何字符。
- BZ#1018263
- 如果登录到 fence_vmware_soap 设备的用户名没有设置了正确的特权,则会抛出 python 异常。在此次更新之前,当用户没有所需操作的权限时,fence_vmware_soap 代理会终止异常。在这个版本中,用户会收到这些特权不够的错误信息。
- BZ#1048842
- 在以前的版本中,隔离代理可以通过 SSH 使用基于密钥的身份验证,即使用户想要使用密码身份验证。因此,用户无法登录。在这个版本中,确保使用正确的身份验证,用户现在可以使用密码身份验证登录。
- BZ#1050022
- 在以前的版本中,使用 fence_scsi_check.pl watchdog 脚本无法导致 soft 或 clean 重启失败。但是,当使用全局文件系统 2 (GFS2)或其他文件系统时,卸载文件系统可能会被阻止。这个版本提供了一个新的 fence_scsi_check_reboot.pl 脚本,它可确保硬重启,同时卸载不再会出现问题。
- BZ#1051159
- 在此次更新之前,fence_vmware_soap 隔离代理不支持 "--delay" 选项,这对避免隔离竞争是不可避免的。这个更新添加了 "--delay" 选项,它会延迟启动给定秒数的隔离代理,从而防止隔离争用发生。
- BZ#1069618
- 在以前的版本中,fence_apc 工具使用 SSH1 连接进行硬编码。因此,fence_apc 无法连接到需要 SSH2 连接的电源分发单元。这个更新引进了 "--ssh-options" 选项,该选项可以在 fence_apc 中指定 SSH 连接选项。因此,所有支持 SSH 的隔离代理现在可以调整,以满足隔离设备的 SSH 要求。
- BZ#1110428
- 在以前的版本中,fence_rsb 代理无法使用特定版本的固件。因此,在 outlet 关闭后 fence_rsb 会失败。但是,fence_rsb 保留在发出 命令,以重新打开 outlet。在这个版本中,支持新的固件版本,fence_rsb 可以成功关闭和在 outlet 中成功。
- BZ#1075683
- 在此次更新之前,如果使用身份文件作为身份验证方法,使用 SSH 协议连接的隔离代理在登录时会失败。这个程序错误已被解决,这些隔离代理现在可以通过身份文件成功进行身份验证。
8.56. fence-virt
程序错误修复
功能增强
8.57. file
安全修复
- CVE-RHGS237,CVE-RHGS238,CVE-2014-3479,CVE-2014-3480,CVE-2012-1571
- 在解析某些 Composite Document Format (CDF)文件的方式中发现多个拒绝服务漏洞。远程攻击者可以利用这些漏洞通过特殊设计的 CDF 文件来使用这些文件或使用文件的应用程序。
- CVE-2014-1943,CVE-2014-2270
- 在处理间接和搜索规则的方式中发现了两个拒绝服务漏洞。远程攻击者可以利用这些漏洞导致文件或使用文件的应用程序崩溃或消耗大量 CPU。
程序错误修复
- BZ#664513
- 在以前的版本中,"file"命令的输出包含冗余空格。在这个版本中,引进了新的 STRING_TRIM 标志来删除不必要的空格。
- BZ#849621
- 由于一个程序错误,"file"命令可能会错误地将 XML 文档识别为 LaTex 文档。底层源代码已被修改来解决这个问题,命令现在可以按预期工作。
- BZ#873997
- 在以前的版本中,"file"命令无法识别 .JPG 文件,并错误地将其标记为"Minix 文件系统"。这个程序错误已被解决,命令现在可以正确检测到 .JPG 文件。
- BZ#884396
- 在某些情况下,"file"命令会错误地检测到 NETpbm 文件为 "x86 boot sector"。这个版本应用了补丁来修复这个程序错误,命令现在会如预期检测到 NETpbm 文件。
- BZ#980941
- 在以前的版本中,"file"命令会错误地将 ASCII 文本文件识别为 .PIC 镜像文件。在这个版本中,提供了一个补丁来解决这个问题,命令现在可以正确地识别 ASCII 文本文件。
- BZ#1037279
- 在 32 位 PowerPC 系统中,"file"命令的输出中缺少"from"字段。底层源代码已被修改来修复这个错误,"file"输出现在会如预期包含"from"字段。
- BZ#1064463
- "file"命令错误地检测到文本文件为 "RRDTool DB 版本 ool - Round Robin Database Tool"。这个版本应用了补丁来修复这个程序错误,命令现在可以正确地检测到文本文件。
- BZ#1067771
- 在以前的版本中,"file"命令只支持 QCOW 格式的版本 1 和 2。因此,文件无法检测在 Red Hat Enterprise Linux 7 中创建的 "qcow2 compat=1.1" 文件。在这个版本中,添加了对 QCOW 版本 3 的支持,以便命令现在可以按预期检测这些文件。
8.58. file-roller
错误修复
- BZ#718338
- 在以前的版本中,file-roller 应用程序无法正确处理带有空格的文件名。因此,在向归档中添加文件时可能会出现错误,因为 file-roller 无法识别空格的名称,例如在 Nautilus 文件管理器中使用"Compress"菜单项时。在这个版本中,file-roller 使用正确的 API 来处理文件名。因此,归档会如预期创建,在上述情况下不再发生错误。
8.59. finger
8.59.1. RHBA-2014:0587 - finger 程序错误修复更新
错误修复
- BZ#816328
- 当在 nsswitch.conf 文件中指定"compat"方法时,允许在 /etc/passwd 文件中使用包含"+"或"-"字符的特殊条目。在以前的版本中,当 finger 工具在具有 /etc/passwd 中特殊条目的主机上使用"username"参数运行时,finger 会终止分段错误。在这个版本中,处理 "username" 参数的代码已被修复,执行必要的检查,finger 工具不会在上述场景中崩溃。
8.60. flex
8.60.1. RHBA-2014:1402 - flex 程序错误修复更新
错误修复
- BZ#570661
- 在以前的版本中,32 位和 64 位构架的 flex 静态库在同一个软件包中包含。因此,尝试在 x86_64 系统上编译 i386 代码会失败,除非删除了 64 位版本的 flex 工具。在这个版本中,库已移到独立的软件包中,flex 在上述场景中可以正常工作。
8.61. fontconfig
程序错误修复
- BZ#1035416
- 在以前的版本中,当字体缓存文件存储在网络文件系统(NFS)上时,fontconfig 库有时无法正确处理 mmap ()调用。因此,使用 fontconfig 的应用程序(如 GNOME 终端)可能会意外终止,并显示 bus 错误。在这个版本中,添加了 FONTCONFIG_USE_MMAP 环境变量来处理 mmap ()调用,无论文件系统如何,这些调用将不再使用,如果缓存文件存储在 NFS 中,则不再使用这些调用。因此,在上述情形中不再会出现总线错误。
- BZ#1099546
- 在以前的版本中,25-no-bitmap-fedora.conf 文件名包含单词 'fedora',但 Red Hat Enterprise Linux 中的文件名不应包含单词 'fedora'。在这个版本中,25-no-bitmap-fedora.conf 已重命名为 25-no-bitmap-dist.conf,spec 文件已被更新。
8.62. freeradius
8.62.1. RHEA-2014:1609 - freeradius 增强更新
功能增强
- BZ#1107843
- 在某些情况下,代理服务器需要能够超时到主服务器小于一秒。在这个版本中,添加了满足这个要求的三个新功能:主服务器的"response_window"配置选项现在接受分数值,单位为微秒的精度,最小为 millisecond。客户端部分现在支持具有相同精度的 "response_window" 配置选项,以启用降低特定客户端的主服务器的响应窗口。现在,在主页部分中支持 "response_timeouts" 配置选项,允许指定请求在主服务器进入失效状态前丢失响应窗口的次数。
8.63. gcc
程序错误修复
- BZ#858351
- 在以前的版本中,GNU Compiler Collection (GCC)无法正确处理部分分类无效的 C++ 代码。因此,GCC 可能会意外终止并出现分段错误。这个程序错误已被解决,GCC 现在提供了一个翻译错误而不是崩溃。
- BZ#875472
- 在以前的版本中,GNU Compiler Collection (GCC)无法正确处理循环向量。因此,GCC 可能会使用分段错误终止。在这个版本中,当向量程序查找 loop-exit PHI 节点时,GCC 可以正确地忽略 debug 语句,GCC 现在会如预期编译代码。
- BZ#1008798
- 在以前的版本中,在使用 "-fprofile-arcs" 和 "-ftest-coverage" 命令行选项编译程序的源代码后,会运行程序并启动 gcov 工具,但在这之后,创建了新的源代码文件,并再次启动 gcov。因此,gcov 会破坏现有的 .gcda 文件。在这个版本中,当出现问题时,功能会被正确恢复,gcov 不再破坏其他文件。
- BZ#1027003
- 在以前的版本中,如果 gnu++11 模式中的无效代码在其构造器中使用带有无效值的 initializer 列表,则 g++ 编译器会终止分段错误。在这个版本中,构造器被更好地测试了不正确的值,g++ 在上述场景中不再崩溃。
- BZ#1061435
- 在以前的版本中,Clang 编译器无法正确处理某些标头。因此,使用 typeinfo 和 exception 标头的程序无法编译,并显示 "incomplete type" 错误消息。在这个版本中,libstdc++ 库中的异常标头已被调整,程序现在使用 Clang 编译器按预期编译。
- BZ#1085442
- 在以前的版本中,即使异常对象的初始化没有完成,标准 uncaught_exception ()函数也会返回 "True" 值。因此,GNU Compiler Collection (GCC)可能会生成错误的代码。在这个版本中,uncaught_exception ()仅在创建异常对象后返回 "True" 值,GCC 始终会如预期生成正确的代码。
- BZ#1087806
- 在此次更新之前,g++ 编译器会拒绝试图通过变量参数传递带有非平平副本构造器的类型的 g++ 编译器拒绝代码。因此,使用 GNU Compiler Collection (GCC)编译的程序意外终止,并显示 "Illegal 指令" 错误消息。有了这个更新,g++ 现在接受代码,因为它会将非平平类型的 variadic 参数视为 pass-by-in visible 参考。
- BZ#1113793
- 在以前的版本中,gfortran 编译器无法正确处理涉及派生类型组件的旧风格初始化的编译代码。因此,gfortran 可能会意外终止并出现分段错误。现在,一个补丁已被应用于解决这个程序错误,现在在需要时会正确拒绝代码,并会显示适当的错误消息。
- BZ#1113878
- 较大的聚合包含与较小的字段相同的字段,其中只有末尾添加的一些字段。在此次更新之前,优化包含从更大聚合到较小的聚合的代码,可能会导致 GNU Compiler Collection (GCC)生成不正确的代码。因此,使用带有 enabled 的 GCC 会失败并发生分段错误。在这个版本中,使用不同大小的聚合之间的转换不会被视为无用,GCC 在上述情况下不再生成不正确的代码。
功能增强
- BZ#1099549
- OpenMP 4.0 支持已添加到 GNU OpenMP 库,它允许使用 DTS 3.0 构建并使用 OpenMP 在 Red Hat Enterprise Linux 6 上链接。
8.64. gcc-libraries
8.65. gdb
程序错误修复
- BZ#1104587
- 在以前的版本中,当用户尝试调试从多线程应用程序生成的特定内核转储文件时,GDB 无法正确处理正确的特定情况,例如当引用的 DWARF Compilation 单元被阻塞时。因此,执行 "thread apply all bt" 命令来显示所有线程的回溯追踪可能会导致 GDB 意外终止。已提供了一个补丁来修复这个程序错误,GDB 不会在这种情况下崩溃。
- BZ#913146
- 在以前的版本中,当执行信号处理代码时,GDB 调用某些非递归函数,如 calloc ()函数。这有时可能会导致死锁情况。为了避免在这种情况下死锁,相关的 GDB 代码已被修改,以正确处理非保证的功能。
- BZ#1007614
- 在以前的版本中,由于 Python 支持的特定功能中的一个错误,如果 Python 脚本从被调试的程序读取内存区域,且对内存区域的引用变得超出范围,GDB 不会取消分配内存。因此,这会导致内存泄漏,这在内存密集型场景中特别重要。应用了补丁,GDB 现在可以正确地释放获取的内存。
- BZ#903734
- 在此次更新之前,GDB 不会在处理 struct 数据类型嵌套实例中的位字段时添加必要的偏移量。因此,当用户试图设置在此类数据结构中声明的 bit 字段的值时,GDB 无法正确计算它。有了这个更新,GDB 可以正确地计算嵌套数据结构中的位字段的值。
- BZ#1080656
- 在以前的版本中,GDB 无法在静态链接的二进制文件上正确访问线程本地存储(TLS)数据。因此,如果程序被静态链接,用户无法检查程序上被调试的 TLS 数据。这个程序错误已被解决,用户现在可以按预期在静态链接的二进制文件上检查 TLS 数据。
- BZ#981154
- 在此次更新之前,GDB 会错误地处理与 build-id 文件相关的符号链接。因此,当用户尝试调试系统上未安装的程序生成的内核转储文件时,GDB 会打印误导错误消息,指示用户运行不正确的命令来安装二进制文件。因此,推荐的命令无法完全正常工作,且程序软件包没有正确安装。这个程序错误已被解决,GDB 现在会发出一条消息,其中包含安装所需二进制文件的正确命令。
功能增强
- BZ#971849
- 在这个版本中,在 GDB 中添加了 "$_exitsignal" 内部变量。现在,当调试以信号终止的程序的内核转储文件时,"$_exitsignal"为用户提供信号编号。
8.66. gdm
8.66.1. RHBA-2014:1591 - gdm 程序错误修复更新
程序错误修复
- BZ#827257
- 由于 XDMCP 远程桌面协议选择器和间接查询代码中的错误,GDM 上会出现死锁和不正确的大小参数。因此,主机选择器无法正确委派给其他主机。要修复这个错误,现在使用 correct-size 信息,并删除了递归死锁。因此,间接选择器现在可以更可靠。
- BZ#992907
- 在以前的版本中,确定何时强制 X 服务器在虚拟控制台 1 上运行的逻辑不足,这会导致登录屏幕和后续用户会话在初始退出后切换到虚拟控制台 7。这个版本在逻辑中引入了更改,使虚拟控制台 1 使用静态的硬线显示。现在,只有在虚拟控制台 7 及更高版本上运行的用户切换需要辅助显示,后续用户会话始终在虚拟控制台 1 上运行主登录屏幕。
- BZ#1004484
- 在此次更新之前,"Switch User"菜单项依赖于 GDM 显示管理器来启动登录屏幕。因此,如果用户最初使用 KDM 登录,"Switch User"菜单项会意外终止。在这个版本中,如果用户没有使用 GDM 登录,则损坏的 "Switch User" 菜单项会被隐藏。
- BZ#1004909
- 由于代码中缺少 NULL 检查,在通过远程 XDMCP 连接登录时,将 benign 错误记录在 slave 日志文件中。缺少的 NULL 检查已被添加来修复这个错误,不再返回错误消息。
- BZ#1013351
- 在以前的版本中,GDM 无法创建远程 X 客户端可用的 xauth 条目。因此,远程客户端在没有使用 ssh 隧道的情况下无法访问主机 X 服务器。在这个版本中,当配置中 DisallowTCP 选项被设置为 "false" 时,GDM 写入适用于远程客户端的 xauth 条目。因此,远程客户端可用的 xauth 条目现在可以成功生成。
- BZ#1030163
- 当启用调试并错误配置时,GDM 的调试日志代码中的错误会进入无限循环。因此,XDMCP 远程桌面协议在启用调试模式时无法正常工作或工作;调试代码在故障场景中打印 NULL 而不是远程服务器主机。要修复此程序错误,调试代码已被修改来不会调用其自身,而不是对主机名进行 nullify 或泄漏。因此,GDM 不再锁定并返回更多行为的错误信息。
- BZ#1048769
- 由于用户切换代码中的机器状态处理不正确,用户切换小程序可能会在登录后马上终止。在这个版本中,机器状态会以不同的方式处理,用户切换小程序不再发生。
- BZ#1073546
- 如果窗口管理器试图在用户交互前专注于窗口,则 benign 警告消息记录在 /var/log/gdm/:0-greeter.log 文件中。在这个版本中,避免了在早期启动中的窗口,窗口管理器不再返回警告信息。
8.67. gettext
错误修复
- BZ#1024681
- 在以前的版本中,当 xgettext 实用程序遇到无效的文件时,如果提供了额外的文件,则会生成警告信息并带有严重错误。因此,不会生成输出。在这个版本中,在上述情况中修复了 error-processing code 和 xgettext 可以正常工作。
8.68. ghostscript-fonts
错误修复
- BZ#1067294
- 在以前的版本中,ghostscript-fonts 软件包包含带有限制性许可证的字体。在这个版本中,带有受限权限的字体会从软件包中删除许可证问题。
8.69. glib2
8.70. glibc
安全修复
- CVE-2013-4237
- 在 glibc 的 readdir_r ()函数处理文件系统条目的时间超过 NAME_MAX 字符常量的方式中发现了一个越界写入缺陷。远程攻击者可以提供一个专门编写的 NTFS 或 CIFS 文件系统,当由应用程序使用 readdir_r ()处理时,会导致应用程序崩溃或可能造成应用程序崩溃或可能,允许攻击者执行具有运行应用程序的用户特权的任意代码。
- CVE-2013-4458
- 找到 getaddrinfo ()没有限制名称解析过程中使用的堆栈内存量。攻击者能够使应用程序解决攻击者控制的主机名或 IP 地址,可能会导致应用程序耗尽所有堆栈内存和崩溃。
程序错误修复
- BZ#845218
- 当使用 getaddrinfo 程序将 ai_family 选项设为 AF_UNSPEC 时,服务器可能会响应缺陷域名系统(DNS)服务器,这会导致查找失败。在这个版本中,getaddrinfo 已被修复,以便在这样的情况下返回有效的响应。
- BZ#905941
- 在某些个别情况下,pthreads 工具会在 stack unwinding on thread uncellation on PowerPC architecture 中意外终止。这个程序错误已被解决,在上述情况下 pthreads 不再崩溃。
- BZ#981942
- 使用 getaddrinfo 工具查找国际化的域名偶尔会导致调用程序意外中止。在这个版本中修复了 getaddrinfo 代码以防止中止。
- BZ#995972
- 由于线程本地存储(TLS)初始化中的一个错误,dlopen () 函数偶尔会意外终止并出现分段错误。这个程序错误已被解决,dlopen ()不再崩溃。
- BZ#1019916
- 在动态链接器中的符号依赖关系测试过程中,重新定位的顺序不正确。因此,如果依赖符号还没有重新定位,IFUNC 解析器会意外终止。当设置了其中一个环境变量 LD_WARN 或 LD_TRACE_PRELINKING 时会出现这种情况。在这个版本中,确保重新定位在符号依赖关系测试过程中以正确顺序执行,从而避免崩溃。
- BZ#1027101
- 在这个版本中,C 库的内存分配器"fastbins"功能使用的某些代码路径改为 thread-safe,这样可防止内存分配器中的崩溃导致分段错误。
- BZ#1032628
- 在这个版本中修复了 elf/dl-lookup.c 函数中的符号查找,以返回正确的值。
- BZ#1039988
- 在以前的版本中,当 nscd 守护进程运行时,查询不存在的 netgroup 时,返回一个假的空结果,且没有错误消息。例如,执行 'getent netgroup foo' 会重新使用假的空 netgroup,并在不存在名为 'foo' 的 netgroup 时成功退出,状态为 0。这个 bug 已被修复,上述命令现在会如预期退出,并带有非零退出状态。
- BZ#1043557
- 由于缓冲区扩展和重新分配的问题,在处理较长的 netgroup 条目时,nscd 守护进程会意外终止并出现分段错误。在这个版本中,处理较长的 netgroup 条目已被修复,nscd 不再在上述场景中崩溃。
- BZ#1044628
- 当域名系统(DNS)服务器无法访问或 DNS 查询超时时,getaddrinfo ()函数会返回不正确的持久性错误 EAI_NONAME。现在,getaddrinfo ()返回 EAI_AGAIN 来指示名称解析中的临时故障。
- BZ#1054846
- 在这个版本中解决了 nscd 守护进程中的一个 bug,这会导致 sudo 工具拒绝对允许的 netgroups 中有效用户的访问。
- BZ#1074342
- 在这个版本中,在查询带有嵌套成员的特定网络组时,会防止内存崩溃和后续的意外崩溃,因为 nscd 守护进程中的分段错误。
- BZ#1085273
- 查询空的 netgroup 时,nscd 守护进程偶尔会变得无响应。这个问题已被解决,以便在上述情况下返回适当的错误代码。
- BZ#1099025
- 在这个版本中修复了在 Virtual Dynamic Shared Object (VDSO)的 gettimeofday ()函数实现中的一个 bug,这会导致 gettimeofday ()函数返回不正确的非交换值。
功能增强
8.71. glusterfs
程序错误修复
8.72. gnome-packagekit
程序错误修复
8.73. gnome-session
程序错误修复
- BZ#684767
- 由于检查不足,即使用户切换已被锁定配置禁用,"Switch User"按钮会出现在注销对话框中。现在,提供了一个补丁来修复这个程序错误,现在会在用户注销时删除"Switch User"按钮。
- BZ#785828, BZ#1069503
- 由于关闭时资源清理不正确,"启动应用程序" GUI 不会立即提交更改。如果用户在进行更改后 2 秒以上关闭对话框窗口,则更改将无法被提交。要修复此错误,关闭上的对话框窗口已被删除,因此其 dispose 处理程序会立即提交待处理的更改。因此,用户可以启用或禁用额外的启动程序,并在不丢失更改的情况下快速关闭对话框窗口。
- BZ#982423
- 在此次更新之前,在 gnome-session 工具中存在一个预先存在的 gnome-session 实例的检查。因此,在 GNOME 会话中运行 gnome-session 会启动嵌套的中断会话。在这个版本中,添加了 SESSION_MANAGER 环境变量检查。因此,如果用户错误地在预先存在的会话中运行 gnome-session,则返回错误消息。
功能增强
- BZ#786573
- 在以前的版本中,如果用户意外点击 "Remember Running Applications" 并使用自定义会话选择器,则无法在不保存的情况下继续操作。这个更新提供了会话选择器的关闭按钮,以便用户拒绝保存。
8.74. gnupg2
8.74.1. RHBA-2014:0806 - gnupg2 程序错误修复更新
程序错误修复
- BZ#638635
- 在以前的版本中,GnuPG (gpg-agent)的 secret 密钥管理守护进程无法在创建新保护的密钥或更改现有密钥时对新的迭代计数值进行编码。因此,密钥无法被保护,gpg-agent 无法正确与使用密钥解密的程序(如 KMail 或 Kleopatra)交互。在这个版本中,新的迭代计数会被正确编码,由 gpg-agent 创建或修改的密钥的解密不再会失败。
- BZ#966493
- 在此次更新之前,GnuPG 加密和签名工具 gpg2 默认使用 CAST5,加密算法没有被 FIPS 标准批准。因此,当 gpg2 在 FIPS 模式下运行时,数据加密和解密会失败,并导致 gpg2 意外终止。在这个版本中,GnuPG 使用 AES、FIPS 批准的加密算法,gpg2 数据加密和解密在 FIPS 模式下可以正常工作。
- BZ#1006879
- 在以前的版本中,GnuPG 签名检查工具 gpgv2 没有与 Libgcrypt 库正确交互。因此,当对文件使用 gpgv 命令时,gpgv2 会意外终止。在这个版本中解决了错误,gpgv 命令现在可以正常工作。
- BZ#1078957
- 在此次更新之前,GnuPG 不会检查 RIPEMD-160 哈希功能摘要的可用性。由于 FIPS 标准未批准 RIPEMD-160 算法,因此当 FIPS 模式下使用 "gpg --verify" 命令时,GnuPG 会意外终止,以验证包含 RIPEMD-160 哈希的签名。在这个版本中,GnuPG 可以正确地检查 RIPEMD-160 支持,不再会发生崩溃。
8.75. gpxe
8.75.1. RHBA-2014:1574 - gpxe 程序错误修复更新
程序错误修复
- BZ#1057249
- 当为虚拟机配置了同一类型的多个 NIC 时,PXE 启动不会遵循指定的引导顺序。相反,gPXE 镜像试图从 PCI 总线扫描顺序中载入的镜像支持的所有 NIC 进行引导。这会导致引导延迟,在不需要的设备上执行 PXE 引导,并在成功时从意外的设备引导。这个版本为 gPXE 引导镜像提供预期引导设备的 PCI 地址,确保镜像只尝试在预期的设备上引导。
- BZ#1105189
- gPXE 生成的 HTTP 请求在会话的第一个数据包中设置错误的 TCP 标记(SYN 和 PSH)。因此,在使用防火墙时,TCP 数据包流会被阻止,与 gPXE 集成的 HTTP 模块无法正常工作。有了这个更新,gPXE 不再在会话的第一个数据包中设置 PSH 标志,系统现在可以按预期引导。
8.76. grep
错误修复
- BZ#683753
- 在以前的版本中,如果 UTF-8 区域设置生效,grep 工具不会请求处理 Perl 兼容的正则表达式(PCRE)库中的 UTF-8。因此,如果 Perl 正则表达式("-P"选项)与 UTF-8 区域一起使用,则 Unicode 符号无法正确匹配。在这个版本中,在 PCRE 库中添加了 UTF-8 处理的请求,grep 现在可以在上述情况下正确处理 Unicode 符号。
8.77. grub
8.77.1. RHBA-2014:1476 - grub 程序漏洞修复更新
程序错误修复
- BZ#1002809
- 在一些不区分大小写的系统中,"bootx64"命令会错误地启动 GRUB shell,而不是引导 GRUB 安装程序。有了这个更新,"bootx64"还检查是否存在 GRUB 引导文件(BOOTX64),这允许使用 "bootx64" 在那些不区分大小写的系统中引导 GRUB。
- BZ#1121321
- 当"user_friendly_name"选项设为"no"时,grub-install 程序中的正则表达式无法匹配多路径设备。因此,用户无法在指定的设备中安装 GRUB 工具。要修复这个程序错误,正则表达式已被更新,以匹配请求的设备名称。现在,GRUB 可以成功安装。
- BZ#1129466
- 在此次更新之前,退出 GRUB shell 菜单并在可扩展固件接口(EFI)系统上重启 ISO 文件更改了引导设备路径,从而导致断言错误。因此,GRUB 有时无法引导。这个版本可防止引导设备路径被改变,因此退出 GRUB shell 并重启 ISO 文件现在可以按预期进行。
- BZ#1130209
- 在以前的版本中,biodisk 功能会错误地返回 "0",而不是读写调用的正确值。由于这个程序错误,内核在启动时检测到磁盘错误,这会导致引导失败。在这个版本中解决了 biodisk 的行为,引导失败不再发生。
- BZ#1128137
- 在以前的版本中,在某些情况下启用了可信引导(tboot)引导 GRUB 会导致 tboot 屏幕为蓝色,从而导致文本输出无法读取。在这个版本中,为 GRUB 添加了图形初始化的一些条件,这样可确保 tboot 屏幕以普通颜色显示。
- BZ#1131205
- 在以前的版本中,graphics_cls ()和 graphics_init ()调用无法正确与 GRUB 共存。因此,引导禁用了 VGA 的 ISO 文件会导致系统遇到异常并自动重启。在这个版本中,上述调用的行为已被修正,系统现在可以使用禁用 VGA 来成功引导。
- BZ#1094978, BZ#1074914, BZ#1048681
- 当 "splashimage" 选项参数被注释掉或者 /boot/EFI/redhat/grub.cfg 文件中启用了串口控制台时,内核不会在引导 EFI 系统时初始化 efifb 图形后端。因此,V VGA 文本控制台会显示一个空白屏幕,而不是预期的输出。在这个版本中,无论是否使用 GRUB splash 镜像还是串行控制台,引导 EFI 系统都使用 efifb,并且 VGA 控制台的内容现在会如预期显示。
- BZ#1129436
- 在此次更新之前,如果引导 EFI 系统时没有使用 splash 镜像,则串行控制台会在引导过程中显示冗余 grub_read ()失败信息。在这个版本中,底层代码已被修复,并在没有 GRUB splash 镜像的情况下引导 EFI 系统不再生成冗余失败信息。
8.78. grubby
8.78.1. RHBA-2014:1575 - grubby 程序错误修复更新
程序错误修复
- BZ#1098846
- 在此次更新之前,Trusted Boot (tboot)模块错误地使用 tboot.gz 多引导镜像来搜索 grub 配置文件。因此,运行 "yum update" 命令会在启用 tboot 时破坏 grub.conf 文件,并更新两个或者多个内核。有了这个更新,tboot 使用特定的内核名称来搜索 grub 配置,在上述场景中不再发生 grub.conf 损坏。
- BZ#997934
- 在以前的版本中,启用 tboot 会导致在运行 "grubby --info=DEFAULT" 命令时无法正确显示内核配置。在这个版本中,multiboot 模块参数包含在"grubby --info"的输出中,当 tboot 运行时,配置会如预期显示。
8.79. gtk2
程序错误修复
- BZ#909454
- gtk_cups_connection_test_new () 函数使用默认的 IPP 端口,而不是实际端口。因此,GTK 打印对话框无法使用非标准端口号从远程 CUPS 服务器获取打印机信息。在这个版本中,使用正确的端口号,GTK 不再失败。
- BZ#1015044
- librsvg2 库的 rsvg-convert 工具不遵循 SVG 文件中的 viewBox 属性指定的宽度。因此,auvatar 图标会小于它们应该被删除。在这个版本中,实用程序使用正确的宽度和高度。
- BZ#1104681, BZ#1104684
- gdk-pixbuf loaders 被移到一个单独的目录中,作为 gdk-pixbuf2 库分离到自己的软件包的一部分。在这个版本中,librsvg2 和 libwmf 库中存在的加载程序移到新目录中。
- BZ#1126916
- 新添加的 GtkComboBoxText widget 可能会导致应用程序因为小部件属性的一个初始化不正确而意外终止。在这个版本中,初始化已被修复,应用程序不会在上述场景中崩溃。
- BZ#1127719
- 缺少各种功能的 forward 声明会导致编译器假定隐式 32 位整数返回类型。因此,编译器意外终止,因为字符串指针被截断为 32 位,然后重新扩展到 64 位。在这个版本中,在受影响的源文件的顶部添加了相应标头的 "#include" 行。因此,编译器不再崩溃。
- BZ#1128798
- 在以前的版本中,GTK+ 打印对话框无法打印到默认目录中的文件,因为文件的路径生成不正确。现在,路径的生成已被修复,GTK+ 会按预期输出到文件。
8.80. gvfs
8.80.1. RHBA-2014:1499 - gvfs 程序错误修复更新
程序错误修复
- BZ#902448
- 在以前的版本中,当使用位于远程 NFS (网络文件系统)上的同一主目录的多个客户端修改了 gvfs-metadata 数据库文件时,可能会出现冲突。另外,GVFS 在远程 NFS 服务器上生成大量流量。在这个版本中,发生可能冲突的计数器会被放入,元数据日志文件被重新定位到临时目录中,GVFS 不再在 NFS 挂载上生成大量流量。
- BZ#1011835
- 在此次更新之前,GVFS 不会将挂载前缀传递给重命名操作。因此,如果指定了挂载前缀,则无法重命名 WebDAV 共享中的文件,在尝试这样做时会显示以下信息:该项目不能被重命名。sorry, could not rename "dir1" to "dir2": The specified location is not mounted这个程序错误已被解决,现在挂载前缀会如预期传递给 rename 操作。因此,重命名操作在 WebDAV 共享中可以正常工作。
- BZ#1049232
- 当 G swigAppInfoLookup 扩展处理包含无效字符的 URL 方案时,例如来自 Thunderbird 消息时,对 URL 处理程序的请求将不成功。因此,会显示有关无效字符的错误对话框。在这个版本中,G swigAppInfoLookup 已被修改,在使用前检查 URL 方案是否有无效字符。因此,不再发生上述错误。
- BZ#883021
- 以前的 GLib2 rebase
- BZ#1118325
- 在以前的版本中,GVFS 使用 select ()函数与 OpenSSH 工具通信。由于 OpenSSH 更新中引入的变化,选择()可能会返回不完整的结果。因此,使用以下信息挂载 SFTP 位置会失败:错误挂载位置:从 unix 读取错误:输入/输出错误GVFS 已更新为使用 poll ()函数,而不是 select (),从而解决了这个问题。
- BZ#1101389
- 以前的 GLib2 rebase
8.81. gzip
8.81.1. RHBA-2014:0297 - gzip 程序错误修复更新
程序错误修复
- BZ#949820
- 在以前的版本中,gzip 工具的源代码中没有 zgrep 命令的"-h"选项。因此,运行"zgrep -h"命令的输出没有被解析,文件名称会被打印。在这个版本中,可以使用 "--no-filename" 选项旁边的简短"-h"选项。因此,使用"-h"选项运行 zgrep 命令现在会打印正确的行,并在搜索多个文件时阻止输出上文件名的前缀。
- BZ#961810
- 在此次更新之前,存档的时间戳是使用 gzip 实用程序时 futimesat ()或 utime ()系统调用设置的。因此,存档文件具有比预期更低的时间戳,因为只启用 microsecond 解析,不提供纳秒的时间戳。底层源代码已被修改,以尝试使用 utimensat ()或 futimens ()系统调用进行纳秒分辨率。因此,存档文件与原始文件有完全相同的时间戳。
8.82. hal
8.82.1. RHBA-2014:1460 - hal 程序错误修复和安全更新
程序错误修复
功能增强
- BZ#1076664
- 在以前的版本中,HAL 守护进程无法正确识别 touchscreen 监控。因此,这些监控器不会添加到 Xorg 窗口系统中的热插拔设备列表中。现在,在 HAL 中添加了对 touchscreen 设备的支持,现在可以正确识别这些设备。
8.83. hapoxy
8.84. hmaccalc
错误修复
- BZ#1016706
- .hmac 文件用于在引导时检查内核镜像 ; 如果检查失败,引导过程应该会停止。在以前的版本中,hmaccalc 工具不会将 .hmac 文件标记为错误,允许系统引导,即使引导应该失败。在这个版本中,提供了一个补丁来解决这个问题。因此,在上述场景中,系统不再被允许引导。
8.85. hplip
8.85.1. RHBA-2014:0767 - hplip 程序错误修复更新
错误修复
- BZ#905143
- 在以前的版本中,udev 规则文件不在文件系统的正确位置。因此,连接设备不足后设备节点上的权限。在这个版本中,udev 规则文件移到正确的位置,在上述情况下 udev 规则现在可以正常工作。
8.86. httpd
程序错误修复
- BZ#876626
- 在以前的版本中,当 Apache HTTP 服务器在配置重新载入过程中第一次加载 mod_ssl 模块时,系统不会初始化共享内存会话缓存。因此,在上述情形中,系统会意外终止 httpd 服务。在这个版本中,这个问题已被解决,在配置重新加载后第一次加载 httpd 不再崩溃。
- BZ#972949
- 在以前的版本中,mod_proxy_balancer 模块中包含的异常算法不会平衡工作负载,在 worker 试图向非工作节点发送请求后,不会平衡工作负载。因此,当非工作节点再次工作后,mod_proxy_balancer 不会恢复尝试发送请求的 worker,因为它仍然被视为 worker 忙碌。在这个版本中,算法已被修复,mod_proxy_balancer 现在会在节点恢复后使用 worker。
- BZ#976644
- 在此次更新之前,mod_proxy 模块不会忽略 poll ()函数的 EINTR 返回值。因此,当子进程终止时,mod_proxy 会在尝试使用 CONNECT 方法发送请求期间中断连接。应用了补丁来解决这个问题,mod_proxy 现在忽略 EINTR,并在上述情况下继续使用 CONNECT 请求。
- BZ#979129
- 在以前的版本中,当客户端无法在超时前发送请求时,mod_cgi 模块无法正确处理这种情况。因此,客户端收到 "500 Internal Server Error" HTTP 状态代码而不是 "408 Request Timeout" HTTP 状态代码。在这个版本中,这个问题已被解决,客户端现在在超时前尝试发送请求失败后接收 "408 Request Timeout"。
- BZ#991556
- 在以前的版本中,mod_proxy_http 模块中的 Apache Portable Runtime (APR)库存储桶 brigade 包含从另一个 APR 池分配的对象,这些对象可以在 APR 存储桶 brigade 之前释放。因此,尝试释放 APR bucket brigade 清理中已释放的对象可能会导致 httpd 服务意外终止。在这个版本中,mod_proxy_http 中的 APR bucket brigade 比 APR 存储桶 brigade 中存储的对象被分配得更早。因此,在 APR bucket brigade 清理过程中,httpd 不再在 mod_proxy_http 中崩溃。
- BZ#1012766
- 在此次更新之前,mod_proxy_http 模块不符合 VirtualHost 配置中定义的 ErrorLog 指令用于某些错误。因此,即使配置了特定于 VirtualHost 的错误日志,"proxy: error reading response" 消息也可以登录到全局错误日志。现在,一个补丁已被应用于修复这个程序错误,mod_proxy_http 现在会将 "proxy: error reading response" 记录到正确的日志文件中。
- BZ#1032733
- 在此次更新之前,来自 server 的 HTTP 响应消息的状态行没有包括在某些情况下,如果包含状态代码,则包括 HTTP 原因短。因此,服务器只向 HTTP 客户端显示状态代码。在这个版本中,bug 已被修复,向 HTTP 客户端发出的状态行现在都包含状态代码和原因短语。
- BZ#1034984
- 在以前的版本中,mod_ssl 模块指令不包含对使用传输层安全协议版本 1.2 (TLSv1.2)的支持。因此,用户无法设置 mod_ssl 来禁用 TLSv1.2。在这个版本中,对 TLSv1.2 配置选项的支持已添加到 mod_ssl 中。现在,可以将 mod_ssl 设置为禁用 TLSv1.2。
- BZ#1035666
- 在此次更新之前,mod_ssl 模块不支持使用 SSLProxy 指令的通配符证书。因此,当使用通配符证书时,SSLProxy 无法正常工作,用户必须将 SSLProxyCheckPeerCN 指令设置为"off"作为临时解决方案。应用了补丁来修复这个错误,mod_ssl 现在支持带有 SSLProxy 的通配符证书。
- BZ#1037832
- 在以前的版本中,mod_ssl 模块将所有证书撤销列表(CRL)存储在缓存中,用户无法禁用缓存。因此,当大量 CRL 存储在缓存中时,httpd 服务可能会消耗大量内存。要解决这个问题,在 mod_ssl 中添加 DisableCRLCaching 指令来禁用 CRL 缓存。现在,mod_ssl 可以被配置为不再在缓存中存储 CRL。
- BZ#1048757
- 在以前的版本中,一个处理动态组的功能(包括在 mod_ldap 模块中)包含不正确的指针分配。因此,当使用多个动态组时,系统会导致 httpd 服务意外终止并出现分段错误。应用了补丁来修复这个错误,在使用多个动态组时 httpd 不再崩溃。
- BZ#1071883,1100680
- 在此次更新之前,mod_ssl 模块只支持 512 位和 1024 位长度的临时 Diffie-Hellman (DH)密钥。因此,使用临时 DH 密钥的安全套接字层(SSL)密码套件无法在 FIPS 模式下使用。在这个版本中,mod_ssl 使用密钥长度的临时 DH 密钥,最多 8192 位。因此,mod_ssl 现在可以在 FIPS 模式中正常工作。
- BZ#1077336
- 在以前的版本中,当运行 "apachectl status" 命令时,当 httpd 服务没有运行时,退出代码将无法更改。因此,"apachectl status"可能会返回退出代码 0,表示成功,即使 httpd 没有运行。现在,提供了一个补丁来修复这个错误,在 httpd 没有运行时,"apachectl status"会以正确的退出代码退出。
- BZ#1090445
- 在此次更新之前,mod_ssl 模块公开的 SSLProtocol 指令不允许控制是否启用了 TLSv1.1 还是 TLSv1.2 协议。因此,用户无法设置 mod_ssl 来禁用 TLSv1.1 或 TLSV1.2。在这个版本中,对 TLSv1.2 和 TLSv1.2 配置选项的支持被添加到 mod_ssl 中,mod_ssl 现在支持 SSLProtocol Directive 中的 TLSv1.1 和 TLSv1.2。
- BZ#1094990
- 在以前的版本中,mod_cache 模块无法正确处理对后端服务器的请求,因为删除和重命名缓存文件之间的竞争条件,并在处理 HTTP 范围请求时生成缓存散列代码不一致。因此,mod_cache 可以将多个请求传递给后端服务器,以刷新缓存,而不是单个请求。在这个版本中,在缓存中,竞争条件已被修复,即使处理 Range 请求时也会一致生成哈希代码。因此,mod_cache 现在在刷新缓存时仅将单个请求传递给后端服务器。
- BZ#1103115
- 在此次更新之前,mod_ssl 模块的 %post 脚本使用 RSA 密钥硬编码为 1024 位长度。因此,用户无法在 FIPS 模式中安装 mod_ssl。要修复这个程序错误,mod_ssl %post 脚本已更新为使用 2048 位 RSA 密钥。现在,可以在 FIPS 模式中安装 mod_ssl。
- BZ#1111410
- 在以前的版本中,当后端服务器连接时,mod_proxy 模块不会关闭客户端连接。因此,mod_proxy 会将客户端连接保持打开,直到超时为止。现在,提供了一个补丁来修复这个程序错误,mod_proxy 现在会在 mod_proxy 关闭与后端服务器的连接后立即关闭客户端连接。
功能增强
- BZ#1035818
- 这个版本引进了对 Red Hat Enterprise Linux 6 中的 Elliptic Curve Cryptography (ECC)密钥和 Elliptic Curve Diffie-Hellman (ECDH)密码的支持,因为 Red Hat Enterprise Linux 6 中的 OpenSSL 工具包也支持 ECDH。
8.87. hwdata
8.87.1. RHEA-2014:1553 - hwdata 增强更新
功能增强
- BZ#1064381
- PCI、USB 和厂商 ID 文件已使用最近发布的硬件的信息进行了更新。使用这些 ID 文件的硬件实用程序工具现在可以正确地识别最近发布的硬件。
8.88. i2c-tools
错误修复
- BZ#914728
- i2cdetect 工具需要加载 i2c-dev 模块,以便它可以检测指定总线上存在的设备。在以前的版本中,这不会被自动完成,因此在运行 i2cdetect 时,用户可能会被误认为没有存在总线或设备。在这个版本中,i2c-dev 已自动加载。现在,i2cdetect 可以正确地扫描设备的 I2C 总线,并按预期输出检测到的设备表。
8.89. ibus-table
错误修复
- BZ#983497
- 在以前的版本中,compose.db 和 latex.db 文件的索引由安装后脚本处理。因此,运行 "rpm -V" 命令会返回一个不必要的警告,表示在安装后更改了 SQLite 数据库文件。在这个版本中,索引的文件已经包含在软件包中,在上述情况下不会显示警告信息。
8.90. icedtea-web
8.91. initscripts
程序错误修复
- BZ#1018095
- 在以前的版本中,某些网络设备驱动程序在用户空间中出现后无法正确接受 ethtool 命令。因此,不会应用指定设备驱动程序的当前设置,并返回错误消息。这个更新添加了 ETHTOOL_DELAY 变量,请确保 ethtool 实用程序在尝试应用选项设置前等待一段时间,从而修复这个程序错误。
- BZ#1024561
- 当发出 reboot 或 halt 时,系统有时会终止 S01reboot 进程,永远不会完成重启或关闭。这个更新更改了 sed 工具的 regex 来解决这个问题,S01reboot 过程现在可以成功完成。
- BZ#1053098
- 在以前的版本中,ipcalc 工具使用 "-c" 选项错误地处理子网掩码参数。因此,无效的 CIDR 会被忽略,并且不接受允许的格式的子网掩码。更新的"-c"选项会按预期验证指定地址系列的 IP 地址,无效的 CIDR 不再被忽略,并接受允许的子网掩码格式。
- BZ#1086897
- 由于一个竞争条件,在创建网桥时"multicast_router"和"hash_max" BRIDGING_OPTS 选项无法应用。在这个版本中,在网桥启动后应用 "multicast_router" 和 "hash_max",BRIDGING_OPTS 选项现在可以正常工作。
- BZ#1101795
- 在此次更新之前,当添加 VLAN 网络时,称为热插拔脚本的 udev 设备管理器。但是,由于 VLAN 网络具有与默认网络适配器设备相同的默认硬件地址,因此热插拔将网络适配器的 IP 配置恢复到 /etc/sysconfig/network-scripts/ 目录中的值,在某些情况下会断开网络适配器。在这个版本中,删除了为 VLAN 网络的热插拔脚本触发,因此网络适配器现在会保留其 IP 地址,因此不再会失败。
功能增强
8.92. ipa
程序错误修复
- BZ#1034478
- 在以前的版本中,如果主受管域名称系统(DNS),ipa-replica-install 脚本会尝试添加 "A" 和 "PTR" 记录。如果 master 没有管理副本的区域,则返回错误消息 "DNS zone not found",副本的安装会失败。在这个版本中,ipa-replica-install 脚本已被修复,可以正确处理上述情况,副本的安装现在可以成功。请注意,需要手动添加副本的"A"和"PTR"记录。
- BZ#1083878
- 在以前的版本中,当安装 Red Hat Enterprise Linux 7 中的身份管理公钥基础架构(PKI)克隆时,需要访问身份管理服务器上的 /ca/ee/ca/profileSubmit URI (需要复制)。但是,Red Hat Enterprise Linux 6 中的身份管理不会在 httpd 代理配置中导出此 URI。因此,针对 Red Hat Enterprise Linux 6 master 安装时,在 Red Hat Enterprise Linux 7 中使用 PKI 组件安装身份管理副本会失败。在这个版本中,/ca/ee/ca/profileSubmit URI 已添加到 Red Hat Enterprise Linux 6 身份管理代理配置中,在这个场景中复制安装现在可以成功。
- BZ#1022199
- 在此次更新之前,禁用 sudo 规则不会触发在轻量级目录访问协议(LDAP)中从 sudo compat 树中删除其条目。因此,禁用的 sudo 规则仍然位于使用 sudo compat 树的客户端上。这个程序错误已被解决,上面描述的问题不再发生。
- BZ#1029921
- 在以前的版本中,身份管理密码策略不适用于使用 Directory Manager 或 PassSync 代理更改的密码。因此,即使身份管理管理员定义了不同的策略,也会应用默认的过期时间(90 天)。身份管理密码更改扩展操作插件已被更新,目录管理器或 PassSync 代理所做的密码更改现在遵循用户密码策略的 "max lifetime" 字段。
- BZ#905064
- 在以前的版本中,当 ipa-server-install 工具试图从 CS.cfg 文件中读取 "preop.pin" 值时,会出现一个间歇性竞争条件,它仍然被 pkicreate 程序被修改到磁盘中。因此,身份管理服务器安装会失败。在这个版本中,ipa-server-install 已被修改,以预期这样的竞争条件。现在,当 ipa-server-install 无法从 CS.cfg 中读取时,它会等待直到超时或文件被写入磁盘。另外,如果发生这些事件,这些事件会被正确登录到安装日志。
- BZ#1040009
- 在此次更新之前,Python readline 模块中的一个 bug 会导致 stray 转义序列添加到 certmonger 工具用来在认证机构(CA)克隆上获取更新的证书的前面。因此,certmonger 无法解析脚本的输出,且证书没有被续订。现在,提供了一个补丁来解决这个错误,certmonger 现在可以成功解析脚本的输出并完成证书续订。
- BZ#1082590
- ipa-client-automount 工具使用远程过程调用(RPC)接口来验证自动挂载位置。在以前的版本中,RPC 接口只允许其 API 版本早于服务器 API 版本的客户端验证自动挂载位置。因此,使用 API 版本早于服务器的失败并显示不兼容错误消息的客户端运行 ipa-client-automount。在这个版本中,ipa-client-automount 已被修改,在 RPC 调用中报告固定的 API 版本,ipa-client-automount 现在会在客户端 API 版本早于服务器的时成功运行。
- BZ#1016042
- 在以前的版本中,ipa-replica-manage 工具在重新初始化命令中包含一个错误,从而导致 MemberOf 任务在某些情况下失败,并显示出错信息。因此,当为 Windows 同步(WinSync)复制协议运行 ipa-replica-manage 重新初始化命令时,它会在重新初始化部分成功,但在重新初始化部分后运行 MemberOf 任务时失败。返回以下出错信息:
Update succeeded Can't contact LDAP server
但是,这个错误不会损害,因为本例中不需要运行 MemberOf 任务。应用了补丁,在上述场景中不再返回错误消息。 - BZ#1088772
- 可以在 Red Hat Enterprise Linux 7 中的身份管理中添加用户,而无需在用户对象的 "krbPwdPolicyReference" 属性中明确定义密码策略。用户锁定插件会在配置了失败次数后锁定通过 LDAP 接口进行身份验证或绑定的用户。在 Red Hat Enterprise Linux 7 中的 Identity Management 中,插件不需要此属性存在来正确地应用锁定策略。在以前的版本中,Red Hat Enterprise Linux 6 中的 Identity Management User Lockout 插件需要此属性才能正常工作。因此,在 Red Hat Enterprise Linux 7 中,密码 lock-out 策略不适用于复制到 Red Hat Enterprise Linux 6 的 Red Hat Enterprise Linux 7 中创建的用户。此类用户在 LDAP 界面中有无限数量的身份验证尝试。用户 Lockout 插件已更新为遵守没有定义的自定义策略的用户,并正确回退到定义的全局密码策略,现在 LDAP 界面中允许用户允许定义的验证尝试。
- BZ#1095250
- 在以前的版本中,身份管理中的验证器不允许 DNS 名称中的斜杠字符。因此,无法以无类别形式添加反向区。在这个版本中,DNS 名称验证器允许斜杠字符,因此 RFC 2317 的建议现在如下。
- BZ#1108661
- 在此次更新之前,身份管理安装程序可以在不指定身份验证方法的情况下调用 ldapmodify 工具。因此,当在 ldapmodify 用户配置中设置了验证方法时,安装程序可能会失败。现在,安装程序总是使用明确指定的身份验证方法调用 ldapmodify,上面描述的问题不再发生。
- BZ#1109050
- 在以前的版本中,当安装或升级 Red Hat Enterprise Linux 6 master 时,一个额外的默认值被添加到 LDAP 条目 "cn=replication,cn=etc" 的 "nsDS5ReplicaId" 属性中。在 Red Hat Enterprise Linux 7 中,身份管理使用更严格的验证,这会阻止在这样的系统上安装副本。因此,在具有多个 master 的系统上安装或升级 Red Hat Enterprise Linux 6 master 后,安装 Red Hat Enterprise Linux 7 副本会失败。这个程序错误已被解决,这个额外的值不再被添加,在这种情况下可以成功安装 Red Hat Enterprise Linux 7 副本。
- BZ#1015481
- 身份管理管理框架 API 在服务器端包含两个检查,以验证其 API 上的请求是否可以进一步传递:
- 检查,以查看客户端 API 版本是否低于服务器 API 版本。如果是,请求将被拒绝。
- 查看客户端 API 请求是否不使用属性或服务器未知参数的检查。如果存在,请求将被拒绝。
在此次更新之前,身份管理服务器以不正确的顺序执行检查。首先,完成属性和参数检查,然后检查 API 版本。因此,当客户端(例如,Red Hat Enterprise Linux 6.5)对带有较早操作系统(例如,Red Hat Enterprise Linux 6.4)的服务器运行 ipa 管理实用程序时,命令会返回混淆的错误消息。例如,显示未知选项的错误消息,而不是表示 API 不兼容。这个程序错误已被解决,服务器上的检查现在以正确顺序执行,在这种情况下会显示正确的错误消息。
功能增强
8.93. ipmitool
错误修复
- BZ#1147593
- 在以前的版本中,ipmitool 默认超时值表示一个太短的时间段。因此,在重试过程中,ipmitool 工具可能会意外终止并出现分段错误,或者可能会生成非冗余错误消息。在这个版本中,从环境变量传递的 ipmitool 选项可以从 IPMITOOL_OPTS 和 IPMI_OPTS 变量正确解析,IPMITOOLGRESS 优先于 IPMI PPK 变量。因此,ipmitool 不再会在上述情况下崩溃。
错误修复
- BZ#1029529
- IPMI 内核代码缺少 IPMI 内核模块的别名。因此,当检测到适当的硬件时,并非所有 IPMI 内核模块都无法自动加载,因此无法使用硬件。要解决这个问题,模块别名配置文件已添加到 /etc/modprobe.d/ 目录中,将所有独立的 IPMI 模块链接到 IPI* 设备类别名。请注意,必须重启系统才能使此更改生效。
功能增强
- BZ#1056581
- 为了改进 ipmitool 作为软件堆栈的一部分,某些环境变量是统一的,在 ipmitool 中引入了几个新变量,特别是:IPMITOOL vmcore 变量现在优先于 IPMI collection 变量。添加了 IPMITOOL_KGKEY 变量来统一命名空间使用情况。* ipmitool 软件包添加了有限的 IPv6 支持,IPMI 标准不包括 IPv6 数据定义,因此这个更改只包括 IPv6 连接。与 IPv6 相关的 OEM 特定命令值超出了此功能的范围。
8.94. iprutils
错误修复
- BZ#1127825
- 在以前的版本中,有关"Read Intensive"磁盘的信息不会在 iprconfig 菜单中显示。底层源代码已被修补,磁盘信息现在可以正确显示。
8.95. ipset
8.95.1. RHBA-2014:1543 - ipset 程序错误修复更新
错误修复
- BZ#888571
- 在此次更新之前,i ipset 发起脚本将加载缺少 ipset 规则的 ipset 规则。因此,系统启动中的安全问题可能会出现。这个更新提供了添加 ipset systemd 服务所需的所有文件,该服务在 iptables 之前启动并在之后停止。因此,可以按预期启动、停止和保存 ipset 规则。
8.96. iptables
程序错误修复
功能增强
- BZ#1033270
- 在这个版本中,在 ipset 工具中添加了 IPv6 支持,因此用户现在可以管理 IPv6 地址的 IPSets。
8.97. ipvsadm
错误修复
- BZ#1099687
- 在以前的版本中,在某些情况下,ipvsadm 工具无法正确处理现有同步守护进程的打印。因此,当节点上只有一个备份同步守护进程运行时,"ipvsadm --list --daemon"命令不会报告备份同步守护进程是否存在。现在,一个补丁已被应用于解决这个程序错误,"ipvsadm --list --daemon"现在可以正确地显示备份同步守护进程,即使它是唯一的守护进程运行。
8.98. irqbalance
程序错误修复
- BZ#1039178
- 在以前的版本中,irqbalance 守护进程不会考虑为 banned CPU 设置的中断请求(IRQ)的 NUMA 节点分配。因此,当 IRQBALANCE_BANNED_IRQS 变量设置为单个 CPU 时,irqbalance 会错误地设置关联性。另外,RQ 可以被分配给没有合格 CPU 的节点。节点分配仅限于具有 unbanned_cpus bitmask 定义的 CPU 的节点,从而解决了这个问题。因此,irqbalance 现在可以正确地设置关联性,Rqs 会被正确分配给对应的节点。
- BZ#987801
- 在以前的版本中,irqbalance 守护进程的依赖项被错误地引用错误的内核版本。因此,irqbalance 无法平衡 NUMA 系统上的 IRQ。在这个版本中,依赖项已被修复,RQs 现在在 NUMA 系统上正确平衡。请注意,irqbalance 软件包的用户必须将内核更新至 2.6.32-358.2.1 或更高版本,才能以正确的方式使用 irqbalance 守护进程。
- BZ#1079109
- 在此次更新之前,irqbalance 无法准确决定它位于本地的 NUMA 节点,或者 IRQ 发送到的设备。创建 kernel affinity_hint 值来解决这个问题。在这个版本中,irqbalance 能够解析 sysfs ()函数提供的 IRQ 的所有信息。IRQ 平衡现在可以正常工作,现在 affinity_hint 值默认忽略,而不是中断 irqbalance 功能。
8.99. iscsi-initiator-utils
程序错误修复
- BZ#0009299, BZ#1052361
- 由于进程间通信(IPC)套接字寻址的变化,更新 isciadm 管理实用程序会导致它与已在运行的 iscsid 进程不兼容。因此,在更新后,iscsiadm 不再与正在运行的 iscsid 进程通信。在这个版本中,添加了一个 retroactive 兼容性 IPC 模式,当新的 IPC 套接字无法连接时自动触发。因此,在更新后,iscsiadm 可以正确地控制预先存在的 iscsid 进程。
- BZ#1132490
- 在此次更新之前,uip_reset () 函数在某些情况下是带有无效的 ustack 地址调用的。因此,iscsiuio 进程会意外终止,并显示分段错误。在这个版本中,调用 uip_reset ()的 ustack 地址已被修复,上面描述的崩溃不再发生。
- BZ#1076344
- 在此次更新之前,iscsid 守护进程无法处理超过 31 个 iSCSI 异步事件。因此,当执行 32 个或更多目标协议数据单元的 iSCSI 操作时,iscsid 会进入无限循环并变得无响应。在这个版本中,iscsid 可以正确处理超过 31 个 iSCSI 异步事件,上面描述的挂起不再发生。
8.100. java-1.6.0-openjdk
程序错误修复
功能增强
- BZ#1059925
- 已修改共享 Java 库,允许用户使用 cap_net_bind_service、cap_net_admin 和 cap_net_raw 能力运行 Java。
8.101. java-1.7.0-openjdk
安全修复
- CVE-2014-6506,CVE-2014-6531,CVE-2014-6502,CVE-2014-6511,CVE-2014-6504,CVE-2014-6519
- OpenJDK 中的 Libraries、2D 和 Hotspot 组件中发现了多个安全漏洞。不信任的 Java 应用程序或小程序可能会使用这些漏洞来绕过某些 Java 沙盒限制。
- CVE-2014-6517
- 在 OpenJDK 中的 JAXP 组件中发现 StAX XML 解析器会执行外部参数实体的扩展,即使外部实体替换被禁用。远程攻击者可以使用此缺陷对使用 StAX 解析器的应用程序执行 XML eXternal Entity (XXE)攻击来解析不受信任的 XML 文档。
- CVE-2014-6512
- 已发现,OpenJDK 中的 DatagramSocket 实现无法对连接的套接字上接收的数据包执行源地址检查。一个远程攻击者可以使用这个缺陷来处理其数据包,就像从预期的源收到数据包一样。
- CVE-2014-6457
- 在 OpenJDK 中的 JSSE 组件中发现,在重新协商后的重新协商期间,TLS/SSL 实现无法正确验证服务器身份,从而使恶意 TLS/SSL 服务器能够使用 JSSE 和客户端证书身份验证对客户端执行 Triple Handshake 攻击。
- CVE-2014-6558
- 已发现,OpenJDK 中的 CipherInputStream 类实现无法正确处理某些例外。这可能会允许攻击者影响此类处理的加密流的完整性。
错误修复
- BZ#1148309
- 在以前的版本中,OpenJDK 中的 TLS/SSL 实现无法处理具有超过 1024 位的 Diffie-Hellman (DH)密钥。这会导致使用 JSSE 的客户端应用程序在连接握手过程中使用更大的 DH 密钥建立到服务器的 TLS/SSL 连接。在这个版本中,增加了对大小为 2048 位的 DH 密钥的支持。
8.102. kdesdk
8.102.1. RHBA-2014:0485 - kdesdk 程序错误修复更新
程序错误修复
8.103. keepalived
程序错误修复
8.104. kernel
安全修复
- CVE-2015-1805, Important
- 它发现,Linux 内核的向量管道的读写功能实现不会考虑在原子访问操作失败后重试时已处理的 I/O 向量,因此可能会因为 I/O vector 阵列超run而造成内存损坏。本地非特权用户可能会使用此缺陷使系统崩溃,或者可能在系统上升级其权限。
- CVE-2015-3331, Important
- 在 Linux 内核的 Intel AES-NI 指令优化 RFC4106 GCM 模式解密功能时会处理碎片数据包的方式中发现了一个缓冲区溢出缺陷。一个远程攻击者可以利用此漏洞崩溃或可能升级其权限,系统通过与活跃 AES-GCM 模式 IPSec 安全关联的连接。
- CVE-2014-9419, Low
- 在 Linux 内核在上下文切换过程中更改特定片段寄存器和线程本地存储(TLS)的方式中发现了一个信息泄漏问题。本地非特权用户可能会使用此缺陷来泄漏任意进程的用户空间 TLS 基础地址。
- CVE-2014-9420, Low
- 它发现,Linux 内核的 ISO 文件系统实现没有正确限制 Rock Ridge 扩展 Continuation Entries (CE)的遍历。具有物理访问系统的攻击者可以利用此漏洞在内核中触发无限循环,从而导致拒绝服务。
- CVE-2014-9585, Low
- 在 Linux 内核的虚拟动态共享对象(vDSO)实现随机执行地址的方式中发现了一个信息泄漏缺陷。本地非特权用户可能会使用此缺陷将内核内存地址泄漏到用户空间。
程序错误修复
- BZ#1201674
- 当在一秒内重复协调通用时间(UTC)值时(当 UTC 时间应为 23:59:60 时),国际原子时间(TAI)时间scale 之前作为内核 NTP 代码比预期增加一个 TAI offset 一秒。提供了补丁,它通过在 leap 秒本身中递增偏移来修复程序错误。现在,在 leap second 中正确设置了正确的 TAI。
- BZ#1204626
- 由于一个竞争条件,删除 cgroup,而属于该组的页面被交换到其中可能会触发内核崩溃。在这个版本中解决了竞争条件,删除 cgroup 现在可以安全地进行大量交换。
- BZ#1207815
- 在以前的版本中,如果打开的文件同时被重命名,则 open ()系统调用在某些情况下会失败,并显示 EBUSY 错误。在这个版本中,当发生此故障时,内核会自动重试 open (),如果重试不成功,则 open ()现在会失败,并显示 ESTALE 错误。
- BZ#1208620
- 在此次更新之前,cgroup 在 cgroup 迁移过程中阻止了新的线程组加入目标线程组,这会导致对 exec ()和 exit ()函数的竞争条件,以及一个 consequent 内核 panic。这个程序错误已通过扩展线程组锁定来解决,它涵盖了可以更改线程组 - fork ()、exit ()和 exec () 的操作,cgroup 迁移不再会导致内核 panic。
- BZ#1211940
- 之前尝试重新插入已定义的计时器的 hrtimer_start () 函数。因此,计时器节点指向自身,rb_insert_color () 函数进入无限循环。这个版本可防止 hrtimer_enqueue_reprogram () 函数处理,并确保 remove_hrtimer ()中的计时器状态已保留,从而修复该程序错误。
- BZ#1144442
- 在以前的版本中,网桥设备不会将 VLAN 信息传播到其端口,并将 Generic Receive Offload (GRO)信息传播到连接的设备。这会导致通过网桥设备降低 VLAN 性能,因为未启用 GRO。一个尝试解决这个问题,通过引入一个补丁来解决此问题,它引入了一个补丁,允许 VLAN 注册到参与网桥端口,并将 GRO 添加到网桥设备功能集中。但是,这个尝试引入了一些回归问题,这会破坏涉及网桥设备和 VLAN 的大量堆栈设置。在这个版本中,恢复了 BZ#858198 提供的补丁,并删除对这个功能的支持。
- BZ#1199900
- 在以前的版本中,内核在为信号处理程序初始化 FPU 状态时,在为 sigreturn ()函数保存了当前状态后。因此,如果信号发送失败,任务可能会丢失其浮点单元(FPU)上下文。在这个版本中,只有成功发送信号时,才会调用 drop_init_fpu ()fuction,FPU 上下文不再会在上述情形中丢失。
- BZ#1203366
- 在使用 kerberos 身份验证挂载通用 Internet 文件系统(CIFS)共享时,CIFS 模块使用 request_key 机制来获取用户的 krb5 凭据。使用密钥并且不再需要后,CIFS 会撤销它。这会导致在尝试重新抓取密钥时返回密钥撤销错误。要解决这个问题,key_invalidate () 调用已从上游代码向后移植,以丢弃密钥。此调用会使丢弃的密钥不可见,以便进一步搜索并立即唤醒垃圾收集器,以从密钥环中删除密钥并销毁它。因此,丢弃的密钥会被立即清除,不会在密钥搜索中返回。
- BZ#1203544
- 在以前的版本中,在调用前,fc_remote_port_del ()调用使用 fc_remote_port_add ()和 fc_remote_port_rolechg ()函数重新建立会话。在这个版本中,在重新建立连接前删除了 fc_remote_port_del ()调用,这可以防止竞争条件发生。
- BZ#1210593
- 由于 build_id_cache__add_s ()函数中的一个竞争条件,系统文件可以被截断。在这个版本中解决了竞争条件,系统文件不会在上述情况下被截断。
- BZ#1212057
- 在此次更新之前,"--queue-balance"选项不会通过多个队列分发流量,因为选项会忽略在给定范围之间平衡的请求,并且仅使用给定的第一个队列编号。因此,内核流量仅限于一个队列。底层源代码已被修补,内核流量现在在给定范围内平衡。
安全修复
- CVE-2014-3215, Important
- 在 seunshare 的方式中发现了一个安全漏洞,它是一种在不同安全上下文下运行可执行文件的工具,使用 libcap-ng 库的 capng_lock 功能。后续调用 suid root 二进制文件,这些二进制文件依赖于 setuid ()系统调用,在丢弃二进制文件的进程特权时也会设置保存的 set-user-ID,以允许本地的非特权用户在系统上升级其特权。注意:这个问题的修复是整个修复的内核部分,引入了 PR_SET_NO_NEW_PRIVS 功能以及相关的 SELinux exec 转换支持。
- CVE-2015-1421, Important
- 在 Linux 内核的 SCTP 实施过程中处理身份验证密钥引用计数的方式中发现了一个 use-after-free 漏洞。一个远程攻击者可以利用这个缺陷使系统崩溃,或者可能会升级其系统的权限。
- CVE-2014-3690, Moderate
- 它发现,Linux 内核的 KVM 实现没有确保主机 CR4 控制寄存器值在同一虚拟 CPU 上的虚拟机条目中保持不变。本地非特权用户可能会使用此缺陷导致系统上的服务拒绝。
- CVE-2014-7825, Moderate
- Linux 内核的 perf 子系统的 syscall tracing 功能中发现了一个越界内存访问缺陷。本地非特权用户可能会使用此缺陷使系统崩溃。
- CVE-2014-7826, Moderate
- Linux 内核 ftrace 子系统的 syscall tracing 功能中发现了一个越界内存访问缺陷。在启用了 ftrace syscall tracing 的系统上,本地非特权用户可能会使用此缺陷使系统崩溃或升级其权限。
- CVE-2014-8171, Moderate
- 它发现,Linux 内核内存资源控制器(memcg)处理 OOM (内存不足)状况的处理可能会导致死锁。在 OOM 事件期间,攻击者可以持续在单个内存约束的 cgroup 中生成新进程,可能会使用这个缺陷锁定系统。
- CVE-2014-9529, Moderate
- 在 Linux 内核密钥管理子系统执行密钥垃圾回收的方式中发现了一个竞争条件缺陷。一个本地攻击者可以试图在被垃圾收集时访问密钥,这会导致系统崩溃。
- CVE-2014-8884, Low
- 在 TechnoTrend/Hauppauge DEC USB 设备驱动程序中发现了一个基于堆栈的缓冲区溢出缺陷。对相应设备具有写入访问权限的本地用户可能会使用此缺陷使内核崩溃或可能在系统上提升其权限。
- CVE-2014-9584, Low
- 在 Linux 内核的 ISO9660 文件系统实现使用 RockRidge Extension Reference (ER)记录的 ISO9660 镜像上访问数据的方式中发现了一个安全漏洞。具有物理访问权限的攻击者可以利用此漏洞来披露最多 255 字节的内核内存。
程序错误修复
- BZ#1195747
- 由于回归问题,当大型读取在底层设备末尾部分扩展时,原始驱动程序会返回 EIO 错误代码,而不是返回涵盖该设备有效部分的简短阅读。底层源代码已被修补,原始驱动程序现在返回对设备其余部分的简短读取。
- BZ#1187639
- 在以前的版本中,需要 NULL pointer 检查来防止 nfs_async_inode_return_delegation () 函数中的 oops 被删除。因此,NFS4 客户端可能会意外终止。缺少 NULL pointer 检查已被添加回来,NFS4 客户端在这种情况下不再崩溃。
- BZ#1187666
- 无法离开之前加入的多播组,阻止尝试取消注册"sa"服务。解决了 IPoIB 多播加入中的多个锁定问题,并保留处理已被修复,导致一个完成其加入进程的组成功。因此,尝试取消注册 "sa" 服务不再因为泄漏资源而锁定。
- BZ#1187664
- 由于未平衡的多播加入并离开处理,尝试让之前未完成的多播组变得无响应。在这个版本中解决了在加入前允许多播组保留的 IPoIB 多播代码中的多个锁定问题。现在,在上述情况下,多播加入并导致失败或锁定不再发生。
- BZ#1188339
- 内核源代码包含 cpu_logical_map ()函数的两个定义,它将逻辑 CPU 号映射到物理 CPU 地址。将逻辑 CPU 号转换为对应的物理 CPU 号时,内核将使用 cpu_logical_map ()的第二个定义,该定义始终使用逻辑到物理 CPU 地址的一对一映射。但是,这个映射是重启后的错误,特别是当目标 CPU 处于"停止"状态时。因此,系统变得无响应,或显示意外延迟。在这个版本中,cpu_logical_map ()的第二个定义已被删除。现在,内核可以正确地将 CPU 号转换为其物理地址,在这种情况下不会发生意外延迟。
- BZ#1188838
- 在以前的版本中,内核在某些情况下可能会提供 tcp_collapse ()函数,其套接字缓冲区(SKB)与 PAGE_SIZE 变量的值相等。因此,复制值在循环中为零,这可能无法退出,因为它没有进行转发进度。要解决这个问题,循环已被重写,以避免不正确的计算。相反,循环会复制 PAGE_SIZE 变量的值或缓冲区的大小(以较大者为准)。因此,tcp_collapse () 函数不再处于循环中,因为只要"end"与"start"不同,复制始终为零。
- BZ#1188941
- 在以前的版本中,当使用光纤通道驱动程序时,在 rport scsi_remove_target ()函数中会发生竞争条件。因此,当解引用无效地址时,内核会意外终止。要解决这个问题,对基础架构的引用计数的更改已被恢复,系统不再崩溃。
- BZ#1191916
- 在没有 QCI 指令的旧系统上,所有可能的域都通过 TAPQ 指令探测到。在此次更新之前,当针对大于 16 的探测值调用这个指令时,可能会出现规格异常。例如,在执行"insmod"命令或没有 QCI 指令(z10、z196、z114)的系统上的 AP 总线时,可能会发生规格异常。因此,载入 z90crypt 内核模块会导致 panic。现在,域检查功能已被修正,如果没有 QCI 信息,则限制允许的范围。因此,用户可以使用 z90crypt 设备驱动程序成功加载和执行加密功能。
- BZ#1192055
- 在以前的版本中,KVM 会有一个禁用中断的页面错误。因此,页面错误处理器会尝试锁定,但 KSM 在出现相同的锁定时发送一个 IPI。然后 KSM 等待 IPI 进行处理,但 KVM 不会处理它,直到它用锁定为止。KSM 和 KVM 最终会遇到死锁,每次等待另一个进程。在这个版本中,内核可避免在中断被禁用时可以页面错误的操作。因此,在上述场景中,KVM 和 KSM 不再容易受到死锁。
- BZ#1192105
- USB 内核使用 USB 请求块的"hcpriv"成员来确定 USB 请求块(URB)是否活跃,但 ehci-hcd 驱动程序在排队的 URB 时没有正确设置。这与 snd-usb-audio 驱动程序中的一个缺陷相结合可能会导致 URB 重复使用,而无需等待它们完成。因此,列出崩溃,然后列出系统冻结或者内核崩溃发生。要解决这个问题,ehci-hcd 驱动程序代码已被更新,在继续准备 PCM 流之前,将"hcpriv"变量正确设置为 isochronous URBs,而 snd-usb-audio 驱动程序已被更新,以在端点上同步待处理的停止操作。因此,列出崩溃,然后列出系统冻结或崩溃不再发生。
- BZ#1193639
- 在以前的版本中,Hewlett Packard Smart Array (HPSA)驱动程序与旧版 HPSA 固件和 hp-snmp-agent 监控软件结合使用"系统工作队列"共享资源用于长时间。因此,随机其他任务会被阻断,直到 HPSA 驱动程序释放工作队列,并且记录如下信息:
INFO: task sshd:6425 blocked for more than 120 seconds. INFO: task ptymonitor:22510 blocked for more than 120 seconds.
有了这个更新,HPSA 驱动程序创建自己的本地工作队列,从而解决了这个问题。 - BZ#1198329
- 在此次更新之前,GFS2 文件系统的"Splice Read"操作(用于 sendfile ())无法在内存中正确分配所需的多块保留结构。因此,当 GFS2 块分配器分配数据块时,它会尝试解引用结构,从而导致内核 panic。现在,GFS2 的"Splice read"操作已被更改,以便在调用块分配器前正确在内存中分配必要的保留结构。因此,sendfile ()现在可以对 GFS2 正常工作。
安全修复
- CVE-2014-7841, Important
- 在执行地址配置更改(ASCONF)时,Linux 内核的 SCTP 实现验证 INIT 块的方式中发现了一个安全漏洞。远程攻击者可以通过发送特殊设计的 SCTP 数据包来触发系统上的 NULL pointer 解引用来使系统崩溃。
- CVE-2014-4656, Moderate
- Linux 内核的高级 Linux Sound 架构(ALSA)实施处理用户控制的方式中发现了一个整数溢出缺陷。本地特权用户可以使用此缺陷使系统崩溃。
程序错误修复
- BZ#1161420
- LVM2 精简配置对完整 RAID 条带中的 I/O 非常敏感。这个版本改进了 LVM2 精简配置,以便在 RAID 设备中更有效地工作。
- BZ#1161421
- 在以前的版本中,在 I/O 负载过重时,在使用 LVM2 精简配置时可能会出现无响应任务的超时时间。在这个版本中,LVM2 精简配置使用的各种基础架构已被改进,以提高效率并正确。这包括使用效率更高的数据结构、节流的 worker 线程,以防止应用程序发送比处理的 I/O 更多的 I/O 以及预抓取元数据。在这个版本中,元数据 I/O 缓冲层使用的驱除逻辑也修复了,这样可确保元数据块不会预先被驱除。
- BZ#1162072
- 由于 USB 控制器驱动程序中存在故障,一些数据流元数据会被丢弃。因此,集成的相机无法记录并显示以下错误消息:
libv4l2: error turning on stream: No space left on device
在这个版本中,数据流元数据处理已被修复,集成的相机可以正常工作。 - BZ#1165986
- 在此次更新之前,在 PowerPC 平台上的 spin-lock 逻辑中会发生竞争条件。因此,工作负载造成大量使用进程间通信(IPC),内核可能会意外终止。在这个版本中,在 PowerPC spin-lock 框架中添加了正确的同步。因此,内核不再会大量使用 IPC 时崩溃。
- BZ#1163214
- 由于初始化预操作更改属性的代码被认为,某些工作负载可能会生成不必要的缓存无效和其他 NFS 读取操作。在这个版本中修复了 pre_change_attr 字段的初始化,这可以防止不必要的缓存数据失效。
- BZ#1165001
- 在以前的版本中,在某些情况下,gfs2_converter 引入了磁盘内节点的 di_goal_meta 字段不正确的值。因此,gfs2_converter 返回了此类内节点上的 EBADSLT 错误,且不允许在常规文件的目录中或新块中创建新文件。在这个版本中,如果遇到损坏的目标值并继续进行正常操作,则允许 gfs2_converter 来设置可行的目标值。在这个版本中,gfs2_converter 隐式修复任何损坏的目标值,因此不再破坏正常操作。
- BZ#1165002
- 在以前的版本中,在使用 semaphore 工具的某些错误条件下,会导致内核变得无响应。在这个版本中,应用了补丁来修复这个错误。因此,在使用 semaphore 时内核不再会挂起。
- BZ#1165985
- 在此次更新之前,由于 e100 以太网驱动程序更新中的编码错误,物理层(PHY)无法正确初始化。这可能导致 RX 错误并减少吞吐量,特别是在使用较长的 UTP 布线时。在这个版本中修复了编码错误,因此上述场景不再发生在 e100 以太网设备中。
- BZ#1168129
- 在此次更新之前,NFS 守护进程中的重复回复缓存中存在一个缺陷,允许条目在仍在使用时释放。因此,如果 RPC 调用需要很长时间才能处理,则大量载入的 NFS 守护进程可能会意外终止。已修复缓存以防止此类条目被释放,服务器现在在上述场景中正常工作。
- BZ#1168504
- 在以前的版本中,外部日志块被处理为块,从而导致处理器用量增加。因此,在配置了外部日志设备的 ext4 文件系统上,df 命令可能会因为使用的块数量减去此类日志块的数量而显示负值。在这个版本中,外部日志块会被正确处理,因此 df 不再返回负值。
- BZ#1169433
- 在此次更新之前,提高 SIGBUS 信号不包含 siginfo 结构,描述 SIGBUS 异常的原因。因此,使用 libhugetlbfs 库的巨页的应用程序会失败。PACKAGE_NAME 已更新为通过 siginfo 结构提高 SIGBUS,将 BUS_ADRERR 作为 si_code 提供,并在 si_addr 字段中提供故障的地址。因此,使用巨页的应用程序在上述场景中不再会失败。
- BZ#1172022
- 在以前的版本中,从内核空间访问基于 FUSE 的文件系统可能会导致内核在内节点查找操作过程中变得无响应。为修复此错误,会在 FUSE 查找处理程序中解引用前验证现有的标志。因此,从内核空间访问基于 FUSE 的文件系统可以正常工作。
- BZ#1172024
- 在以前的版本中,热插 USB EHCI 控制器可能会导致内核变得无响应。在这个版本中解决了在热插事件过程中处理 EHCI 错误路径中的竞争条件,内核不再挂起。
- BZ#1172025
- 在以前的版本中,系统功能 semop ()和 semtimedop ()不会更新位于结构 sem_otime 中的 semaphore 更新的时间,这与手册页中的功能描述不一致。在这个版本中,应用了补丁来解决这个问题。因此,semop ()和 semtimedop ()现在可以正确地更新 sem_otime 结构。
- BZ#1172027
- 在此次更新之前,当转发数据包时,iptables 目标 TCPOPTSTRIP 使用 tcp_hdr ()函数来查找选项空间。因此,TCPOPTSTRIP 位于数据包中的不正确位置,因此不匹配剥离的选项。在这个版本中,TCPOPTSTRIP 使用 TCP 标头本身来查找选项空间。现在,这些选项可以被正确地剥离。
- BZ#1172764
- 在此次更新之前,ipset 实用程序计算了来自旧 IP 集的超时值不正确,然后会为 IP 新集合提供这些值。因此,启用了 timeout 选项的 IP 集合的大小可能会提供来自旧 IP 集的损坏的数据。这个程序错误已通过从旧集合中正确读取超时值来解决,然后再将它们提供给新集合。
- BZ#1172029
- 在以前的版本中,在某些情况下,semaphore 创建代码和 semop () 函数之间的竞争条件会导致内核变得无响应。在这个版本中,应用了补丁,内核也不会挂起。
- BZ#1172030
- 在此次更新之前,当 usb_wwan 设备驱动程序执行断开连接操作时,可能会出现 NULL pointer dereference。usb_wwan disconnect 过程已被 port_remove 过程替代,因此,在删除 WWAN USB 设备时内核不再挂起。
- BZ#1175509
- 使用 PCLMULQDQ 指令需要调用 kernel_fpu_begin ()和 kernel_fpu_end ()函数。因此,对 CRC32C 校验和计算使用 PCLMULQDQ 指令会导致一些处理器用量增加。在这个版本中,添加了一个新功能,以便使用支持此功能的处理器上的 PCLMULQDQ 指令来计算 CRC32C checksum,它只使用 CRC32 指令提供速度。
安全修复
- CVE-2014-5077, Important
- 在 Linux 内核的流控制传输协议(SCTP)实现中发现了一个 NULL pointer dereference 缺陷。一个远程攻击者可以使用这个缺陷使系统崩溃。
- CVE-2013-2596, Important
- 在 Linux 内核的 Frame Buffer 设备通过 mmap syscall 将内核内存映射到用户空间的方式中发现了一个整数溢出缺陷。本地用户可以访问帧缓冲设备文件(/dev/fb*)可能会使用这个缺陷来升级其在系统上的权限。
- CVE-2013-4483, Moderate
- 在 Linux 内核 IPC 实现中的 ipc_rcu_putref ()函数中发现了一个安全漏洞,它处理了相应的参考计数器。本地非特权用户可能会使用此缺陷触发内存不足(OOM)条件,并可能会使系统崩溃。
- CVE-setuptools181, Moderate
- 当收到 netlink 消息时,Linux 内核执行的权限检查是不够的。本地非特权用户可以通过将 netlink 套接字作为 stdout 或 stderr 传递给更特权进程并更改此进程的输出,从而绕过这些限制。
- CVE-2014-3122, Moderate
- 它发现,在某些情况下,Linux 内核 Memory Managment 子系统中的 try_to_unmap_cluster ()函数无法正确处理页面锁定,这可能会在 mlock_vma_page ()函数中触发 BUG_ON ()宏。本地非特权用户可能会使用此缺陷使系统崩溃。
- CVE-2014-3601, Moderate
- 在 Linux 内核的 kvm_iommu_map_pages ()函数处理 IOMMU 映射失败的方式中发现了一个安全漏洞。在带有分配主机设备的客户机中具有特权的用户可能会使用此缺陷使主机崩溃。
- CVE-2014-4653,CVE-2014-4654,CVE-2014-4655, Moderate
- 在 Linux 内核的高级 Linux Sound 架构(ALSA)实施处理用户控制的方式中发现多个无用缺陷。本地特权用户可以使用这些漏洞使系统崩溃。
- CVE-2014-5045, Moderate
- 在符号链接上执行卸载操作时,Linux 内核的 VFS 子系统处理参考计数中发现了一个安全漏洞。本地无特权用户可以使用此缺陷来耗尽系统上的所有可用内存,或者可能触发一个无用错误,从而导致系统崩溃或特权升级。
- CVE-2014-4608, Low
- 在 Linux 内核 LZO 实现的 LZO 实施处理 Literal Runs 的 lzo1x_decompress_safe () 函数中发现了一个整数溢出缺陷。在非常罕见的情况下,一个本地攻击者可以利用这个漏洞使系统崩溃,或者可能会在系统上升级其权限。
程序错误修复
- BZ#1065187
- megaraid_sas 驱动程序中的一个错误可能会导致驱动程序错误地读取硬件状态值。因此,在系统引导时禁用了 RAID 卡,系统可能无法引导。在这个版本中,megaraid_sas 驱动程序已被修正,以便在系统引导时现在在系统启动时启用 RAID 卡。
- BZ#1063699
- 由于 lpfc 驱动程序中的 ndlp 列表损坏错误,带有 Emulex LPe16002B-M6 PCIe 2-port 16Gb Fibre Channel Adapters 的系统可能会在 I/O 操作过程中触发内核 panic。已向后移植了一系列补丁来解决这个问题,因此内核在上述系统的 I/O 操作过程中不再 panic。
- BZ#704190
- 在以前的版本中,当使用在绑定接口之上配置的桥接接口时,绑定驱动程序不知道分配给网桥的 IP 地址。因此,启用了 ARP 监控时,在探测同一子网时 ARP 监控无法以网桥的 IP 地址为目标。因此,网桥总是报告为 down,且无法访问。在这个版本中,绑定驱动程序已了解到分配给绑定接口上配置的网桥的 IP 地址,并且 ARP 监控现在可以按预期探测网桥。请注意,如果使用 arp_validate 选项,仍会出现这个问题。因此,在解决此问题之前,不要使用这个选项。
- BZ#1063478, BZ#1065398, BZ#1065404, BZ#1043540, BZ#1096328
- 在 IBM S/390 系统上 AES、DES 和 DES3 算法的操作实现中发现了几个并发问题,可能会导致数据崩溃。具体来说,工作页面不受 CTR 模式中的并发调用的保护。在 CTR 模式中没有获取工作页面的回退解决方案无法正确处理 iv 值。在某些并发情况下,使用的 CBC 模式没有正确保存和恢复密钥和 iv 值。所有这些问题已在代码中解决,上述算法的并发使用不再会导致数据崩溃。
- BZ#1061873
- 高级可编程中断控制器(APIC)代码的以前的更改会导致使用多处理器(MP)表在某些 Intel CPU 上回归。可以在 LAPIC 映射前执行尝试从本地 APIC (LAPIC)读取的尝试,从而导致系统引导期间内核崩溃。在解析 MP 表时,通过尽快映射 LAPIC 来解决此问题。
- BZ#1060886
- "radix_tree" 交换编码的交换区错误计算出大于 8 的交换区域,通过截断交换条目的较低位进行索引。因此,当交换到这样的交换区时,具有 8 个交换区的系统可能会触发一个虚假 OOM 的情况。在这个版本中,通过减少 SWP_TYPE_SHIFT () 函数的返回值,并从 read_swap_header ()函数中删除有问题的函数调用来解决这个问题。
- BZ#1060381
- 在以前的版本中,一些设备映射器内核模块,如 dm-thin、dm-space-map-metadata 和 dm-bufio,其中包含了对它们正常工作的各种错误。这个版本向后移植了几个解决了这些问题的上游补丁,包括对设备映射器精简配置(thinp)的元数据大小特性的修复,以及 dm-thin 和 dm-bufio 的只读模式修复。因此,上述内核模块现在包含最新的上游更改,可以正常工作。
- BZ#1059808
- 当尝试因为文件系统配额违反而在 GFS2 文件系统中创建文件时,相关的 VFS inode 不会被完全未初始化。这可能会导致列表损坏错误。在这个版本中,通过在这种情况下正确重新初始化 VFS inode 来解决这个问题。
- BZ#1059777
- 在 Red Hat Enterprise Linux 6.5 中,如果相应的网络设备没有报告其功能列表中的任何 CSUM 标志,则会自动禁用 TCP 分段卸载(TSO)功能。在以前的版本中,通过绑定设备配置的 VLAN 设备不会按预期传播其 NETIF_F_NO_CSUM 标志,因此它们的功能列表不包含任何 CSUM 标志。因此,这些 VLAN 设备禁用了 TSO 功能,这会导致带宽性能降低。在这个版本中,绑定驱动程序会正确传播上述标记,以便网络流量现在通过绑定流过 VLAN 设备,而不会出现性能问题。
- BZ#1059586
- 由于 mlx4_en 模块中的一个错误,可以在初始化前访问与时间戳相关的数据结构。因此,载入 mlx4_en 可能会导致内核崩溃。这个问题已通过将时间戳机制的启动移到代码中的正确位置来解决。
- BZ#1059402
- 由于以前的更改重构了通用路由封装(GRE)隧道代码,ip_gre 模块无法正常工作。因此,GRE 接口丢弃了设置了 Explicit Congestion 通知(ECN)位的每个数据包,且没有设置 ECN-Capable Transport (ECT)位。在这个版本中,重新引入 ipgre_ecn_decapsulate () 函数,它现在被用来替代未正确实现的 IP_ECN_decapsulate () 函数。ip_gre 模块现在可以正常工作,GRE 设备可以按预期处理所有数据包。
- BZ#1059334
- 当从 XFS 文件系统上的命名空间中删除内节点时,文件系统可能会进入死锁情况并变得无响应。这是因为删除操作错误地使用了 AGF 和 AGI 锁定,其顺序与排序约束的要求相反,这会导致文件删除和内节点分配和释放操作之间可能的死锁。在这个版本中,在删除带有删除操作的第一个事务的内节点条目前,内节点的引用计数会被丢弃。这样可确保 AGI 和 AGF 锁定以正确顺序锁定,从而防止在这种情况下出现任何进一步死锁。
- BZ#1059325
- 在以前的版本中,for_each_isci_host ()宏被错误地定义,以便它可以访问 2-element 数组的一个 out-of-range 元素。这个宏也被 GCC 4.8 错误地优化,以便在带有两个 SCU 控制器的平台上执行多次。因此,系统在进入 S3 状态或删除 isci 模块时会触发内核 panic。在这个版本中修正了上述宏,上面描述的问题不再发生。
- BZ#1067722
- 之前的更改启用了为网桥接口上配置的 VLAN 接口接收加速。但是,这个更改允许 VLAN 标记的数据包绕过网桥,并直接发送到 VLAN 接口。在这个版本中,确保网桥正确处理流量,然后再将流量传递给该网桥上配置的任何 VLAN 接口。
- BZ#844450
- 完全公平调度程序(CFS)没有验证 CFS 周期计时器在 CFS 运行队列上的节流任务时是否在运行。因此,在某些情况下,CFS 运行队列会卡住,因为 CFS 周期计时器不活跃且无法重启。要解决这个问题,CFS 现在会在节流功能内重启 CFS 周期计时器(如果它不活跃)。
- BZ#1069028
- 由于 ixgbevf 驱动程序中的一个错误,来自 ixgbevf 接口中传入数据包的 VLAN 信息可能会丢失,因此这些数据包不会到达相关的 VLAN 接口。这个问题已通过在将数据包的 VLAN 信息传递给网络堆栈前将其添加到套接字缓冲(skb)中来解决。因此,ixgbevf 驱动程序现在将 VLAN 标记的数据包传递给适当的 VLAN 接口。
- BZ#1069737
- 以前的 CIFS 代码补丁引入了一个回归问题,阻止用户使用 NetBIOS 通过端口 139 上的 TCP 服务挂载 CIFS 共享。这个问题已通过对 get_rfc1002_length ()函数中的 top 字节进行屏蔽来解决。
- BZ#880024
- 在以前的版本中,使用远程非统一内存架构(NUMA)节点访问,semtimedop semaphore 操作的锁定不足。因此,spinlock 争用发生,这会导致在运行大量访问同一 semaphore 的并行进程时,semop ()系统调用和服务器上的高负载。这个版本提高了具有大量语义操作的工作负载的可扩展性和性能,特别是在大型 NUMA 系统中。这种改进是通过将每个 semaphore 阵列的全局锁定转换为多个 semaphore 操作的锁定,允许多个同时 semop ()操作。因此,性能下降不再发生。
- BZ#886723
- 文件系统卸载代码和文件系统通知代码之间的罕见的竞争条件可能会导致内核 panic。在这个版本中,内核应用了一系列补丁来防止这个问题。
- BZ#885517
- bio 层中的一个错误可能会阻止用户空间程序在大量 RAM 内存碎片状况下运行时将数据写入磁盘。这个问题已通过修改 bio 层中的相应功能来拒绝添加新内存片段以及已达到的最大内存片段数时拒绝添加新内存页面的问题。
- BZ#1070856
- qla2xxx 驱动程序中的一个错误导致内核崩溃。在这个版本中,修复 qla2x00_alloc_iocbs ()函数中的 "for" 语句中的不正确的条件来解决这个问题。
- BZ#1072373
- 当主机时间戳计数器(TSC)被标记为不稳定时,引入了全局时钟更新的更改会导致客户机机器启动缓慢。随着分配的 vCPU 数量增加,速度较慢。要解决这个问题,应用了补丁来限制全局时钟更新的速度。
- BZ#1055644
- 以前向后移植到 XFS 代码的补丁向 xlog_cil_empty ()函数添加了一个无条件调用。如果 XFS 文件系统是使用 unsupported nodelaylog 选项挂载的,则该调用会导致访问未初始化的 spin 锁定和一个 consequent 内核 panic。要避免这个问题,nodelaylog 选项已被禁用; 选项仍然被接受,但不再起作用。(nodelaylog 挂载选项最初定义为上游测试选项,自此后已被删除。)
- BZ#1073129
- 由于 hrtimers 子系统中的一个错误,clock_was_set ()函数从软 IRQ 上下文中调用 Inter-processor interrupt (IPI)并等待其完成,这可能会导致死锁情况。通过将 clock_was_set ()函数调用移到工作上下文来应用补丁来解决这个问题。另外,在恢复过程中,hrtimers_resume ()函数仅为当前 CPU 重新编程内核计时器,因为它假定所有其他 CPU 都离线。但是,在某些情况下,这个假设不正确,比如当恢复带有一些非引导 CPU 的 Xen 客户机时,只有禁用 IRQs 时停止了这个假设。因此,即使这些 CPU 在线,在引导 CPU 外,内核计时器不会被修正。要解决这个问题,hrtimers_resume ()已修改,以触发早期软 IRQ 在所有在线 CPU 上正确重新编程内核计时器。
- BZ#1073218
- vmxnet3 驱动程序中的一个错误允许当驱动程序与 netconsole 模块一起使用时,触发潜在的竞争条件。竞争条件允许驱动程序的内部 NAPI 轮询例程与 netpoll 控制器例程同时运行,这会导致数据崩溃和后续的内核 panic。要解决这个问题,vmxnet3 驱动程序已被修改来调用适当的中断处理程序,以正确调度 NAPI 轮询请求。
- BZ#1075713
- 以前,Red Hat GFS2 文件系统将每个内节点的 ACL 条目限制为 25。然而,在有些情况下这个数字不足,从而导致 setfacl 命令失败。在这个版本中,这个限制增加到 4 KB 块大小的最大 300 ACL 条目。如果块大小较小,则会相应地调整这个值。
- BZ#1053547
- SCTP sctp_connectx ()ABI 无法对使用 32 位模拟编译的 64 位内核正常工作。因此,在这种情况下,使用 sctp_connectx ()函数的应用程序不会运行。要解决这个问题,新的 ABI 已被实现;COMPAT ABI 允许从 COMPAT-specific 结构复制和转换用户数据到特定于 SCTP 的结构。需要 sctp_connectx ()的应用程序现在可以在使用 32 位模拟编译的 64 位内核的系统上正常工作。
- BZ#1075805
- 在以前的版本中,如果 hrtimer 中断延迟,则在同一处理器上排队的所有待处理 hrtimer 事件也会延迟,直到处理初始 hrtimer 事件为止。这可能会导致所有 hrtimer 处理在一段时间内停止。要防止这个问题,在处理最初延迟 hrtimer 事件时,内核已被修改来处理所有过期的 hrtimer 事件。
- BZ#915862
- NFSv4 代码中的以前更改会导致同步 NFSv4 挂载选项中断。应用了补丁来恢复 sync 挂载选项的功能。
- BZ#1045150
- 负责创建和绑定数据包套接字的代码没有优化,因此使用 socket ()和 bind ()系统调用的应用程序不会按预期执行。补丁已应用到数据包套接字代码,因此在某些情况下,套接字创建和绑定的延迟现在会显著降低。
- BZ#919756
- 块设备代码中完成和超时处理之间的竞争条件有时可能会触发 BUG_ON () 断言,从而导致内核 panic。在这个版本中,通过在代码中重新定位相关函数调用和 BUG_ON () 断言来解决这个问题。
- BZ#1044117
- 如果设置了 VSX Machine State Register (MSR)位,用户进程的上下文以前无法在 PowerPC 平台上保存,但用户没有提供足够的空间来保存 VSX 状态。此更新允许在这样的情形中清除 VSX MSR 位,表明用户上下文中没有有效的 VSX 状态。
- BZ#1043733
- 在迁移 CPU cgroup 上的任务时,内核任务调度程序可能会触发竞争条件。竞争条件可能会导致访问指向不正确的父任务组的任务,从而导致系统的行为不可预测,例如显示没有响应。这个问题已通过确保在任务迁移过程中正确存储了正确的任务组信息来解决。
- BZ#1043353
- 在以前的版本中,当热向系统添加内存时,内存管理子系统总是对在线设置的所有内存部分执行无条件页面-块扫描。热添加操作的总持续时间取决于系统已具有的内存大小以及正在添加的内存大小。因此,如果添加大量内存,或者目标节点已经有相当大的内存,热添加操作需要很长时间才能完成。这个版本会优化代码,以便只在需要时执行 page-block 扫描,这大大减少了热添加操作的持续时间。
- BZ#1043051
- 由于 SELinux 套接字中的一个错误收到 hook,在收到 peer:recv 访问控制拒绝时不会丢弃网络流量。SELinux 套接字接收 hook 中存在一个有问题的网络检查,在上述情况下,网络流量会被正确丢弃。
- BZ#1042731
- d_splice_alias () 函数的最新更改引入了一个错误,允许 d_splice_alias ()从与正在查找的目录不同的目录中返回 dentry。因此,在集群环境中,当目录被删除时,可能会触发内核 panic,同时在另一个集群节点上在此目录中执行并发跨目录操作。在这个版本中,通过更正 d_splice_alias () 函数中的搜索逻辑来避免在这种情况下出现内核 panic,因此该功能无法再从不正确的目录中返回 dentry。
- BZ#1040385
- 当通过 Red Hat Enterprise Linux 6.5 及之后的版本中的绑定设备使用 SCTP 时,SCTP 假设虚拟设备的卸载功能没有保证底层物理设备具有这些功能。因此,传出数据包的校验和会被破坏,且无法正确建立网络连接。应用了补丁,以确保软件包到没有 SCTP 校验和功能的设备的校验和会在软件回退中正确计算。现在,Red Hat Enterprise Linux 6.5 及之后的版本中可以通过绑定设备建立 SCTP 连接。
- BZ#1039723
- 使用新函数 release_cb ()扩展"proto"结构的前一个变化,它会破坏内核应用程序二进制接口(kABI)的完整性。如果调用的核心堆栈新引入到这个功能的指针,针对针对旧内核标头编译的模块,调用会导致访问不足以及后续的内核 panic。要避免这个问题,核心堆栈已被修改为识别新引入的 slab 标记 RHEL_EXTENDED_PROTO。这允许核心堆栈只对支持它的模块安全地访问 release_cb pointer。
- BZ#1039534
- 之前的更改从 Linux 内存管理代码中删除了 ZONE_RECLAIM_LOCKED 标志,以修复内存区回收逻辑中的 NUMA 节点分配问题。但是,删除标志允许并发页面在一个内存区中回收(在系统负载过重时),导致出现不必要的旋转锁定竞争和后续性能问题(系统变得缓慢或无响应)。在这个版本中,如果区无法满足扫描要求,防止重新声明线程扫描内存区来解决这个问题。负载重度的系统不再会出现 CPU 过载,但保持其预期性能。
- BZ#1082127
- 当 NFS 客户端在发送 CLOSE 操作后收到 NFS4ERR_ADMIN_REVOKED 错误时,NFS4 会错误地处理一个情况。因此,客户端无限期地发送相同的 CLOSE 操作,尽管它收到 NFS4ERR_ADMIN_REVOKED 错误。对 NFSv4 代码应用补丁,以确保 NFS 客户端在这种情况下仅发送特定的 CLOSE 操作。
- BZ#1037467
- 由于 Linux 内存管理的最新更改,当热拔 CPU 时,内核无法正确处理每个 CPU LRU 页面向量。因此,相关离线 CPU 的页向量会保留内存核算的内存页面。这导致 libvirtd 守护进程在系统关闭时删除相关的内存 cgroup 目录,从而导致 libvirtd 无响应。要解决这个问题,Linux 内存管理现在可以从相关页面向量中正确地清除离线 CPU 的内存页面。
- BZ#1037465
- cgroup 代码中错误放置函数调用会阻止 notify_on_release 功能正常工作。此功能用于删除空 cgroup 目录,但由于这个错误,一些空 cgroup 目录仍保留在系统中。在这个版本中,确保 notify_on_release 功能始终由 cgroup_task_migrate ()函数中的正确排序操作正确触发。
- BZ#963785
- 在以前的版本中,NFSv4 允许 NFSv4 恢复过期或丢失的文件锁定。如果文件同时修改了,这可能会导致文件损坏。此问题已通过一系列补丁解决,确保 NFSv4 客户端不再尝试恢复过期或丢失的文件锁定。
- BZ#1036972
- 使用 NFS 文件系统的系统可能会变得无响应,或者因为 nfsd 守护进程中的重复回复缓存(DRC)代码中存在 use-after-free 错误而触发内核 oops。这个问题已通过在尝试使用 nfsd 前修改 nfsd 到 unhash DRC 条目并更喜欢从 slab 分配新的 DRC 条目来解决,而不是从列表中重新使用过期的条目。
- BZ#1036312
- 在 ptrace ()系统调用中使用 Big Kernel Locks (BKLs)可能会导致 BKL 争用广泛使用 ptrace ()的某些系统上,如 User-mode Linux (UML)系统,从而降低这些系统的性能。这个版本从 ptrace ()系统调用中删除相关的 BKLs,从而解决相关的性能问题。
- BZ#975248
- ixgbe 驱动程序中的一个错误导致 IPv6 硬件过滤表在通过 SR-IOV 环境中的 PF 接口使用桥接设备时没有正确重写接口。因此,VF 之间的 IPv6 流量中断。现在,上游补丁已被向后移植来修改 ixgbe 驱动程序,以便对 Multimedia Terminal Adapter (MTA)表的更新现在为无条件,避免在 PF 重置时在 MTA 表中出现可能的不一致的情况。在这种情况下,VF 间的 IPv6 流量可以如预期进行。
- BZ#1116947
- 之后的 Intel CPU 将新的"Condition Changed"位添加到 MSR_CORE_PERF_GLOBAL_STATUS 注册。在以前的版本中,内核 false 假设这个位表示性能中断,这会阻止其他 NMI 处理程序运行并执行。要解决这个问题,对内核应用了补丁来忽略 perf 代码中的这个位,使其他 NMI 处理程序能够运行。
- BZ#975908
- 由于 mlx4 驱动程序中的一个错误,在调整 Tx 或 Rx 环时,Mellanox 以太网卡会被意外下降。现在,应用了补丁,当设置了 Tx 或 Rx 环时,mlx4 驱动程序可以正确地验证以太网卡的状态,从而解决这个问题。
- BZ#1083748
- 在以前的版本中,硬件可能会以 FIFO 顺序而不是标记的顺序执行由驱动程序发送的命令。因此,命令可能会按顺序执行,这可能导致大量延迟和吞吐量降低。在这个版本中,ATA 子系统标记发送到硬件的每个命令,确保硬件按照标记的顺序执行命令。支持标记命令的控制器性能现在可以提高 30-50%。
- BZ#980188
- 当通过 peer-to-peer (PPPP)链接传输大量数据时,可以触发 tty 驱动程序中的 throttle ()和 unthrottle ()函数之间的一些竞争条件。因此,tty 驱动程序变得无响应,处于 throttled 状态,这会导致流量停止。另外,如果大量载入 PPP 链接,则 tty 驱动程序中的另一个竞争条件可能会被触发。这个竞争条件允许对可用缓冲区空间进行不安全的更新,这也可能导致流量停滞。解决这两个竞争条件的一系列补丁都应用于 tty 驱动程序;如果触发第一个竞争条件,则驱动程序循环并强制重新评估相应测试条件,这样可确保上述情形中出现不间断流量流。现在,因为读锁定而完全避免了第二个竞争,可用缓冲区空间的更新可以正常进行。
- BZ#1086450
- 在以前的版本中,Huge conversion Lookaside Buffer (HugeTLB)无条件地允许访问巨页。但是,在某些环境中,巨页可能不被支持,如 PowerPC 架构上的 KVM 客户机,当巨页没有支持时,尝试使用基本页面作为内存的巨页会导致内核 oops。在这个版本中,如果系统中不支持巨页,则 HugeTLB 拒绝对巨页的访问。
- BZ#982770
- 使用压缩功能回收内存的重启逻辑以前应用于 LRU 页面向量级别。但是,这可能会在内存分配中造成大量延迟,因为内存压缩不需要特定 cgroup 和整个内存区的内存页面。这个问题已通过将重启逻辑移到区级别,并在压缩需要区更多可用页面时为区中的所有内存 cgroup 重启内存重新声明的问题。
- BZ#987634
- mlx4 驱动程序中的一个错误可能会触发 Tx 环中处理工作队列元素(WQE)时的"blue flame"功能流量流和 Tx 环中的时间戳机制之间的竞争。因此,mlx4 以太网卡的相关队列对(QP)进入错误状态,相关 Tx 环上的流量被阻止。补丁已应用于 mlx4 驱动程序,因此驱动程序不会对 Tx 环中最后完成的 WQE 进行关联,从而避免了上面提到的竞争。
- BZ#1034269
- 当页表升级时,会为虚拟地址空间添加一个新的页表级别,这会导致新的 Address Space Control Element (ASCE)。但是,在页表升级时,虚拟地址空间的 Translation Lookaside Buffer (TLB)没有被刷新。因此,TLB 包含与旧的 ASCE 关联的条目,这会导致意外的程序故障和随机数据崩溃。要解决这个问题,与旧 ASCE 关联的 TLB 条目现在在页表升级时按预期清除。
- BZ#1034268
- IBM System z 上的 Linux 内存管理以前的更改删除了 Address Space Control Element (ASCE)类型的处理程序。因此,内核无法处理 ASCE 异常,这会导致内核 panic。例如,如果内核试图使用大于用户空间程序的当前页表限制的地址访问用户内存,则会触发这样的异常。如果引发 ASCE 异常,此问题已通过调用标准页面错误处理程序 do_dat_exception 来解决。
- BZ#1104268
- 由于挂载选项解析器中的一个错误,在 CIFS DFS 共享上的前缀路径可以使用双引号('\\')前加上前缀,从而导致某些环境中出现不正确的 "No such file" 错误。挂载选项解析程序已被修复,前缀路径现在会如预期以反斜杠开头。
- BZ#995300
- 由于 Infiniband 驱动程序中的一个错误,ip 和 ifconfig 工具会错误地报告 IP 链路状态 over Infiniband (IPoIB)接口(如果"ifconfig",如果"RUNNING",如果没有电缆,则显示为 "UP",即使没有电缆连接到相应的网卡。这个问题已通过在代码的正确位置调用对应的 netif_carrier_off () 函数来解决。现在,在上述情况下,IPoIB 接口的链接状态会被正确报告。
- BZ#995576
- 对于内核,较早的补丁为 QLogic 的 qla2xxx 驱动程序添加了动态队列深度节流功能,允许驱动程序调整附加的 SCSI 设备的队列深度。但是,当某些环境中启用了此功能时,内核可能会崩溃,比如在安装了大量 I/O 负载的 EMC PowerPath 多路径的系统中。要解决这个问题,动态队列深度节流功能已从 qla2xxx 驱动程序中删除。
- BZ#1032350
- 在某些情况下,完全公平调度程序(CFS)中存在一个错误,在 cgroup 之间移动分叉任务时触发竞争条件。当一个子任务被访问时,这个竞争条件可能会导致免费使用的错误以及后续的内核 panic,同时指向其父任务的过时的 cgroup。将补丁应用于 CFS,以确保子任务始终指向有效的父任务组。
- BZ#998625
- 当在大量碎片的 GFS2 文件系统中执行 I/O 操作时,可能会发生显著的性能下降。这是因为 GFS2 用来搜索所有可用资源组(rgrp)中的理想可用块的分配策略。在出现大量碎片时,应用了一系列补丁来提高 GFS2 文件系统的性能。现在,如果 GFS2 满足最低要求,则 GFS2 现在会分配在 rgrp 中发现的最大范围。当多块保留时,GFS2 还减少了对位映射的搜索量,方法是跟踪给定 rgrp 中多块保留失败的最小扩展。这通过避免不必要的 rgrp free 块搜索来提高 GFS2 性能。另外,这个补丁系列修复了 GFS2 块分配代码中的一个 bug,当一个多块保留时没有从 rgrp 的保留树正确删除,这最终会因为保留块的计数而触发 BUG_ON ()宏。
- BZ#1032347
- 由于 cgroup 代码中的一个竞争条件,当内核任务调度程序在 cgroups 之间移动退出任务时,内核任务调度程序可能会触发一个 use-after-free 错误,这会导致内核 panic。这个版本通过引入新的功能 cpu_cgroup_exit ()来避免内核 panic。此功能可确保内核不会释放尚未为空的 cgroup。
- BZ#1032343
- 由于 cgroup 代码中出现竞争条件,所以内核任务调度程序可能会在 cgroup 之间移动退出任务时触发内核 panic。应用了补丁,通过替换 cgroup 代码中几个不正确的功能调用来避免此内核 panic。
- BZ#1111631
- 如果缓存包含具有相同密钥的多个条目但不同的 TOS、标记或 OIF 位,则自动路由缓存重建功能可能会错误地计算路由散列链的长度。因此,该功能可以访问重建的限制并禁用系统上的路由缓存。这个问题已通过使用帮助函数来解决,这样可避免计算此类重复路由。
- BZ#1093819
- 在删除文件以直接降低相关索引节点的链接数后,NFS 之前称为 drop_nlink ()函数。因此,NFS 无法重新验证内节点缓存,因此可以使用过时的文件句柄,从而导致 ESTALE 错误。应用了补丁以确保 NFS 在删除文件后正确验证内节点缓存。
- BZ#1002727
- 在以前的版本中,在报告命令成功中止后,vmw_pwscsi 驱动程序可能会尝试向 SCSI 中层完成命令。这会导致一个双完成错误和后续的内核 panic。此更新可确保 pvscsi_abort ()函数仅在 abort 完成后返回 SUCCESS,防止驱动程序无效尝试完成该命令。
- BZ#1030094
- 由于 IPv6 代码中有几个错误,当缓存的 IPv6 目标条目数量达到一个高流量路由器时,可能会发生软锁定。应用了一系列补丁来解决这个问题。这些补丁可确保异步执行路由探测,以防止出现垃圾回收的死锁。另外,垃圾收集器现在异步运行,防止同时请求垃圾收集器的 CPU 等待所有其他 CPU 完成垃圾回收。因此,在上述情况下,软锁定不再发生。
- BZ#1030049
- 由于 NFS 代码中的一个错误,状态管理器和 DELEGRETURN 操作可能会在 DELEGRETURN 收到异步会话错误时进入死锁。状态管理器无法处理失败的 DELEGRETURN 操作,因为它正在等待异步 RPC 任务完成,这无法完成,因为 DELEGRETURN 操作无限期地出现会话错误。应用了一系列补丁,以确保在收到会话错误时异步错误处理程序等待恢复,并且死锁不再发生。
- BZ#1030046
- 如果在第一个 RPC 传输完成前超时,RPC 客户端总是重新传输页面数据的零复制。但是,如果使用 O_DIRECT 缓冲和对应的 TCP 套接字仍然被引用时,则重新传输可能会导致数据崩溃。要防止数据崩溃,请重新传输 RPC 调用,在这种情况下,使用 sendmsg ()函数执行。sendmsg ()函数重新传输第一个 RPC 传输的 authentic reproduction,因为 TCP 套接字包含页面数据的完整副本。
- BZ#1095796
- 由于 nouveau 内核模块中的一个错误,在某些多显示配置中可能会修改错误的显示输出。因此,在连接了外部显示器的 Lenovo Thinkpad T420 和 W530 笔记本电脑上,这可能会导致 LVDS 面板"bleed"到白色,显示控制器在重新引导后可能会无法正常工作。对显示配置的更改还可能会在各种情况下触发错误。在这个版本中,nouveau 内核模块已被修正,上述配置现在可以正常工作。
- BZ#1007164
- 当客户机支持 Supervisor Mode Execution Protection (SMEP)时,KVM 会在客户机页表条目(sptes)上设置适当的权限位,以模拟 SMEP 强制访问。在以前的版本中,KVM 会错误地验证主机 cr4 注册中是否设置了"smep"位,而不是 guest cr4 注册。因此,如果主机支持的 SMEP,它会被强制执行,即使它没有被请求,这可能会导致 guest 系统无法引导。在这种情况下,这个更新会按预期进行"smep"位检查和客户机系统引导。
- BZ#1029585
- 如果静态定义的网关无法访问,并且对应的邻居条目进入 FAILED 状态,则网关将保持在 FAILED 状态,即使它再次可访问。这导致无法通过该网关路由流量。在这个版本中,允许自动探测到这样的网关,并在流量被访问后再次通过网关路由流量。
- BZ#1009332
- 在以前的版本中,某些网络设备驱动程序在挂载后不接受 ethtool 命令。因此,不会应用指定设备驱动程序的当前设置,并返回错误消息。添加了 ETHTOOL_DELAY 变量,这样可确保 ethtool 实用程序在尝试应用选项设置前等待一段时间,从而修复这个程序错误。
- BZ#1009626
- 当 Real-Time (RT)调度程序在 CPU 和 wakeup_kswapd ()函数间移动 RT 任务时,系统可能会进入死锁情况,从而导致内核 panic。这个问题已通过从 deadlock-safe 上下文中删除有问题的内存分配来解决,因此从 deadlock-safe 上下文调用 wakeup_kswapd () 函数。
- BZ#1029530
- 在以前的版本中,e752x_edac 模块错误地处理 pci_dev 使用计数,这可能会为零并取消分配 PCI 设备结构。因此,当模块在某些系统中多次载入时,可能会出现内核 panic。在这个版本中解决了通过重复载入和卸载模块触发的使用计数,不再发生内核 panic。
- BZ#1011214
- IPv4 和 IPv6 代码包含与 conntrack 碎片处理相关的几个问题,导致碎片处理阻止了碎片重新组合。这个版本应用一系列补丁,并确保正确处理 MTU 发现,并正确匹配片段并重新集合数据包。
- BZ#1028682
- 内核无法正确处理环境和电源警告(EPOW)中断。这导致无法成功使用"virsh shutdown"命令在 IBM POWER8 系统上关闭客户机。在这个版本中,内核可以正确地处理 EPOW 事件,并打印相应 EPOW 事件的信息描述。有关每个遇到的 EPOW 的详细信息,可在 Real-Time Abstraction Service (RTAS)错误日志中找到。
- BZ#1097915
- 从系统中删除网桥后,网桥 MDB RTNL 处理程序被错误地移除,然后配置了网桥。这会导致各种问题,例如,没有显示来自其余网桥的多播 IGMP 侦听数据。在这个版本中,确保仅在网桥模块卸载后删除桥接处理程序,多播 IGMP snooping 数据现在可以在上述情况下正确显示。
- BZ#1098658
- SCSI 代码之前的更改修复了在删除 SCSI 设备时可能会出现的竞争条件。但是,这种改变会导致性能下降,因为它使用了块层代码中的某些功能,与更新的内核版本相比是返回不同的值。这个版本更改了 SCSI 代码,以正确使用块层代码返回的值。
- BZ#1026864
- 以前对 md 驱动程序的更改禁用了 RAID5 卷的 TRIM 操作,以防止可能的内核 oops。但是,如果 MD RAID 卷被重塑为不同的 RAID 级别,这可能会导致在生成的卷上禁用 TRIM,因为 RAID4 个人用于某些重塑。在更改 RAID 级别前,通过设置堆栈限制来解决这个问题,从而确保 RAID 阵列的正确丢弃(TRIM)粒度。
- BZ#1025439
- 由于最近一次修复,防止在尝试覆盖活跃的 XFS 日志时死锁,xfs_log_need_covered () 函数的行为已更改。但是,也调用 xfs_log_need_covered (),以确保 XFS 日志尾部作为 XFS 日志同步操作的一部分正确更新。因此,在关闭 XFS 文件系统时,同步操作会失败,一些文件可能已经丢失。应用了补丁,以通过将 dummy 记录记录到 XFS 日志来确保更新 XFS 日志的尾部。同步操作成功完成,在这种情况下,文件会被正确写入磁盘。
- BZ#1025224
- 标签插入逻辑中有一个错误,当从设备没有硬件 VLAN 加速时,绑定处理的情况。因此,当传递没有硬件 VLAN 标签插入的从设备时,网络数据包会被标记,使用 VLAN 通过绑定设备的网卡无法正常工作。在这个版本中,删除了冗余 VLAN 标签插入逻辑,不再发生不需要的行为。
- BZ#1024683
- 由于 Emulex lpfc 驱动程序中的一个错误,驱动程序无法正确分配 SCSI 缓冲区,这会导致 64 位 PowerPC 系统上的 lpfc 适配器出现严重性能下降。应用了这个问题的补丁,lpfc 可以正确地分配 SCSI 缓冲区,lpfc 适配器现在可以在 64 位 PowerPC 系统中按预期工作。
- BZ#1024631
- 在以前的版本中,当通过 INET 套接字处理标记为 IPv4 的流量时,某些 SELinux 功能无法正确处理 TCP 同步(SYN-ACK)数据包。SELinux 错误地标记初始 SYN-ACK 数据包,因此,使用服务器套接字的标签而不是新的连接标签进行访问控制决策。另外,SELinux 没有正确检查标有 IPsec 流量的出站数据,这会导致与不正确的访问控制决策相关的问题。解决了这些问题的一系列补丁已应用到 SELinux。现在,初始 SYN-ACK 数据包被正确标记,SELinux 会按预期处理所有 SYN-ACK 数据包。
- BZ#1100127
- 对 Open vSwitch 内核模块的以前的更改引入了一个无用问题,这会导致在使用此模块的系统上出现内核 panic。在这个版本中,确保受影响的对象在代码中的正确位置释放,从而避免了问题。
- BZ#1024024
- 在以前的版本中,GFS2 内核模块会泄漏 gfs2_bufdata slab 缓存中的内存,并允许在 gfs2_remove_from_journal ()函数中触发 use-after-free 竞争条件。因此,在卸载 GFS2 文件系统后,GFS2 slab 缓存仍然可以包含一些对象,因此在某些情况下可能会导致内核 panic。GFS2 内核模块应用了一系列补丁,确保正确从 slab 缓存中释放所有对象,并避免内核 panic。
- BZ#1023897
- RSXX DMA 处理代码中的一个错误允许 DISCARD 操作调用 pci_unmap_page ()函数,它会在同时发出 DISCARD、READ 和 WRITE 操作时在 PowerPC 架构上触发竞争条件。但是,DISCARD 操作总是被分配一个 DMA 地址 0,因为它们不是映射的。因此,这个竞争条件可能会导致为另一个操作映射的内存以及后续的 EEH 事件。应用了补丁,防止 DISCARD 操作调用 pci_unmap_page (),从而避免了上述竞争条件。
- BZ#1023272
- 由于 mlx4 驱动程序中的一个回归错误,Mellanox mlx4 适配器可能会在负载过重负载时变得无响应,以及登录到系统日志的 IOMMU 分配错误。一个补丁已应用到 mlx4 驱动程序,因此驱动程序现在在在 Rx 路径中分配内存时计算最后的内存页片段。
- BZ#1021325
- 在 XFS 文件系统上执行读取操作时,失败的缓冲区 readahead 可以在标记为错误的缓存内存中保留缓冲区。这可能会导致在完成 I/O 操作过程中检测到过时的错误,因为大多数调用者不会在后续读取时出现缓冲区的 b_error 字段。要避免这个问题并确保正确的 I/O 错误检测,使用的缓冲区的 b_error 字段在提交 I/O 操作前会为零。
- BZ#1034237
- 由于内核在内存控制组(cgroups)过程中处理内存不足(OOM)时使用的锁定机制,在很多进程触发 OOM 时,OOM 终止程序无法正常工作。因此,整个系统可能会变得没有响应。应用了一系列补丁来改进此锁定机制,因此 OOM 终止程序现在可以在大量 OOM 负载下的内存 cgroups 中按预期工作。
- BZ#1104503
- 由于 GRE 隧道代码中存在一个错误,无法使用自定义名称创建 GRE 隧道。此更新更正 ip_tunnel_find () 函数的行为,允许用户使用自定义名称创建 GRE 隧道。
- BZ#1020685
- 当系统处于内存压力下时,可能会触发 tg3 驱动程序中的双可用错误,从而导致 NIC 意外下降,然后出现内核 panic。应用了补丁,它重组相应的代码,以便正确释放受影响的环缓冲。
- BZ#1021044
- 如果 BIOS 在系统引导过程中返回给定rmal 区域的关键行点的负值,则整个 thermal 区域无效,并输出 ACPI 错误。但是,热区域可能仍然需要冷却。在这个版本中,ACPI thermal 管理已被修改为只禁用相关的关键往返点。
- BZ#1020461
- 由于 bcma 驱动程序缺少的一部分,brcmsmac 内核模块没有内核所需的内部别名列表,以正确处理相关的 udev 事件。因此,当引导时为设备扫描 bcma 驱动程序时,这些 udev 事件会被忽略,且内核不会自动加载 brcmsmac 模块。应用了提供缺失别名的补丁,以便 brcmsmac 模块的 udev 请求现在按预期处理,内核在引导时自动加载 brcmsmac 模块。
- BZ#1103471
- 在以前的版本中,KVM 不接受主机 PCI 设备(网段)号,因此无法为虚拟机分配属于非零 PCI 段一部分的 PCI 设备。要解决这个问题,除了插槽、设备和功能号外,KVM 已扩展为接受 PCI 域号。
- BZ#1020290
- 由于 EDAC 驱动程序中的一个错误,驱动无法正确对 AMD 系列 16h 处理器进行解码和报告错误。在这个版本中,在代码中包含一个缺少的 case 语句,以便 EDAC 驱动程序现在可以按预期处理错误。
- BZ#1019578
- 以前 igb 驱动程序的更改会导致 ethtool 工具决定和显示以太网设备的某些功能。在这个版本中解决了 igb 驱动程序的问题,现在实际链接功能会被正确决定,ethtool 会显示值准确,并依赖于驱动程序可用的数据。
- BZ#1019346
- 在以前的版本中,如果物理功能(PF)接口停机时,使用分配给虚拟机的 ixgbevf 驱动程序的设备无法自动调整其 Jumbo MTU 值;当 PF 设备上线时,相关的虚拟功能(VF)设备上的 MTU 值被错误地设置。这是因为 PF 和 VF 接口之间的通信频道设置的方式,以及 PF 和 VF 之间的第一个协商尝试。要解决这个问题,对 ixgbevf 驱动程序的结构更改已被进行,以便内核现在可以成功协商 PF 和 VF 之间的正确 API,在这种情况下,在 VF 接口上正确设置 MTU 值。
- BZ#1024006
- 当向后移植一组补丁时,会释放一个补丁,这些补丁可以在 NFSv4 状态 ID 期间使用零状态 ID 来修复 LOCK 操作中的无限循环问题。因此,在很多方面,系统可能会变得无响应。添加了缺少的补丁块,从而解决了这个问题。
- BZ#1018138
- 如果在追踪过程中更改了 trace 时钟,内核不会重置内核环缓冲。但是,新的时钟源可能与以前的时钟源不一致,因此结果追踪记录可能包含无法解析的时间戳。为确保 trace 记录只包含可比较时间戳,现在每当 trace 时钟发生变化时都会重置环缓冲。
- BZ#1024548
- 当使用带有未对齐 DMA 缓冲区大小的 Haswell HDMI 音频控制器时,这些音频控制器可能会锁定,直到下次重启某些音频流配置。补丁已应用于 Intel 高定义 Audio (HDA)驱动程序,该驱动程序为 Haswell HDMI 音频控制器强制执行 DMA 缓冲区对齐设置。这些音频控制器现在可以按预期工作。
- BZ#1024689
- 对虚拟文件系统(VFS)代码的以前的更改包括 PATH_MAX 变量减少 32 字节。但是,这个更改不会被传播到 do_getname ()函数,它对 getname ()和 do_getname ()函数之间的交互有负面影响。这个版本相应地修改 do_getname (),这个功能现在可以正常工作。
- BZ#1028372
- 在以前的版本中,当从接口中删除 IPv6 地址时,与那个地址相关的路由不会从 IPv6 路由表中删除。这是因为搜索路由时使用不正确的 IPv6 代码。要避免这个问题,已将 IPv6 代码修改为使用 ip6_route_lookup () 函数,而不是在这种情况下的 rt6_lookup ()。现在,当删除 IPv6 地址时,所有相关路由都会从路由表中正确删除。
- BZ#1029200
- bnx2x 驱动程序中的统计流中有一个错误导致卡的 DMA Engine (DMAE)被访问,而无需执行必要的锁定。因此,之前排队的 DMAE 命令可能会被覆盖,然后虚拟功能可能会将请求超时到其相应的物理功能。触发 bug 的可能性较高,配置了更多 SR-IOV 虚拟功能。覆盖 DMAE 命令还可能会导致其他问题,即使没有使用 SR-IOV。在这个版本中,所有使用 DMAE 的流程都将使用相同的 API,并保留正确的锁定方案,所有这些流都会保留正确的锁定方案。
- BZ#1029203
- bnx2x 驱动程序错误地处理从虚拟功能(VF)收到的、使用 VF-PF 频道收到的、不支持的、但不支持的 TLV 命令的驱动程序时,PF 的驱动不会回复。因此,VF-PF 频道处于不稳定状态,VF 最终会超时。一个补丁已被应用于更正 VF-PF 锁定方案,以便正确处理不支持的 TLV,并由 PF 端响应。另外,不支持的 TLV 在以前的版本中可能会导致用于锁定 VF-PF 操作的 mutex。然后,mutex 会停止代码的保护关键部分,这可能会导致 PF 从 VF 收到额外的 TLV 时生成错误消息。应用了补丁可以更正 VF-PF 频道锁定方案,不支持的 TLV,因此不再会破坏 VF-PF 锁定。
- BZ#1007039
- 当从多个进程执行缓冲的 WRITE 操作时,之前,NFS 代码总是验证锁定所有者信息是否与被访问的文件相同,即使没有涉及文件锁定。这会导致性能下降,因为在写入文件之前,分叉的子进程必须同步由父进程写入磁盘的脏数据。另外,当将请求合并到单个 READ 或 WRITE RPC 调用时,如果锁定所有者信息与给定文件不匹配,NFS 会拒绝请求,即使没有文件锁定。这也会导致性能下降。应用了一系列补丁,可放松相关的测试条件,以便在上述情况下不再验证锁定所有者兼容性,从而解决了这些性能问题。
- BZ#1005491
- 由于之前更改了 txselect 参数格式的更改,InfiniBand qib 驱动程序无法在 HP Blade 服务器中支持 HP 品牌 QLogic QDR InfiniBand 卡。要解决这个问题,驱动程序的解析例程 setup_txselect ()已修改为处理多值字符串。
- BZ#994724
- 由于一个允许在停止时写入 RAID 阵列的竞争条件,md 驱动程序可能会进入死锁情况。死锁阻止缓冲区被写入磁盘,设备的所有 I/O 操作都会变得无响应。在这个版本中,md 驱动程序已被修改,现在可以避免这种死锁。
- BZ#1090423
- 在以前的版本中,在某些情况下恢复双降级状态的 RAID6 阵列可能会导致数据崩溃。这是因为 md 驱动程序使用只用于单级阵列的优化。在这个版本中,确保在恢复双降级 RAID6 阵列过程中跳过这个优化。
- BZ#1034348
- 在以前的版本中,NFS 在"silly rename"操作和 rmdir ()函数之间允许发生在目录中未链接的文件关闭后删除目录时发生。因此,rmdir ()可能会失败,并显示 EBUSY 错误。这个版本应用了补丁,确保 NFS 在执行 rmdir ()操作前等待任何异步操作完成。
- BZ#1034487
- 当状态管理器从过期状态和恢复 OPEN 操作中恢复时,可能会出现状态管理器(kswapd 守护进程)和 sys_open () 函数之间的死锁。要解决这个问题,已修改 NFS 以忽略 LAYOUTRETURN 操作(一个 pNFS 操作)中的所有错误,在这种情况下,"NFS4ERR_DELAY"除外。
- BZ#980621
- 在以前的版本中,在某些环境中,如带有几个刀片服务器的 HP BladeSystem Enclosure,kdump 内核可能会因为缺少可用的中断向量而在启动过程中遇到内核 panic 或变得无响应。因此,kdump 无法捕获内核转储。要增加多个可用的中断向量,kdump 内核可以使用更多 CPU 引导。但是,kdump 内核总是尝试使用 bootstrap 处理器(BSP)引导,这会导致在某些情况下内核无法启动多个 CPU。这个更新引入了一个新的内核参数 disable_cpu_acipid,它允许 kdump 内核在引导过程中禁用 BSP,然后成功使用多个处理器引导。这解决了对于有大量设备的系统缺少可用中断向量的问题,并确保 kdump 现在可以在这些系统上成功捕获内核转储。
- BZ#1036814
- 在以前的版本中,当 ext4_releasepage ()函数通过设置了 PageChecked 标志的页面时,会发出一个不必要的警告信息。为了避免内核日志中相关的警告,这个更新会从 ext4 代码中删除相关的 WARN_ON ()。
- BZ#960275
- 在以前的版本中,用户空间数据包捕获库(如 libcap )有有限的可能确定当前内核支持哪些 Berkeley Packet Filter (BPF)扩展。这个限制对 tcpdump 工具执行的 VLAN 数据包过滤有负面影响,tcpdump 有时无法正确捕获过滤的数据包。因此,这个更新引入了一个新的选项 SO_BPF_EXTENSIONS,它可以指定为 getsockopt ()函数的参数。这个选项可让数据包捕获工具获取当前内核支持哪些 BPF 扩展的信息。现在,tcpdump 工具可以正确地捕获数据包。
- BZ#1081282
- RTM_NEWLINK 消息可以包含给定网络接口(NIC)的每个虚拟功能(VF)的信息,并在未过滤这些信息时变得非常大。在以前的版本中,内核 netlink 接口允许 getifaddr ()函数处理带有未过滤内容的 RTM_NEWLINK 消息。在某些情况下,内核 netlink 接口会省略给定 NIC 组的数据,从而导致 getifaddr ()无限期循环无法返回受影响 NIC 的信息。在这个版本中,只提供带有过滤内容的 RTM_NEWLINK 信息来解决这个问题。
- BZ#1040349
- 当在 Hyper-V 环境中引导客户机并有足够的可编程 Interval Timer (PIT)中断丢失或未注入客户机时,内核会 panicked,客户机无法引导。当客户机在 Hyper-V 环境中运行时,绕过相关的 PIT 检查来解决这个问题。
- BZ#1040393
- 当 sci_apc_agent_link_up ()函数中硬重置超时时,ci 驱动程序以前会触发错误的 BUG_ON ()断言。如果 SATA 设备在重置后无法恢复链接,则 isci 端口必须返回"等待链接"状态。然而,在这种情况下,端口可能没有处于"resetting"状态,从而导致内核 panic。这个问题已通过删除不正确的 BUG_ON ()断言来解决。
- BZ#1049052
- 由于网络控制台日志记录中的多个错误,网络控制台发送操作和驱动程序的 IRQ 处理程序之间可能会出现竞争条件,或者网络控制台可以访问无效的内存内容。因此,对应的驱动程序(如 vmxnet3)触发了 BUG_ON () 断言,系统意外终止。应用了解决这些 bug 的补丁,因此在处理发送操作前禁用驱动程序的 IRQ,网络控制台现在可以正确访问 RCU 保护(读取复制更新)数据。使用网络控制台日志记录的系统不再会因为上述条件而崩溃。
- BZ#1057704
- 当网络接口以 promiscuous (PROMISC)模式运行时,接口可能会接收和处理 VLAN 标记帧,即使没有 VLAN 附加到接口。但是,如果帧没有分配 VLAN 组,则 enic 驱动程序无法正确处理使用 PROMISC 模式的 VLAN 标记帧的数据包,这会导致各种问题。要在没有 VLAN 组的情况下处理 VLAN 标记帧,帧必须由 VLAN 代码处理,因此不再验证数据包的 VLAN 组字段是否为空。
- BZ#1058528
- dm-bufio 驱动程序没有调用 blk_unplug ()函数来清空插入的 I/O 请求。因此,由 dm-bufio 提交的请求会延迟 3 ms,这可能会导致性能下降。在这个版本中,dm-bufio 会如预期调用 blk_unplug (),避免任何相关的性能问题。
- BZ#1059943
- 修改 linkat ()系统调用的以前的更改引入了挂载点引用泄漏,并在文件系统链接操作返回 ESTALE 错误代码时后续的内存泄漏。这些问题已通过在这样的情形中正确释放旧挂载点引用来解决。
- BZ#1062494
- 在分配内核内存时,SCSI 设备处理程序调用 sizeof ()函数,其结构名称为其参数。但是,修改的文件使用不正确的结构名称,这会导致分配内存不足以及后续的内存损坏。在这个版本中,将相关的 sizeof ()函数调用修改为使用指向结构的指针而不是结构名称,以便现在始终正确分配内存。
- BZ#1065304
- 以前对内核调度程序的补丁修复了由 init_numa_sched_groups_power ()函数中的 divide-by-zero 错误导致的内核 panic。但是,这个补丁在带有标准 Non-Uniform Memory Access (NUMA)拓扑的系统上引入了回归问题,以便在一个 NUMA 域中将 cpu_power 设置为预期的值。这会导致任务调度不正确,即使有足够的排队任务来处理任务,但对系统性能有负面影响。在这个版本中,通过为每个未计数的 CPU 添加估算,确保将带有标准 NUMA 拓扑的系统上 cpu_power 的 cpu_power 设置为预期的值。Task 调度现在可以在这些系统上正常工作,而不会与上述程序错误相关的性能问题。
- BZ#1018581
- 在重新启动过程中,Microsoft Windows 7 KVM 客户机可能会变得无响应,因为在用户模式中运行时 KVM 不管理将不可迁移的中断(NMI)注入客户机。要解决这个问题,在 KVM 代码中应用了一系列补丁,确保 KVM 在重启客户机机器的过程中可以正确处理 NMI。
- BZ#1029381
- 在此次更新之前,客户机提供的值用作主机上分配的套接字缓冲区的头长度。如果主机内存负载过重,且客户机提供的值太大,则分配可能会失败,从而导致客户机的 Tx 路径中停滞和数据包丢弃。在这个版本中,客户机提供的值仅限于合理的大小,因此无论主机上的内存负载如何,客户机可以在主机上成功分配套接字缓冲区分配,客户机可以在不遇到数据包丢弃或停滞的情况下发送数据包。
- BZ#1080637
- turbostat 工具会在带有第四代 Intel Core Processors 的系统中使用时生成错误消息。要解决这个问题,内核已被更新,为 C8、C9 和 C10 C-states 提供 C-state residency 信息。
功能增强
- BZ#876275
- 内核现在支持在 AMD 系统上具有超过 1TB 内存的内存配置。
- BZ#990694
- 用户现在可以基于每个数据包在 IPv4 中设置 ToS、TTL 和优先级值。
- BZ#1038227
- Red Hat Enterprise Linux 6.6 中引入了对设备映射器的几个显著改进:
- dm-cache device-mapper 目标(允许快速存储设备充当较慢的存储设备的缓存)已添加为技术预览。
- 如果其他路径可用于负载平衡,则 device-mapper-multipath ALUA 优先级检查程序不再将首选路径设备放在其自身的路径组中。
- multipath.conf 文件中的 fast_io_fail_tmo 参数现在除了光纤通道设备外,还可用于 iSCSI 设备。
- 现在,由于设备映射器多路径处理 sysfs 文件的方式,可以在带有大量多路径设备的设置中实现更好的性能。
- 引入了一个新的 multipath.conf 中的 force_sync 参数。参数禁用异步路径检查,这有助于限制大量多路径设备的设置中的 CPU 争用问题。
- BZ#922970
- 在 Red Hat Enterprise Linux 6.6 中添加了对下一代 Intel 移动平台的支持,并且更新了相关的驱动程序。
- BZ#922929
- 未来 AMD 处理器为用于关键事件类型的 L2 事件提供了新的模型特定注册(MSR)银行。这些 L2 缓存性能计数器在性能和调试方面非常有用。
- BZ#1076147
- dm-crypt 模块已被修改为使用多个 CPU,这会显著提高其加密性能。
- BZ#1054299
- qla2xxx 驱动程序已升级至 8.05.00.03.06.5-k2 版本,它比之前的版本提供了很多程序错误修复,以便更正 mailbox 命令的各种超时问题。
- BZ#1053831
- 已启用 IBM System z 上的 IPL 设备(ipldev)和控制台设备(condev)的关键字,当系统使用 cio_ignore 命令来将所有设备列入黑名单,且没有默认的 CCW 控制台设备号,没有 IPL 设备作为基础来克隆 Linux 客户机,或使用基于 ramdisk 的安装没有 CCW 控制台以外的设备。
- BZ#872311
- cifs 内核模块已更新,以在 CIFS 中有效地处理 FIPS 模式密码过滤。
8.105. kexec-tools
程序错误修复
- BZ#806992
- 在以前的版本中,如果系统配置了两个或多个网络接口,其中其中一个设备使用默认网关配置,另一个使用静态路由到专用网络,kdump 会忽略非默认静态路由。因此,kdump 无法通过 NFS 或 SSH 转储核心文件,因为它没有配置到专用网络的路由。这个程序错误已被解决,kdump 现在可以按预期通过 NFS 或 SSH 转储内核。
- BZ#1061480
- 在以前的版本中,当崩溃发生在应用程序处理器(AP)而不是 Boot Strap Processor (BSP)上时,使用多个 CPU 引导崩溃内核偶尔会导致一些系统变得无响应。要修复这个错误,会修改初始化脚本,使其包含作为 BSP ID 的 disable_cpu_apicid 内核选项。另外,用户必须修改 nr_cpus 选项的值,以指定系统上使用的 CPU 数量。在这个版本中,用户可以成功使用系统中有多个 CPU 的崩溃内核。
- BZ#1128248
- 由于 mkdumprd 工具中的 wait_for_multipath 例程中的一个错误,kdump 可能无法在具有多个多路径设备的某些配置中转储核心文件。这个问题已通过这个更新解决,kdump 现在可在有大量多路径设备的系统中正常工作。
- BZ#1022871
- 在以前的版本中,kdump 无法捕获在将 DASD FBA 设备指定为 kdump 目标的 IBM System z 机器上的核心文件。这个问题已通过将 DASD FBA 类型设备所需的支持添加到 kdump 中,现在在上述配置中可以按照预期捕获核心文件。
- BZ#1122880
- 由于 mkdumprd 工具中存在不正确的 SELinux 测试条件,kdump 内核可能无法加载 SELinux 策略并生成未知操作对象错误。在这个版本中,修正了受影响的条件,kdump 现在的行为如预期一样。
- BZ#1122883
- 在某些情况下,mkdumprd 工具可能会发出一些有关不存在的 ifcfg 文件的警告信息。这个问题已被解决,kdump 不再发出这些警告信息。
功能增强
- BZ#929312, BZ#823561, BZ#1035156
- makedumpfile 工具已升级至 1.5.6 版本,它比之前的版本提供了很多程序错误修复和增强,包括对自定义 ChromeIC 宏的增强过滤和支持,以消除复杂的数据结构、加密密钥以及转储文件中其它指定的敏感数据。
- BZ#1083938
- 作为在集群环境中支持 kdump_fence 代理的一部分,新选项 fence_kdump_nodes 和 fence_kdump_args 已引入到 kdump.conf 文件中。fence_kdump_nodes 选项用于列出将通知从 kdump_fence 代理发送到的主机。fence_kdump_args 用于将命令行参数传递给 kdump_fence 代理。
8.106. keyutils
8.106.1. RHBA-2014:1610 - keyutils 程序错误修复更新
错误修复
- BZ#1075652
- 在以前的版本中,"keyctl show"命令会错误地显示嵌套密钥环的缩写树,因此存在超过两个密钥环的密钥环树不会被完全显示。这个 bug 已被修复,"keyctl show"现在会如预期显示整个密钥环树。此外,"keyctl show"命令没有展开字段宽度,以显示完整的十进制键 ID。在这个版本中,密钥 ID 字段会被正确扩展。另外,"keyctl padd"命令以及其他 pipe-in 命令的最大输入数据大小增加到 1MB。最后,"keyctl padd"命令和其他 pipe-in 命令已被修改为在二进制输入中特殊处理零值字节。
8.107. krb5
安全修复
- CVE-2013-1418,CVE-2013-6800
- 它发现,如果 KDC 提供多个域,某些请求可能会导致 setup_server_realm ()函数解引用 NULL 指针。一个远程的未经身份验证的攻击者可以使用此缺陷,使用特殊设计的请求使 KDC 崩溃。
- CVE-2014-4344
- 在 MIT Kerberos SPNEGO acceptor for continuation token 中发现了一个 NULL pointer dereference 缺陷。一个远程的未经身份验证的攻击者可以使用此缺陷使启用了 GSSAPI 的服务器应用程序崩溃。
- CVE-2014-4345
- 当与 KDC 数据库的 LDAP 后端一起使用时,KADM5 管理服务器(kadmind)中发现了一个缓冲区溢出。一个远程的经过验证的攻击者可能会利用此漏洞在运行 kadmind 的系统上执行任意代码。
- CVE-2014-4341,CVE-2014-4342
- 在 MIT Kerberos 处理某些请求的方式中发现了两个缓冲区过度读取的漏洞。一个能够将数据包注入客户端或服务器应用程序的 GSSAPI 会话的远程未经身份验证的攻击者可能会使用这些漏洞使应用程序崩溃。
- CVE-2014-4343
- MIT Kerberos SPNEGO initiators 中发现了一个双无安全漏洞。攻击者能够欺骗数据包出现,因为它们来自 GSSAPI 接受者可能会使用此漏洞使客户端应用程序崩溃使用 MIT Kerberos。
程序错误修复
- BZ#922884
- 在以前的版本中,当通过传输控制协议(TCP)套接字连接到密钥分发中心(KDC)时,Kerberos 客户端库无法检测服务器永久终止连接时的情况。因此,客户端可能会停滞,重复尝试从关闭的连接套接字描述符中读取数据。这个程序错误已被解决,客户端库现在可以正确地检测到连接失败,处理可以如预期继续。
- BZ#1070244
- 在以前的版本中,当调用 接受来自客户端的基于票据的身份验证时,服务器就可以解密一个加密类型(例如,des-cbc-crc)加密的票据,只要其 keytab 包含足够兼容加密类型的密钥(例如,des-cbc-md5)。由于回归问题,除非加密类型相同,否则服务器将无法验证客户端票据。在这个版本中,引入了一个新的向后移植修复来恢复上述行为。现在,当密钥分发中心(KDC)使用具有足够兼容性的加密类型发出票据时,服务器会验证客户端的票据。
- BZ#965721
- 在此次更新之前,在配置为在 Kerberos (PKINIT)扩展中使用公钥 Cryptography 的系统上,发出 "kinit -k" 命令,以便在 /etc/krb5.conf 文件中设置了 "pkinit_identities" 变量来获取凭证,如果 /etc/krb5.conf 文件中设置了 "pkinit_identities" 变量,则会失败。当指令解析为 PIN 保护的智能卡或加密的 PEM 或 PKCSxdg 格式文件时,会出现此问题。客户端的 PKINIT 插件可能会尝试提示用户输入密码或智能卡 PIN,kinit 实用程序无法处理。因此,kinit 工具会意外终止,并显示分段错误。应用了补丁,PKINIT 插件现在检查调用应用程序是否提供了在尝试提示用户提示用户之前提示密码和智能卡 PIN 的方法,而 kinit 不再在此场景中崩溃。
- BZ#1055329
- 在此次更新之前,libkrb5 库有时会在加密用于委托的凭证时尝试释放已经释放的内存。因此,调用过程会意外终止,并显示分段错误。在这个版本中,libkrb5 可以正确地释放内存,这允许正确加密凭证,从而防止崩溃。
- BZ#1026721
- 在以前的版本中,在没有 "-n" 或 "-e" 选项的情况下使用 ksu 命令会导致 ksu 丢弃有关哪个主体被授权使用的信息,如目标用户的 .k5users 文件中指定。因此,会显示 "authorization failed" 错误消息,即使配置表示用户被授权。这个 bug 已被修复,ksu 不再返回不正确的错误消息。
- BZ#1113652
- 在以前的版本中,当使用域名系统(DNS)在遵循引用时找到 KDC 时,如果 Kerberos 客户端库确定了在参考路径中为给定域找到主 KDC 时,它只会尝试联系任何域的主 KDC。因此,如果客户端库需要遵循从一个域到另一个域的引用,并且与其中一个域联系时,尝试获取凭证可能会失败。应用了补丁,上面描述的问题不再发生。
- BZ#1009389
- 启动 KDC 的初始化脚本首先运行一个诊断与升级相关的常见错误。在以前的版本中,当默认域只在 /etc/sysconfig/krb5kdc 配置文件中配置且没有在 /etc/krb5.conf 文件中配置时,域不会被传递给帮助程序。因此,尝试启动 KDC 失败并显示错误消息。在这个版本中,/etc/sysconfig/krb5kdc 文件中设置的默认域被正确传递给帮助程序,并且 KDC 会被正确启动。
- BZ#1059730
- 在此次更新之前,当尝试使用 DNS 服务位置查找 Kerberos 服务器时,Kerberos 客户端库无法正确识别解析器库中的所有返回码。因此,客户端库会错误地将某些非严重的返回代码解析为严重错误,且无法找到任何服务器。应用补丁,客户端库可以正确地解释返回代码,查找服务器现在可以正常工作。
- BZ#1087068
- 由于回归问题,当将 Simple 和 Protected GSSAPI Negotiation Mechanism (SPNEGO)与多个对象标识符(OID)搭配使用时,服务器应用程序并不总是使用客户端指定的相同 OID 响应客户端。因此,尝试使用多个 OID 识别的机制的 GSSAPI 客户端可能无法向此类服务器进行身份验证。在这个版本中,在生成对客户端的回复时,GSSAPI 库在其请求中使用客户端指定的 OID,在这种情况下,客户端身份验证不再会失败。
8.108. ksh
8.108.1. RHBA-2014:1381 - ksh 程序错误修复更新
程序错误修复
- BZ#825520
- 由于作业列表代码中出现竞争条件,因此当用户在其系统上运行自定义脚本时,ksh shell 可能会意外终止并出现分段错误。竞争条件已被修复,ksh 现在可在用户运行自定义脚本时按预期工作。
- BZ#1117316
- 由于回归错误,包含管道的命令替换可能会返回一个非零退出代码,即使命令没有失败。现在,提供了一个补丁来修复这个程序错误,这些命令替换现在会返回正确的退出代码。
- BZ#1105138
- 在以前的版本中,如果 ksh 脚本中的另一个函数未设置正在运行的函数,ksh 会意外终止,并带有 segmentation 错误。在这个版本中,ksh 代码会在未设置函数时跳过重置"运行"标志,ksh 不再会在上述场景中崩溃。
- BZ#1036470
- 在以前的版本中,在 ksh 中的函数中使用 typeset 命令会导致内存泄漏。这个程序错误已被解决,ksh 在功能中使用 typeset 命令时不再泄漏内存。
- BZ#1036802
- 在以前的版本中,在将 ksh 从 "ksh-20100621-19" 升级到 "ksh-20120801-10" 后,标准输出(stderr)从终端断开连接,因此 debug 模式中的 trace 输出变得不可见。因此,并不总是可以在 ksh 中调试脚本。这个程序错误已被解决,stderr 现在提供正确的输出。
- BZ#1066589
- 在以前的版本中,如果标准输入(stdin),标准输出(stdout)或标准错误(stderr)被关闭,则替换命令无法在 ksh 中执行。因此,使用命令替换读取文件无法正常工作,替换的文本在某些情况下无法显示。现在,一个补丁已被应用于解决这个程序错误,命令替换现在可以正常工作。
- BZ#1112306
- 在此次更新之前,编译器优化会从二进制代码中丢弃 ksh 作业锁定机制的部分。因此,ksh 可能会在收到 SIGCHLD 信号后意外终止分段错误。在这个版本中,编译器不会丢弃 ksh 作业锁定机制的部分,ksh 可以正常工作。
- BZ#1062296
- 当运行一个输出大量数据的命令时,然后从该输出中设置变量时,ksh 可能会变得无响应。要解决这个问题,I/O 重定向和同步机制的组合已被改变。现在,在本例中,ksh 不再挂起,带有大型数据输出的命令可以成功完成。
- BZ#1036931
- 在以前的版本中,ksh 语法分析器没有正确解析 here-documents 中的命令替换,这会导致在语法上报告语法错误消息。现在,提供了一个补丁来修复这个程序错误,ksh 现在会如预期进行替换。
- BZ#1116508
- 在以前的版本中,ksh 可能会跳过从函数最后一个命令中设置退出代码。因此,函数有时会返回一个错误的退出代码。在这个版本中,ksh 总是使用函数最后一个命令中的退出代码,ksh 中的函数现在会如预期返回正确的退出代码。
- BZ#1070350
- 当舍入小于 1 的数字时,ksh 会错误地截断太多十进制值。因此,0.5 和 0.999 间隔之间的数字被错误地舍入为零。这个 ksh 的更新版本可确保所有数字都被正确舍入。
- BZ#1078698
- 在以前的版本中,ksh 无法正确处理大括号扩展选项,并在大多数情况下忽略它。因此,不能在文件名中关闭花括号和花括号以防止其扩展。大括号扩展代码已被更新,在关闭花括号扩展选项时不执行任何操作,并且现在可以根据需要关闭和开启 ksh 中的大括号扩展。
- BZ#1133582
- 在以前的版本中,当 ksh 没有用于标准输入、输出或错误输出时,ksh 不会处理低文件描述符号的重复使用。因此,当任何 stdin、stdout 或 stderr 关闭时,命令替换中重复使用其文件描述符时,该替换的输出为空。在这个版本中,ksh 已被更新,不再重复使用"low文件描述符"进行命令替换。即使任何 stdin、stdout 或 stderr 已关闭,ksh 中的命令替换也可以正常工作。
- BZ#1075635
- 在以前的版本中,ksh 不会屏蔽退出代码,有时返回过高的数字,之后可能会解释为信号终止。因此,如果 ksh 是从"su"工具启动的,且使用高数字退出代码退出,"su"会错误地生成内核转储。为防止父进程的混乱,ksh 在终止时已被更新为屏蔽退出代码。
- BZ#1047506
- 在以前的版本中,在分叉进程后,ksh 无法正确清除进程的参数列表。因此,当使用 ps 工具列出进程时,分叉进程的 parameter 字段可能包含一些旧参数。代码已被修改,以始终清除参数字符串未使用的空间,ps 工具现在打印正确的参数。
- BZ#1102627
- 在以前的版本中,ksh 在尝试更改它前不会验证是否有给定目录的执行权限。因此,ksh 始终假设它在该目录内操作,即使尝试访问该目录实际上也会失败。在这个版本中,ksh 会检查执行权限,并在缺少权限时报告错误。
- BZ#1023109
- 在以 monitor 模式运行脚本时,ksh 可能会设置错误的进程组。因此,当此类脚本试图读取输入时,ksh 进程会停止脚本。有了这个更新,ksh 已被修复,使用正确的进程组,脚本在上述场景中按预期执行。
8.109. ledmon
8.110. less
8.110.1. RHBA-2014:0755 - less bug fix update
错误修复
- BZ#615303
- 在以前的版本中,lesspipe 脚本返回不正确的退出状态代码。因此,这个工具无法解压缩使用 gzip 工具压缩的空文件,并显示不需要的消息。在这个版本中,LESSOPEN 环境变量前面添加了一个管道字符("|"),以强制新的默认行为 lesspipe。为了向后兼容,如果 LESSOPEN 保持不变,则 lesspipe 的行为相同。现在,less 工具会检测到并正确显示空文件。
8.111. libcgroup
程序错误修复
- BZ#1022842
- 在以前的版本中,cgset 命令无法一次性为多个子系统参数分配值。只有在多次使用 -r 选项而不是一次调整单个子系统的参数时才会发生此行为。配置不同的子系统同时可以正常工作。这个程序错误已被解决,cgset 现在可在不复杂的情况下设置单个子系统的多个参数。
- BZ#1028773
- 以前的 libcgroup 更新引进了对 redhat-lsb-core 软件包的不必要的依赖项。然后,redhat-lsb-core 软件包会拉取到大量其他软件包中,这可能会在有限存储的硬件中造成问题。在这个版本中,对 redhat-lsb-core 软件包的不必要的依赖项已被删除,因此系统上没有安装不需要的软件包。
- BZ#1057676
- 在此次更新之前,/src/config.c 文件包含错误指定的 cgroup_copy_cgroup ()函数。因此,不会应用 /etc/cgconfig.conf 配置文件中设置的特定于用户的资源限值。在这个版本中解决了 /src/config.c 中上述功能的语法。因此,/etc/cgconfig.conf 中的所有设置都会如预期应用。
- BZ#1060227
- 以前,应用了补丁以提高 pam_cgroup 模块的性能包含一个 bug。因此,pam_cgroup 无法启动,且不会生成错误消息。在这个版本中,上述补丁已被恢复,pam_cgroup 现在可以正常工作。
- BZ#1080281
- cgset 工具无法正确处理传递给 --copy-from 命令行选项的所有内存子系统参数。因此,这些控制组群参数不会被成功传输,且不会发出警告信息。在这个版本中,cgset 已修改为正确处理传递给 --copy-from 选项的内存子系统的参数,从而解决了这个问题。
功能增强
- BZ#1058363
- 在这个版本中,添加了 /etc/cgconfig.d/ 层次结构,旨在存储适用于各种服务的配置文件。
8.112. libguestfs
程序错误修复
- BZ#624335
- blockdev_setbsz API 已被弃用,作为底层实现("blockdev --setbsz")不再被视为有用。
- BZ#965495
- 在此次更新之前,gdisk 工具没有作为 libguestfs 库的依赖项提供。因此,gdisk 不可用,因此 guestfs_part_get_gpt_type 和 guestfs_part_set_gpt_type API 不可用。在这个版本中,将 gdisk 添加为依赖项,因此已提供,并包括了上述 API。
- BZ#982979
- 由于 fstrim 功能标记为 available,调用 fstrim API 返回的错误。因为 fstrim 不适用于 Red Hat Enterprise Linux 6 中的内核和 QEMU,因此这个更新会禁用 fstrim。现在,调用 fstrim API 报告 fstrim 不再可用。
- BZ#1056558
- 在以前的版本中,当 virt-sparsify 工具使用块或字符设备作为输出运行时,输出设备会被文件覆盖或删除。要解决这个问题,如果将块或字符设备指定为输出,virt-sparsify 会拒绝运行。
- BZ#1072062
- 由于 Ruby 绑定中的 Guestfs.new ()构造器错误实现,因此创建新的 Guestfs 实例通常会导致错误。有了这个更新,guestfs.new () 的实现已被重写,guestfs.new 现在可以正常工作。
- BZ#1091805
- 运行 tar-in guestfish 命令时,或使用 tar_in guestfs API 时,带有不存在的输入 tar 或不存在的目标目录时,libguestfs 设备会意外终止。错误检查已被批准,tar-in 现在完全返回一个错误。
- BZ#1056558
- 在以前的版本中,virt-sparsify 工具不会检查临时目录中可用的可用空间。因此,如果临时目录缺少足够可用空间,则 virt-sparsify 变得无响应。在这个版本中,在 sparsification 操作前,virt-sparsify 会默认检查可用空间,virt-sparsify 现在可以正常工作。
- BZ#1106548
- 在以前的版本中,缺少 libguestfs 库中的 FUSE 层中的 root 用户的权限检查。因此,使用 guestmount 挂载磁盘镜像,并以具有权限 700 的 root 用户身份访问目录,且不是由 root 拥有,并显示 "permission denied" 错误。在这个版本中,权限已被禁用,root 现在可以访问使用 guestmount 挂载的任何磁盘镜像的目录。
- BZ#1123794
- 之前版本的 libguestfs 库没有在分叉子进程(如 QEMU)时关闭所有打开的文件描述符。因此,如果父进程或任何非guestfs 库没有以原子方式在文件描述符上设置 O_CLOEXEC 标志,则父进程会泄漏到 QEMU 中,这个程序错误还会导致死锁,因为 Python 2 无法以原子方式设置 O_CLOEXEC。在这个版本中,libguestfs 会在执行 QEMU 前关闭所有文件描述符,并且不再发生死锁。
- BZ#1079182
- 在以前的版本中,当 LDM 不可用时,libguestfs 库会跳过类型为 0x42、Windows 轻量级设备挂载器(LDM)卷的分区。因此,可以将简单的 LDM 卷作为单个分区挂载。在这个版本中,如果缺少 LDM,则不会跳过分区检测,并且如果缺少简单的 LDM 卷,现在可以识别并挂载为普通 NTFS 分区。
8.113. libhugetlbfs
8.114. libica
8.114.1. RHBA-2014:1497 - libica 程序错误修复和安全更新
8.115. libnl3
8.115.1. RHEA-2014:1532 - libnl3 增强更新
功能增强
- BZ#1052119
- libnl3 软件包已引入到 Red Hat Enterprise Linux 6 中,它允许改进 oVirt 应用程序的功能。另外,这可确保与其他将来的应用程序兼容,因为以前的 Netlink 协议库 libnl1 不再被开发。
8.116. libproxy
8.116.1. RHBA-2014:1556 - libproxy 程序错误修复更新
程序错误修复
- BZ#802765
- 在以前的版本中,libproxy 工具尝试从当前工作目录中找到 /etc/proxy.conf 文件。因此,不会始终找到配置文件。这个程序错误已被解决,libproxy 现在会如预期找到 /etc/proxy.conf。
- BZ#874492
- libproxy 处理代理自动配置(PAC)文件的下载方式中发现了一个安全漏洞。因此,在处理包含语法错误的 PAC 文件时,使用 libproxy 的程序会意外终止并出现分段错误。在这个版本中,libproxy 中修复了 PAC 文件的处理,从而防止分段错误。
- BZ#979356
- 由于 libproxy 软件包中的一个错误,如果给出了一个没有包含密码的 "scp" URL,则自动错误报告工具使用的 "reporter-upload" 命令会意外终止。这个程序错误已被解决,reporter-upload 不再在上述场景中崩溃。
8.117. librelp
8.117.1. RHBA-2014:1505 - librelp 程序错误修复和安全更新
8.118. libreoffice
程序错误修复
- BZ#1012379
- 在以前的版本中,在 LibreOffice Impress presentation 中包含音频文件后,该文件会显示为灰色的方块。在这个版本中,上游补丁已向后移植来修复这个错误。因此,音频文件不再显示为 Impress presentations 的灰色方。
- BZ#1012390
- 在此次更新之前,当将音频或视频文件包含在 LibreOffice Impress presentation 中时,会显示一条信息,告知失败" rxAccessible.get ()!= NULL"断言。除此消息外,文件已被正确导入,LibreOffice Impress 应用程序可以正常工作。上游补丁已向后移植以更正此行为,因此不再显示上述消息。
- BZ#1020712
- 在以前的版本中,当使用任何 Indic 区域设置在 LibreOffice Impress presentation 中输入文本时,在按下 Backspace 键前不会显示文本。这个程序错误已被解决,在插入文本时,Indic fonts会立即显示。
- BZ#1021915
- 对于某些 Indic 区域,如 Odia,主栏中的下拉列表与主菜单栏中重叠,该栏限制了导航 LibreOffice 应用程序。这个程序错误已被解决,上述问题不再发生。
- BZ#1035298
- 在之前的 Red Hat Enterprise Linux 6 版本中,LibreOffice 软件包不再过时,它会在尝试下载这两个软件包时造成一些冲突。在这个版本中,LibreOffice 已再次被修改为过时的开放机,从而防止冲突。
- BZ#1038189
- 在此次更新之前,LibreOffice 应用程序在 LibreOffice 运行时不会自动识别在本地打印服务器上创建的新打印机。在这个版本中,LibreOffice 软件包已被修改,现在可以解决这个问题。为此,请打开"打印机设置"对话框窗口,而不是关闭该对话框。此操作会刷新可用打印机的列表。
- BZ#1065629
- 在以前的版本中,LibreOffice 应用程序无法正确呈现导入的 RTF 文件,使用非英语语言编写。上游补丁已向后移植来修复这个错误。
- BZ#1085420
- 在以前的版本中,LibreOffice 软件包会错误地提供 liblcms2.so.2 软件包。在这个版本中,LibreOffice 已被修改来提供正确的软件包集合。
- BZ#1097646
- 在以前的版本中,LibreOffice 应用程序无法正确处理多个 UNO 连接。因此,当多个 Univarsal Network Object (UNO)连接打开时,LibreOffice 会意外终止。在这个版本中,上游补丁已向后移植来修复这个错误。因此,当打开更多 UNO 连接时,LibreOffice 不再崩溃。
- BZ#1131428
- 在以前的版本中,LibreOffice 应用程序无法将 chart 导出为 SVG 格式。尝试这样做会导致一个空的 SVG 文件。这个程序错误已被解决,现在 chart 从 LibreOffice 应用程序正确导出。
8.119. librtas
8.119.1. RHBA-2014:1427 - librtas 程序错误修复和安全更新
8.120. libselinux
8.120.1. RHBA-2014:1469 - libselinux 程序错误修复更新
程序错误修复
- BZ#753675
- 当尝试通过 SSH X11 转发运行 virt-manager 工具时,SELinux 会阻止 D-Bus 系统执行操作,即使 SELinux 处于 permissive 模式。因此,这个尝试失败,并会记录 AVC 拒绝信息。在这个版本中,提供了一个补丁来解决这个问题,处于 permissive 模式的 SELinux 不再阻止在上述场景中的 D-Bus。
- BZ#1011109
- 在此次更新之前,selinux (8)手册页包含过时的信息。这个手册页已被更新,SELinux 现在可以被正确记录。
- BZ#1025507
- 名称服务器缓存守护进程(nscd)使用 SELinux 权限来检查是否允许连接用户查询缓存。但是,SELinux 权限列表中缺少了 NSCD__GETNETGRP 和 NSCD__SHMEMNETGRP 权限。因此,只有在 SELinux 处于 permissive 模式时,netgroup 缓存才可以正常工作。缺少的权限已添加到列表中,netgroup 缓存现在可以正常工作。
- BZ#1091857
- 在以前的版本中,matchpathcon 工具无法正确处理不存在的文件或目录 ; "matchpathcon -V" 命令会验证目录的文件,而不是指定它们不存在。现在,底层源代码已被修改来解决这个问题,matchpathcon 现在可以正确地识别不存在的文件或目录。因此,当文件或目录不存在时,会返回错误消息。
- BZ#1096816
- 在 Docker 容器中添加新用户,因为 enforcing 或 permissive 模式中的 SELinux 会错误地阻止尝试修改 /etc/passwd 文件。在这个版本中,当 /selinux/ 或 /sys/fs/selinux/ 目录被挂载为只读时,libselinux 库的行为就像禁用了 SELinux 一样。这个行为可防止 SELinux 感知应用程序尝试在容器内执行 SELinux 操作,现在可以按预期修改 /etc/passwd。
8.121. libservicelog
8.122. libsoup
8.123. libtirpc
8.123.1. RHBA-2014:1419 - libtirpc 程序错误修复更新
程序错误修复
- BZ#1082807
- 在以前的版本中,libtirpc 库包含 authgss_get_private_data ()系统调用,但不包括 authgss_free_private_data ()系统调用。因此,会获取私有数据,但之后不会被释放。这会导致 authgss_destroy_context ()调用发送不正确的 RPCSEC_GSS_DESTROY 请求,客户端随后无法清除服务器上的状态数据。在这个版本中,authgss_free_private_data ()已添加到 libtirpc 中,数据现在可以被正确释放。现在,客户端可以按预期重置服务器状态。
- BZ#1031498
- 在此次更新之前,由于竞争条件,在 glibc 库中使用 TI-RPC 会导致 TI-RPC 在某些文件操作中意外终止,如 fclose ()调用和 endnetconfig ()调用。这个版本可防止在上述场景中发生竞争条件,在 glibc 中使用 TI-RPC 不再崩溃。
- BZ#1056809
- 由于 libtrpc 中的缓冲区过度运行,rpcbind 工具有时会意外终止,并显示分段错误。在这个版本中,缓冲区由 svcauth_gss_validate ()调用分配,这样可避免缓冲区被运行,从而防止 rpcbind 崩溃。
- BZ#869397
- 在以前的版本中,libtirpc-devel RPM 错误地安装了 /lib64/libtirpc.a 和 /lib64/libtirpc.la 静态库,这会导致链接 libtirpc 的软件失败。这个更新删除了 libtirpc.a 和 libtirpc.la,并使用 libtirpc.so 编译可以正常工作。
- BZ#982064
- 由于 libtirpc 中的一个代码错误,当 RPC 被拒绝时,automount 工具有时会意外终止并出现分段错误。在这个版本中解决了这个程序错误,当收到无效的服务器拒绝时,automount 不再崩溃。
8.124. libvirt
程序错误修复
- BZ#1117177
- 在以前的版本中,使用 virsh 命令和 the-
config
选项(处理虚拟域配置)的逻辑不正确。因此,块设备同时附加到域配置和正在运行的域。处理逻辑和相关技术文档都已解决,virsh with-config
现在可以正常工作,仅将块设备附加到域配置。 - BZ#999454
- 在此次更新之前,查询块任务的 libvirt Python 绑定无法区分返回错误和没有可用的状态。因此,轮询块作业完成的代码必须处理 Python 异常,且无法将其与实际错误区分开。在这个版本中,绑定可以成功决定没有作业,并在该情况时返回一个空字典。因此,在管理块作业时,绑定可以更可靠地使用。
- BZ#1078589
- 以前的更新引入了一个错误,其中
SIG_SETMASK
参数被poll()
系统调用后被一个SIG_BLOCK
参数替代。因此,SIGCHLD
信号可能会被永久阻止,这会导致信号掩码无法返回其原始值和失效进程。在这个版本中,原始信号掩码会如预期恢复,poll()
现在可以正常工作。 - BZ#1066473
- 当使用 libvirt 从客户机中热拔虚拟 CPU (vCPU)时,当前的 Red Hat Enterprise Linux QEMU 实现不会删除对应的 vCPU 线程。因此,libvirt 在 vCPU 热插后无法正确检测到 vCPU 计数,在热拔后无法热插 vCPU。在这个版本中,QEMU 的信息用于过滤禁用 vCPU 的不活跃 vCPU 线程,允许 libvirt 执行热插。
- BZ#1076719
- 在此次更新之前,检查 QEMU 是否成功将新磁盘附加到客户机的条件是否包含拼写错误。由于这个错误,如果 monitor 命令失败,
libvirtd
守护进程会意外终止:例如,当虚拟机失败或附加客户机磁盘驱动器时。在这个版本中,这个错误已被修正,libvirtd
不再在上述情况下崩溃。 - BZ#1126393
- libvirt 库对远程过程调用(RPC)消息的限制,以防止拒绝服务(DoS)攻击。但是,当域 XML 文件被编码到 RPC 信息并在迁移过程中发送到目标机器时,域 XML 文件可能会失败。因此,即使域 XML 格式有效,迁移也会失败。要修复这个程序错误,RPC 消息限制已被增加,迁移现在可以成功,而 libvirt 仍被认为是 DoS 攻击。
- BZ#1113828
- 由于之前的程序错误修复导致的回归,尝试执行块副本,而另一个块副本已在进行过程中可能会导致 libvirt 重置块副本的信息。因此,libvirt 无法识别复制的文件格式是否是原始的,并在客户机磁盘上执行冗余格式探测。在这个版本中解决了回归问题,libvirt 不再执行不正确的格式探测。
- BZ#947974
- UUID (统一唯一标识符)是代表虚拟客户机的字符的字符串。在屏幕上显示 UUID 需要正确的 API 以用户可读格式显示字符串。在以前的版本中,打印未格式化的 UUID 数据会导致异常或不正确格式化输出。对于 Python 脚本,无法处理的例外可能会导致意外的失败。对于其他日志记录方法或视觉显示,输出中的字符会非常巨于。在这个版本中,UUID 字符串可以被正确格式化,并打印它们不再会导致输出出现意外异常或巨性字符。
- BZ#1011906
- 当收到 NUMA (Non-Uniform Memory Access)放置建议时,当前内存用于
amount
参数。因此,域放置不是精确的,因为如果 live 域当前的内存发生了变化。在这个版本中,会使用最大内存作为amount
参数查询建议,推荐的放置现在会修复域,即使当前内存更改了 live 域。 - BZ#807023
- 在以前的版本中,即使设备没有成功分离,libvirt 也会报告 device_del 命令成功。在这个版本中,libvirt 始终验证 device_del 成功,当命令失败时,libvirt 会相应地报告它。
- BZ#977706
- 在此次更新之前,如果处理命令时删除了存储卷,使用 virsh pool-refresh 命令会错误地导致 libvirt 删除存储池。因此,存储池也会变得不活跃,即使挂载了 NFS 目录。在这个版本中,刷新存储池不再会从它中删除卷。因此,libvirt 不会导致存储池变得不活跃。
功能增强
libvirtd
将自动重启。
8.125. libvirt-cim
程序错误修复
- BZ#1010283
- 由于对字符串解析不正确,尝试访问其名称中包含空格的存储池会意外失败。这个更新提供了一个补丁来修复这个程序错误,现在可以按预期访问此类存储池。
- BZ#1046280
- 在此次更新之前,libvirt-cim 供应商不允许为域 XML 文件的 "os" 元素自定义 "machine" 和 "arch" 属性。因此,提供了一个默认值,覆盖了 libvirt-cim 可能的自定义。要修复这个程序错误,代码已被调整,允许修改 "os" 元素的 "type" 属性的 "machine" 和 "arch" 属性。因此,现在可以根据需要使用 "ModifySystemSettings" 方法设置字段,并为 KVM_VirtualSystemSettingData "machine" 字段调整 "SystemSettings" 值。
- BZ#1119165
- 在以前的版本中,在域 XML 文件中覆盖某些标签时使用不正确的变量。因此,dumpCore 属性的设置会被忽略。在这个版本中,提供了一个补丁来修复这个错误,在上述场景中属性不再被忽略。另外,libvirt-cim 供应商现在支持 dumpCore 功能。
8.126. libvisual
8.126.1. RHBA-2014:0840 - libvisual 程序错误修复更新
错误修复
- BZ#658064
- 在以前的版本中,由于 Red Hat Network 上的 Optional 软件仓库中的某些软件包之间的多 lib 文件冲突,这些软件包不能在同一机器上安装的主和次要架构的副本。因此,安装软件包会失败。现在,应用了补丁来解决文件冲突,现在可以在上述场景中按预期安装软件包。
8.127. libvpd
8.127.1. RHEA-2014:1429 - libvpd 增强更新
8.128. linuxptp
程序错误修复
- BZ#1011022
- ptp4l 应用程序可以被配置为自动选择延迟机制。但是,此配置不适用于 P2P 延迟机制,因此延迟计时器不会被重置,且实用程序不会发出任何对等延迟测量。在这个版本中,提供了一个补丁来解决这个问题,ptp4l 现在可以正确地测量上述场景中的对等延迟。
- BZ#1016356
- 在以前的版本中,测量的网络延迟使用移动平均算法处理,这对外方非常敏感。例如,这可能会对从外部时钟步骤恢复的时间造成负面影响。在这个版本中,增加了对测量路径延迟的介质过滤的支持。因此,现在可以配置用于处理测量的延迟的算法。默认情况下,使用 median 过滤器(对外部者不敏感)设置。
- BZ#1019121
- 当 phc2sys 工具与 Pulse Per Second (PPS)设备以及相应的网络接口或 Precision Time Protocol (PTP)时钟没有使用 "-i" 或 "-s" 选项指定时,用户必须通过运行 "echo 1 > /sys/class/ptp/ptp0/pps_enable" 命令手动启用该设备。当 phc2sys 启动前没有启用该设备时,会返回 "failed to fetch PPS: Connection timed out" 错误。但是,这个要求没有正确记录,这可能会使用户混淆。在这个版本中,此信息被添加到 phc2sys (8)手册页中。
8.129. lsvpd
8.129.1. RHBA-2014:1442 - lsvpd 程序错误修复和安全更新
程序错误修复
功能增强
- BZ#1006855
- 在这个版本中,增加了对 IBM PowerPC 服务器系统中的固件权利检查的支持。
8.130. ltrace
8.130.1. RHBA-2014:1604 - ltrace 程序错误修复更新
程序错误修复
- BZ#868280
- 在以前的版本中,ltrace 工具不支持 Position 独立 Executables (PIE)二进制文件,这些二进制文件与共享库和进程链接。因此,在这些二进制文件的镜像中发现的地址需要对在进程启动期间加载二进制的实际地址进行额外的调整。在这个版本中,增加了对 PIE 二进制文件和流程的支持,ltrace 现在可以正确处理 PIE 二进制文件的额外处理。
- BZ#891607
- 在克隆进程后复制内部结构时,ltrace 工具不会正确复制包含可执行文件路径的字符串。这个行为会导致堆管理中的错误,并可能导致 ltrace 意外终止。现在,在克隆 trace 的进程时,底层源代码已被修改,ltrace 会正确复制内存。
8.131. luci
安全修复
- CVE-2014-3593
- 在生成网页时,在包含集群配置文件字符串的输入中发现 luci 使用
eval()
。具有创建或编辑集群配置权限的攻击者,可以利用此缺陷在运行 luci 的主机上以 luci 用户身份执行任意代码。这个问题是由 Red Hat Jan Pokorn5-4 发现的。
程序错误修复
- BZ#855112
- 在以前的版本中,可以在属性值中的 luci 配置文件中使用以下字符:
- less-than 符号(<)
- 更大的符号(>)
- 引号(")
在属性值中使用此类字符可能会导致几个问题。在这个版本中,当用户试图在属性值中使用这些特殊字符时,会返回警告。 - BZ#917738
luci
应用程序的 IP 资源中缺少prefer_interface
参数。如果集群节点在同一子网上有多个活跃接口,则此参数用于向特定的网络接口添加 IP 地址。在这个版本中,缺少的参数已添加到 luci 中。- BZ#917771
- 在以前的版本中,当在专家模式中使用时,
max_messages
、netmtu
、seqno_unchanged_const
和window_size
配置字段在 luci 配置文件中缺失。在这个版本中,添加了缺少的字段。 - BZ#917780
- luci 配置中缺少 Red Hat Resource Group Manager (
rgmanager
)。在这个版本中,可以在 luci 专家模式下禁用rgmanager
。 - BZ#918795
- 在以前的版本中,luci 缺少 Kdump 隔离代理。此更新中添加了代理。
- BZ#988446
- 缩放 Chrome 和 Firefox Web 浏览器中的 luci Web 界面可能会导致 用户和权限 选项卡错误显示。现在,这个程序错误已被解决,这个标签页会被正确显示。
- BZ#999324
- 在以前的版本中,luci 应用程序已被修复,可以正确解析以句点符号(
.
)分隔的集群资源名称。在这个版本中,后缀会自动剥离。但是,通过引用集群配置中的 IP 地址来指定节点名称。完成后,节点名称以后缀分隔(如 “.1” 或 “.sh” )结尾,且无法编辑。另外,这样的节点也表示不是群集成员。现在,这个程序错误已被解决,在上述场景中可以正确处理这样的节点。 - BZ#1003062
- 在以前的版本中,luci 应用程序使用
10g
类型作为oracledb
资源代理的type
属性的默认值。这个行为不正确,因为 luci 应该使用原始配置,且不会自行设置。在这个版本中,type 字段不会被 luci 指定。 - BZ#1004011
- luci 应用中缺少
fence_xvm
代理的某些可配置参数。在这个版本中,添加了缺少的属性,如专家的Timeout
和 non-expert mode 和Path to Key File
,IP Port
,Multicast Address
,Multicast Retransmit Time
,IP Family
,Authentication Type
, 和Packet Hash Type
用于专家模式。 - BZ#1004922
- 在创建新集群时,集群配置中的
post_join_delay
参数设置为 3 或 6 秒,具体取决于集群是否使用cluster.conf
文件或集群软件进行配置。在这个版本中,这个不一致的方法已被修复。如果没有为post_join_delay
指定值,则cluster.conf
文件中不会设置该值,但集群软件指定值,它被设置为 6 秒。 - BZ#1008510
- 隔离列表中的
fence_enegera
代理的名称是Egenera SAN Controller
。这个名称已过时,因此误导。在这个版本中,代理被正确列为Egenera BladeFrame
。 - BZ#1019853
- 在以前的版本中,
netfs
资源代理的配置中缺少self_fence
参数。另外在 GUI 中,self -Fence If Unmount Fails 选项中没有复选框条目。在这个版本中,添加了缺少的参数。 - BZ#1026374
- 由于 luci 应用程序中的以前的更改,SELinux 不再使用受限制的
piranha_web_t
SELinux 上下文类型标记 luci 进程。这个行为不正确,因此在 luci 软件包中添加了新的脚本来解决这个问题。另外,SELinux 策略也会相应地修改。现在,luci 进程会如预期运行piranha_web_t
。 - BZ#1100817
- 在以前的版本中,luci 应用程序不会在 web UI 的 菜单中列出虚拟机资源代理。尝试在配置文件中手动添加虚拟机资源代理会导致返回 500 错误。在这个版本中,提供了一个补丁来修复这个错误和虚拟机资源代理,现在在 菜单中正确列出。
功能增强
- BZ#919225
- luci 应用程序已被改进来显示全局集群资源,并按字母顺序排序,按资源名称、IP 地址和其他显著资源属性进行排序。
- BZ#919243
- 在这个版本中,luci 应用程序验证
nfsclient
资源是否始终与nfsexport
资源关联。现在,尝试创建带有没有与nfsexport
资源关联的nfsclient
资源的服务会导致返回以下错误:nfsclient resources must have a parent nfsexport resource
- BZ#982771
- 在这个版本中,luci 应用程序检查
beaker.session.secret
值是否包含 20 个或更多字符。因此,不允许使用包含较少字符的值来增加服务器存储会话数据的安全性。 - BZ#991575
- 这个版本改进了 luci 应用程序,能够在 luci 和连接 Web 浏览器之间为 SSL/TLS 频道配置密码,为管理员提供更好的安全控制。
- BZ#1061786
- 在这个版本中,添加了在 Apache 资源配置屏幕中指定
httpd
二进制文件的功能。此新功能允许用户使用带有集群中httpd
守护进程的多进程模块(MPM) worker。 - BZ#1070760
- 在这个版本中,luci 应用程序已被修改,允许用户为所有与 NFS 相关的端口设置静态端口。
- BZ#1117398
- 在这个版本中,luci 应用程序里进行了一些更改:
- 添加了对配置新添加的 bind-mount 资源代理的支持。
- 添加了对为
fence_brocade
代理配置power_timeout
、shell_timeout
、login_timeout
和retry_on
属性的支持。 - 添加了对 <
rm
> 标签的 newly-added 属性reboot_on_pid_exhaustion
的支持。此属性在 Red Hat Resource Group Manager (rgmanager
)中使用,以便在使用返回代码为 254 分叉 bash 子进程时进行服务恢复。 - 不再需要
skip_undefined
属性,它已从高级模式的隔离配置中删除。 - 添加了对为
postgres-8
资源代理配置新的startup_wait
参数的支持。这个参数允许用户根据自己的需要配置睡眠时间。 - 添加了对
fence_apc
、fence_virsh
和fence_rsa
代理的ssh_options
属性的支持。 - 添加了对虚拟机(VM)资源代理新添加的
no_kill
属性的支持。此属性用于防止rgmanager
工具终止没有正常关闭的虚拟机。
8.132. lvm2
8.132.1. RHBA-2014:1387 - lvm2 程序错误修复和安全更新
程序错误修复
- BZ#857064
- 在以前的版本中,正确处理 vgdisplay 工具的 "-A" ("--activevolumegroups")选项缺失。因此,即使使用"-A"来只显示活跃的 VG,vgdisplay 也会显示不活跃的卷组(VG),此处定义为至少包含一个活跃逻辑卷(LV)的 VG。在这个版本中,添加了正确的处理 "-A" 用于 vgdisplay。现在,当使用 "vgdisplay -A" 命令("vgdisplay --activevolumegroups" 时,只会显示活跃的 VG。
- BZ#878948
- 在此次更新之前,同一逻辑卷(LV)的并发激活会导致竞争条件,并返回以下出错信息:
Device or resource busy
在这个版本中,禁止并发激活和停用 LV,并执行锁定,以便操作现在可以按顺序处理。因此,"lvchange -ay $lv" 和 "lvchange -an $lv" 命令不会在同时发出时导致这个错误。 - BZ#892991
- 使用 lvmetad 守护进程时,dmeventd 守护进程会考虑 RAID LV 修复时没有最新的元数据。根据过时的信息,修复没有进行。在这个版本中,修复代码会强制对托管 RAID 卷的物理卷(PV)进行元数据刷新,使用 dmeventd 进行自动 RAID 卷修复,使用 "lvconvert --repair" 自动修复,无论是否启用了 lvmetad。
- BZ#905063
- 在以前的版本中,RAID LV 会激活或无法激活,具体取决于其冗余是如何被破坏的。在 lvchange 和 vgchange 工具中添加了新的"降级状态"激活模式,以更好地激活仍有足够的冗余级别的不完整的 RAID LV。现在默认使用这个激活模式。
- BZ#989174
- 如果 lvm2app lvm_vg_reduce () 函数被调用来从卷组(VG)中删除大多数但不是所有物理卷(PV),则通常会完全销毁 VG。此外,不会生成错误消息。有了这个更新,lvm_vg_reduce () 会获得一些额外的验证,lvm2app lvm_reduce ()现在可以正常工作。
- BZ#995157
- 如果用户试图通过运行 "vgchange -cy VG" 命令为卷组分配集群属性,并且系统尚未正确配置,则不会提示用户确认更改。此外,如果系统未特别配置,则后续 LVM 命令会跳过这些集群的 VG。这个 bug 已被修复,lvm 命令现在会提示用户在 VG 上启用集群属性,如果 clvmd 守护进程或集群没有运行。用户也可以通过提供 "--yes" 参数来覆盖此提示。
- BZ#1016218
- 在以前的版本中,即使实用程序使用 "--sysinit" 选项运行,但逻辑卷管理(LVM)工具会尝试连接到 lvmetad 守护进程。然而,lvmetad 还没有运行,因此在系统初始化过程中会多次发出错误消息。在这个版本中,通过检查"-sysinit"选项,添加了在早期系统初始化过程中是否运行 LVM 工具。现在,在使用 "-sysinit" 时,如果早期系统初始化中没有 lvmetad 套接字,LVM 工具会自动回退到非lvmetad 模式。
- BZ#1024347
- 当将现有逻辑卷(LV)转换为精简池 LV 时,lvm 工具需要临时打开卷以便在启动时使用零初始化。但是,这个初始化步骤会导致触发 WATCH udev 规则。因此,所有 udev 规则都会根据 WATCH 规则重新评估,这会导致后续扫描设备的更改,LVM 可能会尝试并行关闭该设备,这最终会出错。在这个版本中,lvm 使用正确的标记作为中间步骤,这些卷会在转换过程中使用。这些标志指示 udev 实用程序以避免设置 WATCH 规则,或在此类设备上启动任何扫描,直到它们正确初始化为止。
- BZ#1049296
- lvm 工具使用锁定文件来防止不兼容的操作同时运行。在此次更新之前,当 fork 子进程(如使用 "lvresize -r" 命令的 fsadm 工具)时,lvm 会错误地丢弃这些锁定,并错误地允许命令并行运行。在这个版本中修复了负责错误行为的 exec_cmd ()函数。现在,与其他 lvm 命令并行运行 "lvresize -r" 可以正常工作,所有逻辑卷(LV)会被正确调整大小。
- BZ#1084157
- 在以前的版本中,lvm2-cluster 子软件包对 lvm2 软件包的版本相同或更高版本的要求,但无法正常工作,除非版本完全相同。因此,lvm2-cluster 无法正常工作。在这个版本中,lvm2 及其所有子软件包定义了严格的版本依赖项,包括 lvm2-cluster 子软件包和 lvm2 软件包之间的依赖项。这样,lvm2-cluster 子软件包总是依赖于正确的 lvm2 软件包和不兼容的 lvm2-cluster 版本,因此无法同时安装。
- BZ#1085553
- 在以前的版本中,有关物理卷(PV)可用性的信息可能会过时。因此,根据是否使用 lvmetad,RAID LV 的 lvs 命令的输出中的 status 字符串可能会有所不同。dmeventd 卷监控守护进程现在为参与遇到错误的 RAID 阵列的设备更新 lvmetad 中的 PV 信息。因此,如果 dmeventd 是活跃的(无论这个程序错误是什么),则 lvs 输出在 lvmetad 和非lvmetad 情况下都是一样的。请注意,当禁用 dmeventd 时,建议为有问题的 RAID 阵列运行 "lvscan --cache" 命令,以确保 lvs 输出中的最新信息。
- BZ#1089229
- device-mapper 软件包在 lvm2 中合并。但是,以前的依赖项不严格,用户可以在不更新 lvm2 的情况下更新 device-mapper,从而导致版本不匹配。lvm2 软件包及其所有子软件包现在自行定义严格的版本依赖项,以便在更新任何这些 lvm2 子软件包后,用户也会获得主 lvm2 软件包的一致性更新。因为 lvm2 只有一个 debuginfo 软件包及其所有子软件包,如果其中一个子软件包已更新至更新的版本,这个修复也会解决用户接收到不可用 debuginfo 的问题。
- BZ#1113539
- 如果使用了持久性过滤器,/etc/lvm/cache/.cache,并创建了新的物理卷(PV),则不会重新评估过滤器,以获取可能正确阻止 PV 创建过程成功的任何更改。因此,如果没有最新的信息,LVM 可能会覆盖现有的外部签名。在这个版本中,在 PV 创建前,总是重新评估过滤器。另外,如果在最后一个过滤器评估后的 lvm 工具之外进行了更改,则在 PV 创建前会正确考虑这些更改。
- BZ#1121216
- 当创建 RAID 逻辑卷镜像时,删除其中一个物理卷(PV)设备时,"lvconvert --repair"命令会拒绝使用另一个 LV 一部分的 PV 恢复镜像 leg。现在,一个上游补丁已被用来修复这个程序错误,"lvconvert --repair"现在接受一些额外的参数,包括 "--alloc" 和 "-force",带有 PV 的镜像 leg 现在使用 "lvconvert --repair" 正确恢复。
- BZ#1124766
- 在以前的版本中,在本地取消激活前,对非集群快照原始卷(LV)的集群状态进行不正确的检查。因此,尝试只在单一主机(非集群)本地取消激活已经不活跃的逻辑卷(LV)会导致发出以下不正确的错误消息:
Cannot deactivate remotely exclusive device locally. (newer versions)
Cannot deactivate <lv name> locally. (older versions)
在这个版本中,检查会在本地取消激活前正确检查集群的 LV,并不会再发生误导的错误消息。 - BZ#1125154
- 在以前的版本中,在将磁盘用于新卷组(VG)时,检查处理 vgcreate 工具,其中尚未为其创建物理卷(PV)不正确。因此,vgcreate 多次使用误导错误消息创建 PV:
Physical volume <pv name> not found
在 vgcreate 代码中解决了现有 PV 的检查,如果无法找到 PV,则不会发出任何错误,因此由 vgcreate 创建。 - BZ#1129311
- 由于一个不正确的持久过滤器 /etc/lvm/cache/.cache,在使用 pvcreate 实用程序时生成的 /etc/lvm/cache/.cache,如果 MD 过滤器已切换,则 pvcreate 会尝试刷新缓存。因此,如果针对具有现有 MD 签名的设备运行 pvcreate 工具,则检测到签名和擦除,则设备将继续过滤,就像还没有删除签名。在这个版本中,更改了过滤器,设备会被正确使用,在签名被删除后立即使用。
- BZ#1132547
- 当 volume_list 配置参数被设置为不允许激活 thin-pool,然后创建一个精简卷时,transaction_id 参数会被移动,但不会通知内核目标。因此,将来的激活失败可能会报告事务 ID 不匹配。lvm2 元数据已被修复,lvm 工具不再错误地预期在因为激活 volume_list 参数而禁止这些信息时发送到内核的精简池驱动程序。
- BZ#1035871
- lvm2 工具计算快照可以使用的最大空间,并限制用户提供的快照大小,使其永远不会大于最大可用空间。但是,lvm2 之前错误地计算了快照空间,在某些情况下可能会分配太小的快照。因此,当这个快照被填充时,原始设备修改的块都会溢出,快照中的所有数据都会丢失。在这个版本中,lvm2 遵循用户指定的大小,快照不再溢出。
- BZ#1020877
- 在集群中,如果卷只支持 exclusive 模式,则卷的本地激活会自动转换为专用激活。但是,这可能导致本地激活激活在集群中的不同(非本地)节点上激活卷。在这个版本中,自动转换已被修复,本地激活被转换为 local-exclusive 激活。另外,如果本地激活成功,该卷现在在本地(且完全激活)活跃。
功能增强
- BZ#669111
- 在这个版本中,在 pvmove 工具中添加了一个新的命令行选项 "--atomic"。"--atomic"选项将导致所有可识别的逻辑卷(LV)组合在一起。除非处理最后一个 LV,否则不会在其最终目标上放置每个 LV 的提交。因此,"pvmove abort"命令可确保所有受影响的 LV 都保留在源设备上。
- BZ#815680
- 在这个版本中,添加了两个手册页,用于覆盖精简配置和缓存的逻辑卷(LVM)主题,也称为"分层存储"。这些新的 man page 是 lvmthin (7)和 lvmcache (7)。
- BZ#821932
- 添加了原始 "lv_attr" 字段中每个属性的新报告字段。这个版本提供了更多描述性信息,以及有关逻辑卷(LV)属性的更广泛的信息。此外,现在可单独报告原始"lv_attr"字段中编码的属性。
- BZ#829920
- 现在,可以使用 "%FREE" 参数来创建 RAID 逻辑卷(LV);"%FREE"与 lvcreate 命令的"-l" ("--extents")参数一起使用。生成的大小大约等于所需的百分比,包括需要对 RAID 元数据区域进行调整。
- BZ#880395
- 在这个版本中,最新的 lvm2app 库会获得新的功能,以自定义用于创建物理卷(PV)的参数,即 PV 元数据副本、PV 元数据大小、数据校准和数据对齐偏移和零处理。
- BZ#986687
- 在这个版本中,用户可以创建包含与 LVM 报告相关的设置的逻辑卷管理(LVM)配置文件。用户可以使用以下模式为每个 LVM 命令应用这些设置:"<lvm command> --command_profile <profile_name>"。现在,用户可以为每个需要用例定义 LVM 报告格式和设置。
- BZ#997223
- 在这个版本中,增加了对在新创建的逻辑卷(LV)上删除检测到的签名的支持。当检测到新 LV 和签名时,逻辑卷管理(LVM)会在正确激活新 LV 前首先清除签名。还为用户添加了一个带有问题的提示:
WARNING: <signature name> signature detected on <device name>. Wipe it? [y/n]
此问题确认删除签名。另外,默认启用一个新的 lvm.conf 选项 "allocation/wipe_signatures_when_zeroing_new_lvs" 来启用或禁用此功能。 - BZ#1112551
- 在这个版本中,通过向 LVM 报告命令添加新的"-S" ("--select SelectionCriteria")选项来提供基于条件的逻辑卷管理(LVM)报告: pvs、vgs、lvdisplay、vgdisplay、lvdisplay 和 lvm devtypes。SelectionCriteria 使用报告字段名称构建条件,通过使用比较运算符限制字段值,并使用分组和逻辑运算符创建更复杂的标准。
- BZ#951600
- 新的命令行参数 "-readonly" 已添加到逻辑卷管理(LVM)命令中,该命令报告逻辑卷(LV)、卷组(VG)或物理卷(PV)的状态。参数使用特殊的只读模式来访问磁盘上的元数据,而无需锁定。
- BZ#1122698
- 逻辑卷管理(LVM)包括显著改进,在命令中使用 "lvresize -l+50%FREE" 等命令的百分比时可以分配适当空间量。新行为会努力更直观;指定的大小被视为与逻辑扩展相关,或者与物理扩展相关,同时计算逻辑卷(LV)所需的新逻辑大小。然后,执行循环以确保任何并行条带或镜像 leg 的大小相同。
- BZ#1127451
- 这个版本添加了新的 "lv_layout" 和 "lv_role" Logical Volume Management (LVM)报告字段。这些新字段已创建为"lv_attr"报告字段中的现有位的一部分,作为单独的报告字段的一部分。这种分隔形式更易于阅读,因为 LVM 报告完整单词而不是单个字符的值。它还更好地适合脚本中的 LVM 报告输出处理,以及在选择条件中使用这些新字段(新的"-select" lvm 命令选项)。如需更多信息,请参阅 BZ""1112551 和 BZ#821932。https://bugzilla.redhat.com/show_bug.cgi?id=1112551
- BZ#1130168
- 在这个版本中,dmsetup 工具会获得一个新的标记 "--deferred"。如果指定且设备处于打开状态,标记会在稍后关闭后调度要删除的设备。
8.133. man-pages-fr
错误修复
- BZ#891278
- 这个 man-pages-fr 软件包的更新添加了一条警告,即 xinetd 服务的法语 man page 包括已过时的选项。
8.134. man-pages-ja
功能增强
8.135. man-pages-overrides
程序错误修复
- BZ#1003511
- "-d"、"-G"和"-U"选项已从 rpc.idmapd 命令中删除,但仍然显示在 rpc.idmapd (8)手册页中。在这个版本中,这些不支持的选项已从 rpc.idmapd (8)手册页中删除。
- BZ#889049
- 在以前的版本中,在 vhostmd (8)手册页中会显示到隐式配置文件的不正确的路径。vhostmd (8)手册页已更新,以提及正确的路径 "/etc/vhostmd/vhostmd.conf"。
- BZ#1099275
- 在以前的版本中,mailx (1)手册页包含有关未设置环境变量的不完整信息,这可能会使用户混淆。在这个版本中,在 mailx (1)手册页中添加了完整的信息。
- BZ#1087503
- 在此次更新之前,nl_langinfo (3)和 charsets (7)手册页中的信息不完整。nl_langinfo (3)手册页已更新为声明,为 en_US 语言设置的代码默认为 Latin1。另外,在 charsets (7)手册页中添加了一个备注,所有设置和区域设置中推荐的编码都是 UTF-8。
- BZ#1078319
- 在以前的版本中,core (5)手册页包含 coredump_filter 值的默认值和所有位的不完整描述。core (5)手册页已更新,以包含正确和完整信息。
- BZ#1112708
- bash (1)手册页没有提到 512 字节块用于 POSIX 模式的"-c"和"-f"选项。在这个版本中,bash (1)中添加了缺少的信息。
- BZ#1075152
- 在以前的版本中,xinetd (8)手册页包含有关 xinetd 失效期间服务发生的情况不完整的信息。在这个版本中,在 xinetd (8)手册页中添加了一个有关在 xinetd 去点重新加载过程中终止处理的段落。
- BZ#1058100
- 在此次更新之前,"persistent"服务的默认值错误记录在 nscd.conf (5)手册页中。nscd.conf (5)手册页已更新为表示"persistent"服务的默认值为 "yes"。
- BZ#969502
- 在以前的版本中,rpm (8)手册页没有明确说明"-setperms"和"--setugids"选项是互斥的。rpm (8)手册页已更新,以包含完整的信息。
- BZ#1114785
- host.conf (5)解析器库配置手册页包含"multi"值不正确的默认值。host.conf (5)手册页已更新为表示"multi"的默认值为"on"。
- BZ#1066537
- 在以前的版本中,zsh (1)手册页包含有关 Z shell 的模拟模式的不完整的描述。在这个版本中,在调用模拟的第一个字母列表中添加字母"b"。
- BZ#1007865
- 在以前的版本中,Red Hat Enterprise Linux 6 不提供 snmp_read (3)手册页。在这个版本中,添加了缺少的 snmp_read (3)手册页。
- BZ#781499
- 在此次更新之前,makedeltarpm (8)手册页中缺少 "-l" 选项的描述。在这个版本中,添加了缺少的描述来 makedeltarpm (8)。
- BZ#1108028
- 在以前的版本中,Password (1)手册页没有描述以下 Elliptic Curve Cryptography (ECC)密码套件组: Elliptic Curve Diffie-Hellman (ECDH)和 Elliptic Curve Digital Signature Algorithm (ECDSA)或 Transport Layer Security (TLS)版本 1.2。在这个版本中,在 password (1)中添加了缺少的 ECDH 和 ECDSA 密码组和 TLSv1.2 功能的描述,文档现已完成。
- BZ#964160
- 在以前的版本中,没有 cracklib-packer 和 cracklib-unpacker 工具的手册页。在这个版本中,添加了 cracklib-format (8)手册页,它描述了 cracklib-packer 和 cracklib-unpacker。
- BZ#809096
- pkcs_slot 工具已从 opencryptoki 软件包中删除,但 man page 仍然可用。在这个版本中,pkcs_slot (1)手册页已被删除。
- BZ#1058793
- 在以前的版本中,curl (1)和 curl_easy_setopt (3)手册页包含到导致不存在的页面的完整网络安全服务(NSS)密码列表的链接。在这个版本中,为 curl (1)和 curl_easy_setopt (3)手册页添加了正确的链接。
- BZ#988713
- 在以前的版本中,gzip (1)手册页中没有记录"--rsyncable"选项。这个版本添加了 "--rsyncable" 的描述,gzip 工具的文档现已完成。
- BZ#1059828
- 在以前的版本中,Red Hat Enterprise Linux 6 不提供 pthread_mutex 工具的手册页。这个更新添加了 pthread_mutex_consistent (3)、pthread_mutexattr_getrobust (3)和 pthread_mutexattr_setrobust (3)手册页。
- BZ#1058738
- nscd.conf (5)手册页不包含有关 netgroup 缓存的信息。在这个版本中,netgroup 缓存的描述添加到 nscd.conf (5)中。
- BZ#1075233
- 在以前的版本中,pcregrep (1)手册页没有提到 pcresyntax (3)手册页。在这个版本中,有关 pcresyntax (3)的备注已添加到描述中,以及 pcregrep (1)手册页中的"See Also" 部分。
- BZ#818780
- 在以前的版本中,Red Hat Enterprise Linux 6 中无法使用有关配置 oddjobd-mkhomedir 工具的手册页。这个更新添加了 oddjobd-mkhomedir.conf (5)手册页。
- BZ#816252
- 在此次更新之前,由于冗余的 reencoding,Russian 语言中的多个手册页无法读取。这个程序错误已被解决,因为 UTF-8 编码中提供了源页面,因此不会执行 re-encoding,且手册页现在可以正确读取。
- BZ#1058349
- getgrnam (3) manual page 中的 sysconf (_SC_GETGR_R_SIZE_MAX)调用的解释已被修改来描述 sysconf (_SC_GETGR_R_SIZE_MAX)的功能。
- BZ#1017478
- flock (2)手册页包含有关通过 NFS 锁定文件的信息。在这个版本中,这个主题的更精确的描述被添加到 flock (2)。
- BZ#1011892
- 在以前的版本中,iconv 工具的文档不完整。在这个版本中,添加了 iconv (1)手册页。
- BZ#1057712
- 当 openssh 软件包被更新时,其 man page 会被 man-pages-overrides 软件包覆盖。这个版本从 man-pages-overrides 中删除 ssh_config (5)手册页。固定的手册页现在是 openssh 软件包的一部分。
8.136. mcelog
8.136.1. RHBA-2014:1401 - mcelog 程序错误修复和安全更新
程序错误修复
- BZ#849252
- 在以前的版本中,禁用 /var/log/mcelog 文件的日志轮转,这可能会导致文件系统访问最大容量,因为无法移动现有的 mcelog 文件。mcelog.logrotate 文件已添加到 mcelogd 守护进程中,文件系统就无法无限期增长。
- BZ#1079360
- 在以前的版本中,mcelog 软件包没有指定 mcelogd chkconfig levels。因此,无法使用 ntsysv 接口启用 mcelogd 守护进程。默认 chkconfig 级别已添加到 /etc/init.d/mcelog 中,现在可以使用 ntsysv 来启用 mcelogd。(BZ1006293)* 在此更新前,Intel Xeon E5 系列处理器没有被唯一标识,且缺少内存控制器解码表的条目。应用了补丁来修复这个程序错误,mcelog 软件包已被更新,以正确地识别 Intel Xeon E5 系列处理器,并显示更正的内存读取错误。
- BZ#1079501
- 在以前的版本中,select_intel_cputype ()函数无法正常工作。因此,Intel Xeon E6 系列处理器中返回以下出错信息:mcelog: Family 6 Model 3f CPU: 仅解码架构错误mcelog 工具已更新,以支持 Intel Xeon E6 系列处理器。现在,使用此微架构对 CPU 进行解码可以正常工作。
- BZ#1059227
- 在以前的版本中,mcelog 软件包包含三个文件、Intel.c.orig、Intel.c.rej 和 mcelog.c.orig,它们是开发中使用的文件副本。源编译或 mcelog 工具不需要这些文件,因此已被删除。
功能增强
- BZ#872387
- 在以前的版本中,在指定守护进程模式时,mcelog 工具需要使用 "--logfile" 参数,以确保 mcelog 使用日志记录模式启动。但是,这个配置会阻止 mcelog 从日志记录到 syslog 开始。在这个版本中,mcelog 只允许在没有指定 "--logfile" 时记录 syslog。
8.137. mdadm
8.137.1. RHBA-2014:1597 - mdadm 程序错误修复和功能增强更新
程序错误修复
- BZ#1012505
- 在以前的版本中,/etc/cron.d/raid-check 文件的权限不够严格。这个版本修改了权限,只允许管理员读取存储在 /etc/cron.d/raid-check 中的脚本。
- BZ#1040006
- 在以前的版本中,当磁盘在 Intel Matrix Storage Manager (IMSM) RAID 卷中失败时,mdadm 工具无法正常工作。因此,失败的磁盘不会从卷或容器中删除,卷没有处于 "degraded" 状态,重建可能无法启动。在这个版本中,mdadm 可以正确处理 RAID 卷中失败的磁盘。
- BZ#1059193
- 在以前的版本中,在使用 SATA 设备时,mdadm 工具不会应用 /etc/mdadm.conf 文件中的 "path swig" 指令。因此,mdadm 会搜索不是由 udev 工具创建的 /dev/disk/by-path/ 目录。这个 bug 已被修复,mdadm 不再忽略 SATA 设备的"path swig"指令。
- BZ#1059307
- 在以前的版本中,在创建 IMSM 阵列时,mdadm 工具无法正确验证缺少的设备。因此,当 mdadm 试图创建缺少设备的 IMSM 阵列时,它会意外终止,并显示 segmentation 错误。有了这个更新,缺少的设备会被正确验证,并创建带有缺失设备的数组现在可以正常工作。
- BZ#1059316
- 在以前的版本中,当监控磁盘数组的 reshaping 操作的 mdadm 线程由 SIGTERM 信号终止时,它不会清除阵列的暂停数据区域。因此,阵列中的数据可能会被破坏。在这个版本中,mdadm 线程会完全终止,且无法导致数据崩溃。
- BZ#1075529
- 在以前的版本中,当在带有第二个 SATA 控制器在 UEFI 模式中启用了 RSTe 模式的系统中安装时,mdadm 不会检测到 RAID 卷,且无法安装到它们。在这个版本中,mdadm 可以正确地检测到 RAID 卷并安装到卷。
- BZ#1136868
- 在此次更新之前,当组件大小大于 100GiB 时,mdadm 工具无法创建 Intel RAID 卷。这个问题在 RAID 1、5 和 10 中发生。这个程序错误已被解决,在上述情况下现在可以成功创建 Intel RAID 卷。
- BZ#1136880
- 在以前的版本中,当 mdadm 工具使用 Intel Matrix Storage Manager (IMSM)工具重新创建的 RAID0 和 RAID5 卷时,会出现 mdadm 和 mdmon 工具之间的竞争条件。因此,reshape 操作无法启动。在这个版本中,竞争条件和 mdadn 现在可以在不复杂的情况下重塑 IMSM 模块。
- BZ#1136891
- 使用 Intel Matrix Storage Manager (IMSM)工具创建的 RAID 不支持在不同控制器间跨。在某些情况下,mdadm 工具允许使用不同控制器下的磁盘完全编译 IMSM RAID。在这个版本中,在这种情况下会显示有关主机总线适配器不匹配的警告信息。
- BZ#1136903
- 在以前的版本中,如果系统重启或者 Intel Matrix Storage Manager (IMSM)在重新定义 IMSM RAID 时重启,则 reshape 操作不会在重新装配后继续。此时会显示以下信息:reshape info 不采用原生格式 - 无法继续。这个 bug 已被修复,reshape 现在会在系统重启后或 IMSM 重启后恢复。
8.138. microcode_ctl
8.138.1. RHEA-2014:1466 - microcode_ctl 增强更新
8.139. mipv6-daemon
错误修复
- BZ#804124
- 在以前的版本中,mip6d 守护进程将调试日志消息写入 stderr 输出流,特别是在进程终止过程中。但是,由于代码中的一个错误,mip6d 将随机数据写入 netlink 套接字而不是 stderr。这些 netlink 消息会被内核拒绝,并导致 SELinux 警告有关无效的 netlink 信息。在这个版本中解决了这个程序错误,上面描述的情况不再发生。
8.140. mksh
8.140.1. RHBA-2014:0533 - mksh 程序错误修复更新
错误修复
- BZ#771198
- 在以前的版本中,当查找文件名的通用部分时,mksh shell 使用字节而不是字符。因此,文件名的通用部分只能包含边框字符的开头部分,并且只打印字符的一部分。在这个版本中,当查找最长通用前缀时,mksh 可以与整个字符一起工作,tab 补全会按预期打印正确的常见部分。
8.141. mobile-broadband-provider-info
错误修复
- BZ#996599
- 在以前的版本中,接入点名称(APN)字符串在结尾错误地包含一个空格。因此,无法建立与以色列 Pelephone 3G 提供程序的连接。在这个版本中解决了 APN 字符串中的拼写错误,现在可以按预期建立连接。
8.142. mod_auth_kerb
程序错误修复
- BZ#970678
- 在这个版本中,在 README 文件中为 "KrbLocalUserMapping" 选项添加了缺少的描述。
- BZ#981248
- 在以前的版本中,mod_auth_kerb 模块与某些浏览器(如 Mozilla Firefox)的行为不兼容,处理过期的 Kerberos 票据。因此,在这些浏览器中打开带有过期 Kerberos 票据的 Kerberos 保护的页面会导致 mod_auth_kerb 失败。在这个版本中,mod_auth_kerb 中的错误已被解决,上面提到的问题不再发生。
- BZ#1050015
- 由于底层源代码中有一个错误,当配置了 "S4U2Proxy" 扩展时,mod_auth_kerb 模块不会续订当前还无效的票据。现在,这个更新会应用一个补丁来修复这个程序错误,这个问题单现在可以按预期正确地续订。
8.143. mod_nss
8.143.1. RHBA-2014:1548 - mod_nss 程序错误修复更新
程序错误修复
- BZ#866703
- 在以前的版本中,nss_var_lookup_nss_cert_PEM ()函数来自 nss_engine_vars.c 文件偶尔会导致内存错误。这个程序错误已被解决,内存错误不再发生。
- BZ#1002733
- 由于 nss-softokn 软件包中的一个 bug 是 mod_nss 软件包的依赖项,因此 httpd 守护进程的根进程偶尔由 SIGTRAP 信号终止。在这个版本中,mod_nss 已被更新,它依赖于 nss-softokn 的更正版本,root httpd 进程不再由 SIGTRAP 终止。
- BZ#1016628
- 由于 nss-softokn 软件包中的一个 bug 是 mod_nss 软件包的依赖项,httpd 守护进程有时会意外终止并出现分段错误,并返回以下信息:NSS_Initialize 失败。证书数据库:/etc/httpd/alias在这个版本中,mod_nss 已被更新,它依赖于 nss-softokn 的更正版本,httpd 在上述情况下不再崩溃。
8.144. mod_wsgi
8.144.1. RHBA-2014:1612 - mod_wsgi 程序错误修复更新
错误修复
- BZ#1008018
- 当使用 mod_wsgi 模块停止 httpd 守护进程时,启动后会出现一个简短的竞争条件,在此期间 httpd 可能会意外终止并出现错误。这个程序错误已被解决,httpd 不再在上述条件中崩溃。
8.145. module-init-tools
错误修复
- BZ#1045169
- modprobe 工具之前无法识别查询内核模块的 modinfo 部分中软模块依赖项的信息。这个版本实现了对软模块依赖项的支持,"modprobe --show-depends"命令现在可以按预期返回此信息。
8.146. mutt
8.146.1. RHBA-2014:0945 - Mutt bug fix update
程序错误修复
- BZ#674271
- 在此次更新之前,每个信中引用特定主题的内部哈希引用了一个不存在的主题。因此,当用户尝试在线程模式中删除一个或多个消息后,mutt 会终止分段错误。在这个版本中,主题哈希更新会被正确更新,且崩溃不再发生。
- BZ#690409
- 在以前的版本中,存储 Mutt 消息标头的数组无法正确处理空标头条目。当 IMAP 服务器上发生消息 ID 更改时,这可能会导致 mutt 意外终止并出现分段错误,例如,当 IMAP 服务器与多个客户端连接时,通过其中一个客户端删除消息时。在这个版本中,对空标头的处理已被优化,并简化了阵列中的消息排序。因此,多个连接的客户端现在可以正确同步。
- BZ#750929
- 在此次更新之前,mutt 在通过 IMAP 和 POP3 协议访问帐户时无法正确解析证书文件。因此,当尝试访问 IMAP 或 POP3 帐户时,Rtt 会意外终止分段错误。在这个版本中解决了解析过程以及访问 IMAP 或 POP3 帐户的问题。
- BZ#1083524
- 在以前的版本中,一个 bug 会阻止 Mutt 的交互式证书验证正常工作。因此,当用户尝试从命令行向 TLS 服务器发送电子邮件消息时,mutt 会意外终止分段错误,而 Mutt 尚未收到证书。在这个版本中,mutt 的交互式证书验证已被修复,上面描述的崩溃不再发生。
8.147. netcf
8.147.1. RHBA-2014:1475 - netcf 程序错误修复和安全更新
程序错误修复
- BZ#879055
- 在检索 MAC 地址时,libvirtd 服务可能会意外终止。这是因为 netcf 代码包含可由 libvirtd 访问的未初始化数据。在这个版本中,netcf 可以正确地初始化这个数据,libvirtd 不会在这种情况下崩溃。
- BZ#1052156
- 在以前的版本中,netcf 在尝试创建绑定接口时,将额外的引号添加到 BONDING_OPTS 参数的值中。因此,尝试失败并显示类似如下的错误:错误创建接口:'Could not create interface: internal error failed to create (start) interface bond0: failed to execute external program - Running 'ifup bond0' failed with exit code 1: ./network-functions: line 457: /sys/class/net/bond0/bonding/'mode: No such file or directory在这个版本中,额外的引号不再添加到 BONDING_OPTS 中,现在可以使用指定的这个参数创建绑定设备。
8.148. netlabel_tools
程序错误修复
- BZ#918763
- 在此次更新之前,netlabelctl (NetLabel 管理工具)错误地处理多部分 netlink 消息,以限制显示的静态标签数。因此,当配置了大量静态标签时,运行 "netlabelctl unlbl list -p" 命令不会提供正确的输出。这个 bug 已被修复,netlabelctl 现在可以正常工作,并会如预期列出所有配置的静态标签。
- BZ#1000177
- 在以前的版本中,netlabelctl 没有为来自内核的大型配置信息分配足够的缓冲空间。另外,netlabelctl 无法在缓冲区不足够大的情况下调整缓冲区大小。因此,无法使用大量 CIPSO 级别和类别转换。在这个版本中,默认的消息缓冲区已被增加,现在缓冲区会根据需要动态增加。因此,在这种情况下,可以使用大量 CIPSO 级别和类别转换。
- BZ#1098082
- 在此次更新之前,二进制软件包中没有包括带有 licence 文本的文件。在这个版本中,在软件包中添加了许可证文本。
8.149. nfs-utils
程序错误修复
- BZ#1007195
- 在此次更新之前,nfsiostat 工具会在后台运行,stdout 流重定向到一个文件。因此,数据不会及时显示。在这个版本中,会定期清除 stdout,以确保 nfsiostat 的缓冲输出不会丢失(如果 nfsiostat 进程终止)。
- BZ#1033708
- nfs-utils 软件包被移到内核密钥环中,以存储 NFSv4 所需的 ID 映射。但是,对于大型企业环境,内核密钥太小。在这个版本中,内核用来进行 ID 映射的 nfsidmap 工具已更改为使用多个密钥环。
- BZ#1040135
- 在以前的版本中,在打开与客户端挂载的通信失败后,rpc.idmapd 名称映射守护进程会返回警告信息。因为警告消息没有危害且不必要的,rpc.idmapd 现在只有在用户在命令行上通过 "--verbose" 选项时才会显示消息。
- BZ#1018358
- rpc.statd 工具的启动会导致创建额外的特权 UDP 套接字。因此,rpc.statd 在所有接口上侦听随机端口,这只适用于与 rpc.lockd 工具的内部通信。在这个版本中,rpc.statd 不再在上述情况下打开额外的套接字,而是仅在回环地址上打开一个额外的随机端口。
- BZ#1075224
- rpc.statd 工具的开头会导致消息被填充到日志中。在这个版本中,套接字保持开放,直到找到另一个套接字。因此,同一端口不会被重复使用,信息不会在上述情形中出现日志。
- BZ#1079047
- 当启用 root squashing 且禁用全局执行权限时,使用 mount 工具的"-o remount"选项会导致挂载尝试失败。这个更新修复了 chk_mountpoint () 函数,mount 工具现在只检查非特权用户的执行权限,从而解决了这个问题。
- BZ#1081208
- 当 rpc.gssd 守护进程启动时,会将零生命周期发送到内核,然后猜测并使用默认的生命周期。要修复这个程序错误,现在正确的生命周期被传递给内核,这会在 GSS 上下文中使用它超时。
- BZ#1087878
- 在以前的版本中,当与 NFS 模块和"state"选项一起使用时,rpcdebug 工具无法正常工作。在这个版本中,"state"选项可以与 NFS 模块一起使用,并且 NFS 状态调试现在可以按预期设置。
- BZ#1113204
- 在以前的版本中,具有多个磁盘的机器使 rpc.mountd 工具使用 100% 的 CPU,达到 30 到 40 分钟,需要不扫描磁盘。libblkid 守护进程的使用已被优化,rpc.mountd 不再会导致在这种情况下停机。
- BZ#1136814
- 由于其代码中缩进错误,nfsiostat 实用程序无法启动。在这个版本中,添加了正确的缩进,nfsiostat 现在会如预期启动。
功能增强
8.150. nfs-utils-lib
功能增强
- BZ#1066153
- 在以前的版本中,当 NFSv4 挂载中使用 chown 工具时,chown 工具不遵循 no_root_squash 选项,因此无法更改每个给定文件的用户和组所有权。有了这个更新,libnfsidmap (帮助映射 NFSv4)的库已被修补,chchch 现在可以按预期处理用户和组所有权。* rpc.idmapd 守护进程已被改进,能够解析完全限定的用户名,如 "user@subdomain"。如果没有此增强,UID 或 GID 映射失败,客户端被"nobody"列为"nobody"。
8.151. Nmap
8.151.1. RHBA-2014:0683 - nmap 程序错误修复更新
错误修复
- BZ#1000770
- 在以前的版本中,ncat 工具会在详细模式中输出调试信息。因此,通过 HTTP 代理连接后,会显示调试消息和接收的数据,这可能会干扰标准输出的自动处理。在这个版本中,ncat 只按预期以详细模式打印调试信息。
8.152. nss
8.152.1. RHBA-2014:1378 - nss 程序错误修复和功能增强更新
程序错误修复
- BZ#606022
- 缺少 NSS 安全工具的手册页。在这个版本中,添加了缺少的手册页。
- BZ#895339
- 在以前的版本中,
curl
工具无法通过安全套接字层(SSL)与活跃 FTP 通信,其中控制和数据连接由客户端证书加密并由带有密码保护的私钥进行身份验证。这是因为 Privacy Enhanced Mail (PEM)模块在从文件中加载密钥时预先删除令牌。因此,当加载私钥来验证数据连接时,它会导致已经验证的控制连接失败,并显示以下错误代码:SSL_ERROR_TOKEN_INSERTION_REMOVAL.
NSS PEM
模块中的底层源代码已被修改,多次载入单个密钥不再会导致 SSL 连接失败。 - BZ#993441, BZ#1004105
- 在这个版本中,为 FIPS-140 重新验证提交
nss-softokn
模块。 - BZ#1031238
- 从缓存中删除令牌证书的代码会导致死锁。在某些情况下,服务器使用 TLS/SSL 处理多个传出复制或窗口同步协议,并处理使用 TLS/SSL 和简单页面结果的传入客户端请求时,服务器会变得无响应到新的传入的客户端请求。在这个版本中,底层源代码已被修改来修复这个程序错误,在上述场景中 NSS 的客户端不再变得无响应。
- BZ#1044666
- 在调用
sdb_measureAccess()
功能前,NSS 库不会检查NSS_SDB_USE_CACHE
环境变量是否已设置为 “yes”。因此,当使用依赖于 NSS 的cURL
或libcurl
库进行 HTTPS 请求时,对于路径、目录和文件,有许多 “访问” 系统调用。这个行为会导致目录条目缓存的过度大小。这个版本修改了 NSS 以避免在NSS_SDB_USE_CACHE
设置为 “yes” 时调用sdb_measureAccess()
,从而将系统调用限制为不存在的路径。因此,c
URL HTTPS 请求不再导致缓存太大。 - BZ#1053437
- 在以前的版本中,在
nss-softokn
模块中有一个不正确的CHECK_FORK()
调用会阻止 Red Hat Directory Server 的 Admin Server 组件在关闭不正确后恢复。因此,红帽目录服务器父进程无法关闭 NSS。因此,当在 SSL 端口上配置红帽目录服务器时,Admin 服务器组件会意外终止,并显示分段错误。在这个版本中,删除了有问题的CHECK_FORK()
调用,用户可以启动 Red Hat Directory Server,并按预期使用 SSL 加密的流量。 - BZ#1057224, BZ#1057226
- 用于设置和导出
NSS_ENABLE_ECC
和NSS_ECC_MORE_THAN_SUITE_B
构建时间环境变量的 spec 文件中的 部分缺失。因此,NSS 无法允许外部pkcs1.10.1
加密模块来支持 Elliptic Curve Curve Cryptography (ECC)算法,从而防止对可插拔 ECC 的支持。上述 spec 文件已被修复,可插入的 ECC 现在如预期支持。 - BZ#1059176
- 在以前的版本中,NSS 库允许用户禁用内部加密模块。当用户设置外部加密模块(如
opencryptoki
)时,作为首选模块并禁用了内部加密模块时,NSS 可能会意外终止分段错误。NSS 已被修改,以防止用户禁用内部模块,因此在上述场景中不再会失败。 - BZ#1090681
- 由于管理用户定义的插槽的功能中的一个竞争条件,
PK11_DoesMechanism()
调用会在 Red Hat Directory Server 上失败。管理用户定义的插槽的代码现在检查插槽是否存在,并跳过任何重新初始化、缓存存在的值和锁定。如果模块不是 thread-safe,就像使用 Privacy Enhanced Mail (PEM)模块时,插槽sessionLock
与模块引用锁定相同,且不需要使用sessionLock
。因此,PK11_DoesMechanism()
不再崩溃。
8.153. numactl
程序错误修复
- BZ#812462
- 在此次更新之前,numa_parse_cpustring () 函数将未允许的 CPU 添加到其位掩码中。因此,仅设置用户有权访问的位。因此,每次使用函数时都会导致不同的结果。在这个版本中,numa_parse_cpustring () 代码在 "cpustring" 参数中设置所有位,无论当前任务的 CPU 掩码是什么,上述场景不再发生。
- BZ#819133
- 在以前的版本中,编译器被强制 libnuma 在 "char*" 参数中提供一个恒定的,这会导致返回以下警告信息:testconst.c:10:45: warning: deprecated from string constant to 'char*' [-Wwrite-strings]底层源代码已被修复,字符串作为恒定处理,用户不再接收警告消息。
- BZ#873456
- 在以前的版本中,当用户将 shell 的关联性设置为可用 CPU 的子集,然后尝试使用 numactl 程序绑定到该关联性掩码中没有的内容时,尝试会失败。应用上游补丁来修复这个错误,而 numactl 环境已扩展,以便用户可以选择是否允许关联性掩码来确定可用的 CPU。
- BZ#1100134
- 由于最新的 numactl 软件包更新后出现的不兼容,virsh 进程会在任何 virsh 命令运行时意外终止。这个程序错误已被解决,virsh 命令现在可以正常工作。
8.154. numad
8.154.1. RHBA-2014:1594 - numad 程序错误修复更新
程序错误修复
- BZ#872524
- 在以前的版本中,在执行具有非常大的常驻内存(如 Windows Server 2012 客户机)的系统上运行 numad 守护进程可能会导致内存交换。因此,在某些情况下发生大量延迟,这可能会导致其他进程(如 qemu-kvm )变得没有响应。在这个版本中,numad 不再会在上述场景中造成内存交换,则排序延迟和挂起不再发生。
- BZ#999062
- 在此次更新之前,当绑定到一组 NUMA 节点处理系统内存时,系统会启动内存交换,而不是将其他 NUMA 节点用于内存分配。因此,系统会出现大量延迟或变得无响应。在这个版本中,在移动进程内存后 numad 取消绑定内存节点,允许其他节点用于内存分配,从而防止描述的延迟和挂起。
- BZ#1011908
- 在以前的版本中,numad 守护进程在本地化 QEMU 线程时会忽略现有的控制组,因此它会错误地将所有运行的线程合并到单个控制组中。这个版本引进了对多个控制组群的 numad 支持,因此 numad 不再将 QEMU 线程移到不需要的控制组群中。
8.155. opencryptoki
程序错误修复
- BZ#1027606
- 在以前的版本中,在 IBM System z 架构中,opencryptoki Common Cryptographic Architecture (CCA)令牌在生成 EC 密钥对时将不正确的信息发送到 CKA_ECDSA_PARAMS 属性。因此,opencryptoki 无法验证公钥。这个程序错误已被解决,CCA 令牌现在将正确的信息发送到 CKA_ECDSA_PARAMS,公钥已被成功验证。
- BZ#1131745
- 在此次更新之前,IBM Crypto Accelerator (ICA)令牌在零消息大小时无法正确处理块大小或尾部计算。因此,导致常规保护错误(GPF)发生溢出。底层源代码已被修复,GPF 不再发生。
8.156. openldap
8.157. openmotif
8.157.1. RHBA-2014:1542 - openmotif 程序错误修复更新
程序错误修复
- BZ#869782, BZ#953938
- 在此次更新之前,当标签被改变时,根据 XmFormConstraint "preferred_width" 字段在 GeometryManager ()函数中设置的大小不会被更新,仍然包含之前的标签长度。因此,如果在窗口小于实际标签宽度时修改了标签文本,则生成的大小被错误地计算,标签文本会被截断。在这个版本中,值会被更新,在上述场景中不再发生 fault。
- BZ#1000343
- 在以前的版本中,当 Motif Window Manager 或 MWM 被用作窗口管理器,且 Mwm*freezeOnConfig 和 Mwm*moveOpaque 选项被设置为 "False" 时,只有在屏幕任何位置移动窗口时会出现图标,并且没有帧 border was drawn。因此,用户在其 touch 屏幕监视器上导航应用程序时遇到问题。现在,提供了一个补丁来修复这个错误,当屏幕的任何地方移动窗口时,窗口会被正确显示。
- BZ#1058644
- 由于底层源代码中的一个错误,尝试使用 XmEXTENDED_SELECT 策略可能会导致 Motif 库意外终止并出现 segmentation 错误。这个版本应用了补丁来修复这个程序错误,Mottif 在上述场景中不再崩溃。
8.158. openslp
8.159. openssh
安全修复
- CVE-2014-2653
- 发现 OpenSSH 客户端没有正确验证 DNS SSHFP 记录。恶意服务器可能会使用此缺陷,强制连接客户端跳过 DNS SSHFP 记录检查,并要求用户手动验证 DNS SSHFP 记录的主机验证。
- CVE-2014-2532
- 发现 OpenSSH 没有使用通配符字符正确处理特定的 AcceptEnv 参数值。一个远程攻击者可以使用这个缺陷来绕过预期的环境变量限制。
程序错误修复
- BZ#993580
- 根据 SP800-131A 信息安全标准,使用数字签名算法(DSA)的数字签名生成数字签名,其密钥大小为 1024 位,并且密钥大小小于 2048 位。在这个版本中,ssh-keygen 不再生成在 FIPS 模式下小于 2048 位的密钥。但是,出于兼容性的原因,sshd 服务接受大小为 1024 位和更大的密钥的密钥。
- BZ#1010429
- 在以前的版本中,openssh 工具会错误地将所有子进程的 oom_adj 值设置为 -17。这个行为不正确,因为子进程应该将此值设置为 0。在这个版本中,会应用一个补丁来修复这个程序错误,oom_adj 现在为所有子进程正确设置为 0。
- BZ#1020803
- 在以前的版本中,如果 sshd 服务无法使用 fipscheck 库验证已安装的 FIPS 模块的校验和,则有关此失败的信息仅在 sshd 的标准错误输出中提供。因此,当系统没有为 FIPS 模式正确配置时,用户无法注意到这个消息。要修复这个程序错误,这个行为已被更改,sshd 现在会通过 syslog 服务发送此类信息。
- BZ#1042519
- 当使用 "ssh-add -e" 命令从 ssh 代理中删除 pkcs11 库提供的密钥时,系统会提示您输入 PIN。在这个版本中,应用了补丁来允许用户删除 pkcs11 提供的密钥,而无需 PIN。
功能增强
- BZ#953088
- 在这个版本中,ControlPersist 已添加到 OpenSSH 中。选项和 ControlMaster 配置指令指定主连接在初始客户端连接关闭后在后台保持打开状态。
- BZ#997377
- 当 sshd 守护进程配置为强制内部 SFTP 会话,并且用户尝试使用 SFTP 以外的连接时,相应的消息将记录到 /var/log/secure 文件中。
- BZ#1028335
- 对由 RFC5656 指定的密钥交换(ECDH)和主机用户密钥(ECDSA)支持的 Elliptic Curve Cryptography 模式被添加到 openssh 软件包中。但是,默认情况下不启用它们,用户必须手动启用它们。有关如何使用 OpenSSH 配置 ECDSA 和 ECDH 的更多信息,请参阅:https://access.redhat.com/solutions/711953
8.160. openssl
程序错误修复
- BZ#1057520
- 在以前的版本中,基于 single-DES 和 RC2 算法的密码套件位于 SSL 或 TLS 客户端以及 OpenSSL 库中的服务器使用的默认密码套件列表中。这允许在 OpenSSL 客户端或服务器与第三方客户端或服务器之间协商子优化密码套件。另外,TLS ClientHello 请求中支持的加密套件会降低 OpenSSL TLS 客户端的可操作性。在这个版本中,从默认密码套件列表中删除基于单DES和 RC2 的密码套件,提高了 OpenSSL TLS 客户端的安全性和兼容性。
- BZ#1056608
- 基于 Triple DES (3DES)算法的密码套件在 SSL 或 TLS 协议下运行时,其位强度被错误地设置为 168 位。因此,它们被错误地根据 AES-128 算法在密码套件之前排序。这个版本将基于 3DES 的密码套件的强度设置为 128 位,现在它们现在会根据基于 AES-128 的密码套件进行排序。
- BZ#1090952
- 在使用 SSLv2 协议的 TLS 客户端应用程序中,提供支持的 Elliptic Curve Cryptography (ECC)的密码套件列表无法发送。这会导致 TLS 连接到使用 OpenSSL 客户端不支持的基于 ECC 的密码套件来中止。在这个版本中,基于 ECC 的密码套件不会在 SSLv2 ClientHello 请求中发送,以上情况下 TLS 连接不再中止。
- BZ#1119800
- 在 Datagram TLS (DTLS) ClientHello 请求中发送的 TLS 扩展之前不包含受支持的基于 ECC 的密码套件的列表。因此,OpenSSL 客户端不支持的使用 ECC 密码套件的 DTLS 连接到服务器会中止。在这个版本中,基于 ECC 的密码套件列表会在 DTLS ClientHello 请求中正确发送,DTLS 连接不再在以上情况下被中止。
功能增强
8.161. openswan
程序错误修复
- BZ#739949
- 将 protoport 选项与 type=passthrough 设置结合使用时,会安装不正确的 inverse 策略,且排除不成功。现在,在上述情形中会安装了正确的策略。
- BZ#834397
- 使用 leftsubnets= 或 auto=start 选项启动多个连接会导致 Openswan 的加密过载和后续重启。已修复 pluto cryptohelper 以防止过载。
- BZ#970279
- 在响应端不强制使用 ikev2=insist 设置,允许建立 IKEv1 连接。这个程序错误已被解决,ikev2=insist 不再被忽略。
- BZ#970349
- 在这个版本中,在重新建立 IKEv2 密钥后修复了多个闲置状态。
- BZ#988106
- 在这个版本中,使用 esp、phase1alg 和phase2alg 选项强制实施设定的限制。在以前的版本中,无论上述选项是什么,默认设置的任何算法(aes, 3des, sha1, md5))总是被允许。
- BZ#993124
- IKEv2 删除有效负载并不总是发送到远程对等点,使远程端点与未使用的连接保持。现在,IKEv2 删除有效负载会如预期提供。
- BZ#1002708
- 在这个版本中,修改 rightid=%fromcert 选项,在本地证书设置时从本地证书加载 ID,并在为对等端设置时从远程 peer 发送的证书加载 ID。
- BZ#1019746
- "ipsec ikeping"命令无法识别 --exchangenum 选项。现在,这个选项可以被正确识别。
- BZ#1021961
- 在这个版本中解决了在 IKEv2 中使用带有 ike= 选项的 SHA2 加密系列时的 IKE pluto 守护进程崩溃。
- BZ#1041576
- Openswan 不再很快丢弃各种权限,这会阻止它读取不归 root 所有的目录中的配置文件。
- BZ#1050340
- 在引用缺少的 IKEv2 有效负载时,IKE pluto 守护进程偶尔崩溃并重启。Openswan 的州机器已更新,以拒绝缺少有效负载的数据包。
- BZ#1070356
- 在这个版本中解决了与之前 openswan 软件包更新中引进的 Cisco VPN 版本的兼容性问题。
- BZ#1088656
- 重启远程端点后,本地路由条目中没有正确重置 sourceip 选项。这个程序错误已被解决。
- BZ#1092913
- 如果没有 NSS 数据库可用,则 IKE pluto 守护进程会创建一个无法正常工作替换。现在,在启动 pluto 守护进程前会创建缺少的 NSS 数据库,并在软件包安装的 %post 阶段创建,从而解决了这个问题。
- BZ#1098473
- 在出现故障时,"ipsec newhostkey"命令不会返回正确的非零退出代码,例如在生成不足强度的密钥时。现在,ipsec newhostkey 返回正确的退出代码。
- BZ#1114683
- 为 IKEv2 配置 AH 算法或 IKEv1 或 IKEv2 (如 CAST、RIPEMD160 或 CAMELLIA)的各种非标准 ESP 算法会导致 IKE pluto 守护进程意外终止并重新启动。这个程序错误已被解决,当配置了 AH 或 ESP 算法时,pluto 不再崩溃。
- BZ#1126066
- 使用 "force_busy=yes" 开发人员选项强制 IKEv2 中的 anti-DDOS 模式,从而导致 IKE pluto 守护进程崩溃并重启。这个程序错误已被解决,在上述情况下,pluto 不再崩溃。
8.162. oprofile
8.163. pacemaker
8.163.1. RHBA-2014:1544 - pacemaker 程序错误修复更新
程序错误修复
- BZ#1036631
- 在以前的版本中,克隆的组的共存限制不会被完全遵守。因此,克隆的组的成员不会与依赖项正确停止。现在,当依赖项也停止时,克隆的组成员也会停止。
- BZ#1037423
- 在此次更新之前,用户不会显示有关克隆资源组健康成员状态的信息。添加了一个新的选项,允许在"pcs status --full"命令的输出中显示克隆的组的状态。
- BZ#1046131
- 在以前的版本中,Pacemaker 无法正确地取消它管理的 LSB 脚本的重复监控操作。因此,在资源成功停止后监控操作会失败。这个程序错误已被解决,在停止 LSB 资源前,重复监控操作会被正确取消。
- BZ#1069279
- 在某些情况下,默认停止或开始排序资源违反了共同定位约束。因此,尽管资源有其他指示,但可能会在同一节点上临时激活资源。在这个版本中,对资源的顺序遵循配置的 colocation 约束,如果不配置,则资源不会在同一节点上在同一节点上。
- BZ#1078954
- 在以前的版本中,Pacemaker 无法启动超过克隆资源的 10 个实例。因此,包含超过 10 个节点的集群无法正常工作。在这个版本中解决了这个程序错误,Pacemaker 现在可以正确启动克隆资源的无限数量实例。
- BZ#1086885
- 由于一个时间问题,重新引导的节点太快处于待处理状态,且不会重新加入集群。在这个版本中,时间问题已解决,节点现在加入集群,并报告在线。
8.164. pam
8.164.1. RHBA-2014:1579 - pam bug fix update
程序错误修复
- BZ#947011
- 当将用户帐户过期日期与当前日期进行比较时,pam_unix 模块包含"off-by-one"错误。在这种情况下,帐户的真实过期会在"chage -E"命令指定的日期之后发生。在这个版本中,"off-by-one"错误和用户帐户现在会在"chage -E"命令设置的日期后过期。
- BZ#1120099
- pam_unix 和 pam_pwhistory 模块无法正确处理 /etc/security/opasswd 文件中的条目中缺少的字段。因此,如果用户条目中没有某些字段,使用 passwd 命令更改密码可能会导致分段错误。这个 bug 已被修复,pam_unix 和 pam_pwhistory 现在可以正确地处理 /etc/security/opasswd 条目中缺少的字段。
- BZ#1054936
- 在以前的版本中,pam_limits 模块不会验证 /var/run/utmp 文件中引用的进程是否仍然存在,因为登录过程仍然存在。因此,当用户在 limits.conf 文件中设置了"maxlogins"限制,并且登录会话进程意外终止且无法正确更新 utmp 文件时,即使之前的一些登录会话已因为崩溃而不存在,用户也无法访问系统。在这个版本中,pam_limits 会测试系统上是否仍然存在登录过程。因此,当 pam_limits 模块应用"maxlogins"限制时,现有登录会话的数量会更加精确计算。
- BZ#1119289
- 在以前的版本中,pam_userdb 模块对 crypt ()函数的调用太严格,而不是预期现代 crypt 哈希格式。因此,pam_userdb 无法支持 glibc 库对用户密码哈希支持的任何其他哈希算法。这个版本改进了处理 crypt ()函数的代码。现在,pam_userdb 支持 glibc crypt ()函数支持的任何密码哈希格式。
8.165. pam_pkcs11
8.165.1. RHBA-2014:1474 - pam_pkcs11 程序错误修复更新
程序错误修复
- BZ#887143
- 在尝试连接到端口 636 时,pam_pkcs11 工具会生成一个不正确的轻量级目录访问协议(LDAP) URL。因此,到该端口的连接会失败。在这个版本中,一个补丁用于解决这个程序错误,pam_pkcs11 现在会在上述场景中生成正确的 LDAP URL。
- BZ#1012082
- 在运行 "modutil -add "CoolKey PKCS modprobe Module" -dbdir /etc/pki/nssdb -libfile /usr/lib64/pkcs11/lib64/pkcs11/libcookeypk11.so" 命令手动添加 coolkey 模块后,会尝试使用智能卡登录。底层源代码已被修改来修复这个程序错误,用户现在可以按预期使用智能卡登录。
8.166. pango
8.166.1. RHBA-2014:0585 - pango 程序错误修复更新
程序错误修复
- BZ#885846
- 在此次更新之前,Pango 库使用不正确的宏来指定其 man page 的位置。因此,在安装 pango 软件包后,man 页会被放入错误的目录中。在这个版本中修复了 Pango spec 文件中的相关宏,man page 现在位于正确的目录中。
- BZ#1086690
- 在以前的版本中,pango RPM scriptlet 不会屏蔽不必要的错误信息。因此,虽然迁移成功,但 scriptlet 会在从 Red Hat Enterprise Linux 6 升级到 Red Hat Enterprise Linux 7 后打印与缺失目录相关的错误消息。在这个版本中,决定带有缓存文件的目录位置,不再会出现这些有害的错误消息。
8.167. parted
程序错误修复
- BZ#1018075
- 在以前的版本中,parted 错误地假设设备的次号始终等于其主号码加上其分区号。但是,在某些设备(如 DM 多路径设备)中这并不正确。因此,在 DM 多路径设备中使用 parted 的操作会失败。在这个版本中,parted 会根据设备的路径验证设备的挂载状态,而不是使用 "minor:major" 号。
- BZ#929319
- 当与扇区大小为 4 KB 的磁盘一起使用时,parted 程序会输出一个不必要的警告。在这个版本中,这个混淆的警告已从 parted 中删除。
- BZ#975478
- 在以前的版本中,当在互动模式中从 parted 使用时,align-check 指令无法正常工作。用户必须在脚本模式中使用 parted 才能利用 align-check 指令。在这个版本中,修正了相关的代码,align-check 现在可以按预期工作。
- BZ#1074069
- 如果在循环中快速调用,parted 程序可能会失败,并显示 EBUSY 错误。要解决这个问题,这个更新会修改 parted,以便在收到 EBUSY 错误时一直重试最多 1 秒。
- BZ#1139435
- 要防止不支持分区循环设备(如 IBM S/390 系统)的系统中失败,t8000-loop.sh 测试已被修改为不再在这些系统上运行。
功能增强
- BZ#1054283
- 在这个版本中,增加了对 64 位 PowerPC 架构的 PreP 分区中的 GUID 分区表(GPT)磁盘标签的支持。
8.168. pciutils
8.168.1. RHBA-2014:1006 - pciutils 程序错误修复更新
程序错误修复
8.169. pcp
8.169.1. RHEA-2014:1477 - pcp 增强更新
8.170. pcs
程序错误修复
- BZ#1029129
- pcs 实用程序使用不正确的位置来搜索集群节点名称,因此"pcs cluster standby"命令无法找到指定的集群节点。因此,无法将集群节点置于待机模式。在这个版本中,pcs 在 /etc/cluster/cluster.conf 文件中正确搜索节点名称,并将集群节点置于待机模式可以正常工作。
- BZ#1025054
- 在以前的版本中,pcs 无法在 cluster.conf 文件中创建用户 ID (UID)和组 ID (GID)条目。因此,非 root 用户无法访问 corosync.conf,因此无法访问 corosync。现在,在 cluster.conf 中配置 UID 和 GID 条目的 pcs 支持已被添加,非 root 用户也可以使用 "pcs cluster uidgid" 命令授予 corosync 的访问权限。
- BZ#1066927
- 使用带有 "--group" 选项的 "pcs resource create" 命令时,pcs 会创建一个资源,并在两个独立步骤而不是一个资源组中将其添加到资源组中。因此,添加到预先存在的资源组的资源有时会在不正确的节点上启动。在这个版本中,在使用"-group"时,pcs 在资源组中创建资源作为单一步骤,创建的资源会在正确的节点上启动。
- BZ#1019410
- 添加 STONITH 隔离级别时,pcs 有时会错误地检测到某些节点不是集群的一部分。因此,除非使用了 "--force" 选项,否则无法添加 STONITH 级别。现在,pcs 可以正确地决定节点是集群的一部分,只要使用有效节点,添加 pcs STONITH 级别不再需要使用 "--force" 选项。
- BZ#1094517
- 在以前的版本中,pcs 不允许对 STONITH 隔离代理使用以下属性: pcmk_reboot_action、pcmk_monitor_action 和 pcmk_status_action。因此,在配置 STONITH 代理时使用这些属性会导致配置失败。有了这个更新,pcs 可以正确地允许使用属性,配置在使用时不再会失败。
- BZ#1108778, BZ#1107612
- 从克隆的组中移除资源时,pcs 实用程序无法正确处理组的克隆。因此,只有在应该删除整个资源组时,"pcs resource unclone" 和 "pcs resource delete" 命令只会删除组中的第一个资源。在这个版本中,pcs 可以正确处理克隆组中的资源,删除克隆的资源组可以正常工作。
- BZ#1107965
- 由于检测资源组是否被管理的错误,pcs 有时无法删除克隆的资源组或主资源组。有了这个更新,pcs 可以正确地检测到资源组的状态,并删除上述资源组正常进行。
- BZ#1094812
- 在以前的版本中,在使用"pcs status nodes corosync"命令列出集群节点时,pcs 会尝试使用 corosync.conf 文件。但是,Red Hat Enterprise Linux 6 中不存在 corosync.conf。因此,"pcs status nodes corosync" 无法执行。现在,Red Hat Enterprise Linux 6 上的集群节点使用 cman_tool 程序和 /etc/cluster/cluster.conf 文件列出,"pcs status nodes corosync" 可以正常工作。
功能增强
- BZ#1035300
- pcsd 守护进程已添加到 Red Hat Enterprise Linux 6 的 pacemaker 软件包中,允许用户远程启动、停止、启用或禁用集群,同时还可以远程设置集群配置。
8.171. pcsc-lite
功能增强
- BZ#1092751
- 此更新允许 pcsc-lite 软件包与 Extra Packages for Enterprise Linux (EPEL)存储库中的 pcsc-cyberjack 软件包结合使用。这允许 pcsc-lite 支持 Reiner SCT cyberJack RFID 标准卡读取器(包括在 pcsc-cyberjack 中)的驱动程序。
8.172. perl-Authen-SASL
错误修复
- BZ#965739
- 由于 Authen::SASL Perl 模块中的一个错误,substr ()函数试图读取适当字符串之外的数据。因此,当用户通过 SASL 对 LDAP 服务器进行身份验证时,执行逻辑操作,如搜索,则该服务器上的 Perl 程序会失败。有了这个更新,Authen::SASL 模块验证已加密并写入文件处理的字符串的长度。因此,在上述情况下执行搜索会返回正确的结果。
8.173. perl-Class-MethodMaker
错误修复
- BZ#1064837
- 在以前的版本中,perl-Class-MethodMake 源代码包含一些用于测试,这些源代码受限制性许可证的许可。在这个版本中,删除了所有使用该源代码的测试。二进制软件包已更新为使用此新源软件包。但是,这些软件包的功能没有改变。
8.174. perl-Crypt-SSLeay
错误修复
- BZ#1059992
- perl-Crypt-SSLeay 软件包包括了自己的证书颁发机构(CA)证书捆绑包。因此,/usr/share/doc/perl-Crypt-SSLeay-0.57/ca-bundle.crt 文件提供的内容已过时。在这个版本中,/usr/share/doc/perl-Crypt-SSLeay-0.57/ca-bundle.crt 已被替换为 /etc/pki/tls/certs/ca-bundle.crt 文件,它是可信 CA 证书的系统范围存储文件。因此,perl-Crypt-SSLeay 文档不包含过时的 CA 证书捆绑包,并可能会使用户混淆。
8.175. perl-TimeDate
错误修复
- BZ#993222
- 在以前的版本中,perl-TimeDate 软件包中缺少一些时区,因此用户无法设置,例如 Alaska 标准时区。在 Time/Zone.pm 模块中添加了对缺失的时区的支持,如下所示:AEDT Eastern Australian Daylight AEST Eastern Australian Standard AKDT Alaska Daylight AKST Alaska Standard METDST Europe Europe DST MSD Moscow Daylight MSK Moscow Daylight因此,Time/Zone.pm 中的时区列表现已完成。
8.176. perl-WWW-Curl
错误修复
- BZ#984894
- 在以前的版本中,访问 CURLINFO_PRIVATE 选项的值会导致程序意外终止,并显示 segmentation 错误。在这个版本中,确保 CURLINFO_PRIVATE 是一个可访问的 scalar 字符串。现在,程序可以如预期访问 CURLINFO_PRIVATE。
8.177. php
8.177.1. RHBA-2014:1465 - php 程序错误修复更新
程序错误修复
- BZ#1054953
- 在以前的版本中,内部调用中使用不正确的参数类型。因此,在 big-endian 机器上执行 php-mysql 模块请求无法正常工作,如 64 位 PowerPC 和 IBM System z。参数已被修改,以匹配预期的类型。因此,php-mysql 请求会生成预期的输出。
- BZ#1069167
- 在此次更新之前,即使准备的声明仍然存在,可以关闭 mysql 链接。因此,执行这些语句会导致分段错误。在这个版本中,只有所有语句都释放时,mysql 链接才会关闭,并且语句可以如预期执行。
- BZ#1045019
- 在以前的版本中,soap 调用中缺少主机 HTTP 标头。因此,HTTP 请求不兼容 RFC2616。在这个版本中,在 soap 调用中添加了 HTTP 标头。因此,请求现在兼容 RFC2616,并可以通过代理服务器。
- BZ#1053982
- 在以前的版本中,php 软件包包含有关 oci_lob_load ()函数的错误。因此,编译 php OCI8 模块会失败。底层源代码已被修改,OCI8 扩展现在可以正确编译。
- BZ#954027
- 在此次更新之前,php 软件包中缺少了对 Session 扩展的 Spl 扩展的依赖项。因此,Spl 在 Session 之前未初始化,这使得 autoload 功能不可用。在这个版本中,Session 需要 Spl,autoload 功能现在可以按预期可用。
- BZ#953786
- 在以前的版本中,php 软件包在非静态方法中静态调用的行为中包含不一致。因此,在非静态方法中来自上下文类(名称、静态或自助)的调用会导致静态调用。在这个版本中,恢复标准行为。因此,非静态方法中的调用现在是非静态的,调用的方法会继承 $ this 变量。
8.178. pki-core
8.178.1. RHBA-2014:1622 - pki-core 程序错误修复更新
错误修复
- BZ#1146818
- 多个 Java 导入语句指定通配符参数。但是,由于在 Red Hat Enterprise Linux 6 维护分支中包含的源代码的导入声明中使用 "wildcards 参数",命名空间冲突会导致使用错误的类。因此,Token Processing System (TPS)重建测试会失败,并显示出错信息。在这个版本中,在所有内容中提供了完全命名的类,TPS 重建测试不再会失败。
程序错误修复
- BZ#1024462
- 在以前的版本中,IPA CA 证书是使用 SHA1 签名算法创建的,而不是 SHA256。现在,提供了一个补丁来修复这个错误,认证现在可以正确。
- BZ#1051382
- 在此次更新之前,在使用外部 CA 证书时 IPA Replica 安装会失败。已修复互操作性问题,IPA 再次用于外部 CA 证书。
- BZ#1055080
- 在以前的版本中,pki 工具会生成大量调试日志,使用日志消息填满 /var/log 文件系统。这个版本实现了日志轮转功能,从而解决了这个问题。
- BZ#1083170
- 当指定 locale 的 LANG 变量被设置为 "tr_TR.UTF8" 时,IPA 的安装变得无响应。这个版本可防止轻量级目录访问协议(LDAP)属性受到 LANG 的影响,IPA 不再挂起。
- BZ#1096142
- 在以前的版本中,在外部 CA 证书设置过程中,IPA 副本的设置会失败,并显示 "unable to parse xml" 错误信息。底层源代码已被修补,副本系统的设置现在可以正常工作。
- BZ#1109181
- 由于 audit.log 文件中的 Access Vector Cache (AVC)拒绝消息,certmonger 守护进程无法启动跟踪公钥基础架构(PKI)证书。因此,在 FreeIPA 安装过程中出现错误。在这个版本中,为 AVC 提供了补丁,certmonger 现在会如预期启动跟踪 PKI 证书。
- BZ#1123811
- 安装 IPA 服务器时,大量访问向量缓存(AVC)拒绝消息存储在 audit.log 中。但是,AVC 信息不是一个块,安装可以成功进行。有问题的源代码已被修补,IPA Public Key Infrastructure (PKI)克隆证书续订不再生成 AVC 拒绝信息。
功能增强
- BZ#1061442
- 在这个版本中,在成功重启任何配置的 PKI 实例后,"CS.cfg"文件会自动备份到 "CS.cfg.bak"。
8.179. pm-utils
8.179.1. RHBA-2014:1455 - pm-utils 程序错误修复更新
错误修复
- BZ#1025006
- 在以前的版本中,pm-utils 不支持高级配置和电源接口(ACPI) S1 (Power on Suspend)电源状态。因此,当 BIOS 支持 ACPI S3 (Suspend to RAM)电源状态,但不支持 S1 电源状态时,"pm-suspend"命令会失败。这个版本引进了对 S1 电源状态的支持,如果 BIOS 不支持 S3 电源状态,则 pm-suspend 现在会触发 S1 电源状态。
8.180. policycoreutils
错误修复
- BZ#1148800
- 为 Red Hat Enterprise Linux 6.6 中的 semanage 命令实现了一个新的 "noreload" 选项。但是,由于 semanageRecords () 函数中缺少的重新加载初始化,用户无法使用来自 policycoreutils-python 工具的 seobject python 模块直接启用布尔值。这个程序错误已被解决,用户现在可以使用 seobject python 模块正确设置布尔值。
程序错误修复
- BZ#885526
- 尝试使用 SELinux 图形实用程序创建新的 SELinux 策略,其名称包含短划线字符("_")失败并显示错误。底层源代码已被修改来解决这个问题,在上述场景中不再返回这个错误。因此,可以使用包含"_"的名称创建 SELinux 策略。
- BZ#913175
- 当主目录与符号链接链接链接时,"sandbox -M"命令无法启动。这个程序错误已被解决,沙盒现在可以与符号链接链接到的主目录正常工作。
- BZ#961805
- sandbox (8)和 restorecon (8)手册页中缺少某些选项描述。在这些手册页中添加了描述。
- BZ#1002209
- "semanage fcontext -a -e [source_directory] [target_directory]" 命令为目标目录设置与源目录相同的 SELinux 文件上下文。当用户使用结尾斜杠字符("/")指定源目录的名称时,命令将无法更改上下文。这个版本提供了一个补丁来修复这个程序错误,命令现在可以正常工作。
- BZ#1028202
- 在运行带有不正确的域类型的 "semanage permissive -a [type]" 命令时,会生成无效的 .te 文件。因此,尝试使用有效域类型失败再次执行命令,因为 semanage 会尝试编译之前生成的无效的 .te 文件。这个程序错误已被解决,semanage 现在可以正常工作。
- BZ#1032828
- 不支持 semanage "-N" 选项,在尝试使用该选项时返回错误。在这个版本中,增加了对 "-N" 选项的支持。
- BZ#1043969
- "fixfiles restore"、"fixfiles check"和"fixfiles validate"命令可以使用 或 而无需指定目录来执行。在以前的版本中,当以上命令在没有指定目录的情况下运行时,它们会返回非零值。这个行为不正确,因为没有遇到错误。底层源代码已被修改来解决这个问题,命令不会在上述场景中返回非零值。
- BZ#1086456
- 由于 setfiles 代码中的参数处理不正确,setfiles 命令不会检查所有给定参数的法律。在这个版本中,代码已被修改,setfiles 现在可以正确地检查给定参数的法律。
- BZ#1086572
- 当 setfiles 工具是使用指定的不存在的目录执行时,命令应该会返回错误消息,但它没有返回。现在,底层源代码已被修改来解决这个问题,命令现在可以在上述场景中正确返回错误消息。
- BZ#1091139
- 在这个版本中,删除了不正确的工作沙盒 "-c" 选项。
- BZ#1098062
- setfiles "-d" 选项显示与每个文件匹配的规格。setfiles "-q" 选项会阻止非错误的输出。在以前的版本中,在一个 setfiles 命令中指定这两个选项,即使选项相互不同。在这个版本中,选项被标记为互斥。因此,尝试一次执行它们失败,并返回错误消息。
- BZ#1119726
- 尝试使用"-i"参数指定失败的 "-i" 参数运行 semanage 命令,并显示回溯信息。底层源代码已被修改来修复这个程序错误,"semanage -i"现在可以正常工作。
8.181. polkit
程序错误修复
- BZ#628862
- 在以前的版本中,运行带有无效参数的 pkaction 命令会打开对应的 man page,而不是生成警告,或者给出错误行为的任何其他指示。在这个版本中,用户会被错误消息告知。
- BZ#864613
- 在此次更新之前,在 PolicyKit 本地授权中,目录中处理配置文件的顺序仅依赖于特定于文件系统。顺序已一致,以避免行为的激增更改,但保持未指定状态,并可能更改 Red Hat Enterprise Linux 以后更新;如果您的配置依赖于 .pkla 配置文件的顺序,请使用目录名称的记录顺序。
- BZ#1132830
- 在此次更新之前,如果受授权查询的进程在完成授权前变为 Zombie,则 polkitd 守护进程可能会意外终止。改进了对 zombie 进程的处理,以修复此崩溃。
功能增强
8.182. polkit-gnome
错误修复
- BZ#872918
- 由于源代码中有一个错误,polkit GNOME 身份验证管理器的身份验证对话框可能会在第一次显示对话框时向窗口管理器发送无效的时间戳。因此,对话框不会接收键盘输入的重点,而是将输入发送到之前为导向的窗口。这个程序错误已被解决,现在有效的时间戳现已获得并发送到窗口管理器。因此,键盘输入总是按预期发送到显示的验证对话框。
8.183. postgresql-jdbc
8.184. powerpc-utils
程序错误修复
8.185. ppc64-diag
错误修复
- BZ#988237
- 在以前的版本中,ppc64-diag 和 powerpc-utils 软件包之间存在文件冲突。因此,安装包含这些软件包最新版本的 Red Hat Enterprise Linux 会失败。在这个版本中解决了 ppc64-diag 和 powerpc-utils 间的冲突,Red Hat Enterprise Linux 的安装现在可以成功完成。
功能增强
- BZ#949612
- 在这个版本中,在 ppc64-diag 工具集中添加了 LightPath diagnoses 框架。这个新功能有助于通过 LED 轻型识别失败的硬件组件,然后促进替换。
8.186. procps
8.186.1. RHBA-2014:1595 - procps 程序错误修复和安全更新
程序错误修复
- BZ#950748
- /lib64/libproc.so 开发符号链接存在于主 procps 软件包及其 devel 子软件包中。这会导致安装 devel 子软件包时文件冲突。在这个版本中,从主软件包中删除重复的符号链接,以便可以在没有问题的情况下安装 devel 子软件包。
- BZ#963799
- 'free' 命令总是在 'shared' 列中显示零,因为 procps-ng 库试图从 /proc/meminfo 文件中不存在的 'MemShared' 字段读取。在这个版本中,"shared"列被重复使用,用于代表 'MemShared' 字段的值,从而解决了这个问题。这个更新还为 free 命令引入了一个新的 '-a' 选项,它启用了一个新的列,代表名为"MemAvailable"的最近添加的字段。默认情况下,内核不会导出此字段,因此需要显式启用它。详情请查看 free (1)手册页。
功能增强
- BZ#977467
- 在以前的版本中,使用 '-p' 选项只能传递给 'sysctl' 工具。在这个版本中,用户可以使用这个选项传递多个配置文件。因此,用户可以使用大括号和通配符字符来执行 shell 扩展。
- BZ#1105125
- 在这个版本中,'top' 和 'watch' 工具接受代表轮询或刷新间隔的浮点数。无论正在使用的区域设置是什么,都可应用广泛使用的浮点分隔符('.' 和 ',')。
- BZ#1034337
- 这个更新引进了 libproc 库中提供的 openproc ()、readproc ()和 readproctab ()函数的手册页。这些手册可帮助编写使用上述功能的应用程序。
- BZ#1060681
- 这个更新向 'ps' 命令引入了一个新的 'q' 选项(alternatively '-q' 或 '--quick-pid')。这个选项基本上是 'p' 选项的速度优化增强。如果用户只需要指定要显示的 PID 列表,则建议使用新选项,不需要其他选择和排序选项。
- BZ#1011216, BZ#1082877, BZ#1089817
- 这个版本还增强了多个 man page。
8.187. pulseaudio
8.187.1. RHBA-2014:0750 - pulseaudio 程序错误修复更新
错误修复
- BZ#1095750
- 由于每个声音卡的多个 High-Definition Multi-media Interface (HDMI)设备的 pulseaudio 服务器有限,所以音频有时会在特定的 Intel 和 Nvidia 配置中正常工作,如 Haswell 微架构处理器。在这个版本中,为 pulseaudio 实现了对多个 HDMI 设备的支持,HDMI 音频输出现在可以正常工作。
8.188. pykickstart
功能增强
- BZ#1125410
- 对 pykickstart 软件包进行了修改,以支持在 Anaconda 中安装 Docker 镜像。
8.189. python-kerberos
程序错误修复
8.190. python-linux-procfs
错误修复
- BZ#1133700
- 在以前的版本中,tuna 软件包中有一个错误;当未指定调度程序优先级时,"tuna -t $PID -p OTHER"命令会失败并显示错误。在 tuna 中修复这个程序错误需要更新 python-linux-procfs 软件包。因此,python-linux-procfs 已更新至更新的版本,并带有这个更新来解决 tuna 错误。
8.191. python-virtinst
程序错误修复
- BZ#853386
- 由于 python-virtinst 软件包中的一个错误,"virt-install --graphics spice"命令没有创建 spicevmc 频道。这个程序错误已被解决,上述命令现在可以正常工作。
- BZ#873545
- 由于 python-virtinst 软件包中的一个错误,virt-install 命令的"sparse=false"参数会被忽略,并且新校准的存储没有被完全分配。这个 bug 已被修复,"virt-install sparse=false" 命令现在可以正常工作。
- BZ#1000980
- 在此次更新之前,当使用 virt-install 工具将新 lvm 卷分配给 0 时,不会返回错误消息。在这个版本中,virt-install 被修改为在上述情况下显示错误消息。
- BZ#1055225
- virt-manager 工具无法克隆虚拟机,且逻辑卷具有完全分配的逻辑卷。点击 virt-manager GUI 中的 Clone 按钮后,会显示以下信息:不支持稀疏逻辑卷这个程序错误已被解决,现在可以使用 virt-manager GUI 成功克隆具有完全分配逻辑卷的虚拟机。
- BZ#1077232
- 当使用 "device=lun" 选项执行 virt-install 命令时,它会以以下信息终止:未知设备类型 'lun'这个 bug 已被修复,virt-install 可以正确地识别 lun 设备类型。
- BZ#1085499
- 当选择要分配给虚拟机的 PCI 设备时,virt-manager GUI 不会显示 PCI 设备的域。因此,无法在不是零的域中分配 PCI 设备。这个程序错误已被解决,virt-manager 现在在上述情况下正确显示域。
功能增强
- BZ#855740
- 在这个版本中,增加了对 python-virtinst 软件包的 MacVTap 设备驱动程序的支持。macvtap (促进虚拟化桥接网络)现在可以在安装新的虚拟客户机时使用。
- BZ#1001999
- 在这个版本中,为 python-virtinst 软件包添加了 USB 重定向的选项。
- BZ#1011290
- "virt-install --os-variant list" 命令显示的操作系统变体列表已更新。
- BZ#1017423
- 在这个版本中,为 virt-install 命令的 --disk 选项启用 startup_policy 参数。如果源文件无法访问,此参数允许指定对磁盘执行的操作。它接受与 startupPolicy 域 XML 属性相同的参数。
8.192. qemu-kvm
程序错误修复
- BZ#1067576
- 重复创建虚拟机(VM)镜像快照会逐渐增加镜像文件名的字符串大小。但是,虚拟虚拟机镜像的文件名字符串中的字符数以前限制为 1024。因此,当达到大小限制时,创建镜像快照无法执行,或者虚拟机无法成功引导。在这个版本中,文件名字符串大小限制增加到 4096,上面描述的问题仅在大量快照中发生。
- BZ#1113917
- KVM 客户端发布的特定于供应商的 SCSI 命令无法访问目标设备,因为 QEMU 认为此类命令无效。这个程序错误已被解决,特定于供应商的 SCSI 命令现在可以正确地传播到目标设备中。
- BZ#1092117
- 在以前的版本中,bdrv_is_allocated () 函数对于未分配的扇区返回 "True"。因此,在进行实时迁移时,由于基础镜像结束外的未分配扇区的传输,磁盘大小在某些情况下会大大扩展。在这个版本中,bdrv_is_allocated () 为未分配的扇区返回 "False"。因此,磁盘大小不会在上述场景中更改。
- BZ#1017858
- 当使用 libvirt 从客户机中热拔虚拟 CPU (vCPU)时,当前的 Red Hat Enterprise Linux QEMU 实现不会删除对应的 vCPU 线程。因此,libvirt 在 vCPU 热插后无法正确检测到 vCPU 计数,在热拔后无法热插 vCPU。在这个版本中,QEMU 的信息用于过滤禁用 vCPU 的不活跃 vCPU 线程,允许 libvirt 执行热插。
- BZ#1035162
- "dump-guest-memory"命令无法正确支持内存压缩,这会导致崩溃转储文件占用过量硬盘驱动器空间。现在,"dump-guest-memory"的内存压缩已被修复,崩溃转储文件现在具有预期的大小。
功能增强
- BZ#1106420
- 在 virtio-scsi-pci 控制器中启用了 ioeventfd 机制。这允许 QEMU 处理 vCPU 线程之外的 I/O 请求,这可以减少提交请求的延迟,并提高单个任务吞吐量。
- BZ#786407
- 可以为客户机配置新设备 virtio-rng,这会使主机中的熵可供客户机使用。默认情况下,此信息来自主机的 /dev/random 文件,但主机上可用的硬件随机数字生成(RNG)也可以用作源。
- BZ#826266
- dump-guest-memory.py 脚本已引入到 QEMU 中,这样就可以在客户机内核失败时分析来自 QEMU-KVM 核心的客户机内存转储。
- BZ#845667
- KVM 现在支持使用虚拟化性能监控单元(vPMU)。这允许用户在 Linux 客户机上运行性能监控工具,以及在使用 PMU 时执行实时迁移。
- BZ#1006159, BZ#1097021
- qemu-img 工具现在可以以 VHD 和 VHDX 格式创建镜像,它们可用于 Microsoft Hyper-V hypervisor。
- BZ#1007708
- 在 qemu-img 工具中添加了对 Virtual Machine Disk (VMDK)格式的版本 3 的支持。这允许 qemu-img 读取镜像信息并转换 VMDK3 镜像文件的格式。
8.193. ql2400-firmware
8.194. ql2500-firmware
8.195. rdma
8.195.1. RHBA-2014:1551 - rdma 程序错误修复和功能增强更新
程序错误修复
- BZ#828074
- 在以前的版本中,在接受来自客户端的连接请求后,librdmacm-utils 软件包中的 rping 工具无法建立 RDMA 连接。这个程序错误已被解决,在上述情况下可以按预期创建连接。
- BZ#828082
- 在某些情况下,librdmacm-utils 软件包中的 udaddy 工具在接收数据传输时变得无响应。这个程序错误已被解决,udaddy 在上述场景中不再挂起。
- BZ#1024903
- 在以前的版本中,ib_qib 内核模块使用内核模块参数初始化某些 mezzanine 卡。但是,对这个初始化方法的支持已被弃用并删除上游,因此已在以前的更新中从 Red Hat 内核中删除。因此,某些 mezzanine 卡初始化不再成功。在这个版本中,libipathverbs 库提供了一个 modprobe 配置文件,它允许从用户空间正确配置 ib_qib 模块。现在,受影响的 mezzanine 卡会如预期进行初始化。
- BZ#1097290
- 在以前的版本中,共享 OpenType font library "libotf.so.0" 由 openmpi 软件包和 libotf 软件包提供。因此,当请求 libotf.so.0 的 RPM spec 文件正确运行时,Yum 可以安装 openmpi 或 libotf 来满足依赖项。但是,由于这两个软件包不提供兼容的 libotf.so.0 库,所以程序可以正常工作,具体取决于是否选择了正确的供应商。openmpi 中的 libotf.so.0 不适用于其他应用程序链接,它是一个内部库。在这个版本中,openmpi 中的 libotf.so.0 不包括在 RPM 库标识搜索中。因此,链接到 libotf 的应用程序将获得正确的 libotf,不意外安装 openmpi 来满足 libotf 的需求。
功能增强
- BZ#854655
- 这个版本为来自 libibverbs 软件包的 InfiniBand 堆栈和 ConnectX 设备添加了 XRC 支持。
- BZ#1005352
- 在这个版本中,在 openmpi 软件包中添加了对 InfiniBand 规格的支持。
- BZ#1080183
- 在这个版本中,添加了一个 libocrdma 软件包,它为 Emulex One 命令 RoCE Adapters 提供特定于设备的用户空间驱动程序,用于 libibverbs 库。
- BZ#1091537, BZ#1100557, BZ#1130083
- 这个更新添加了 mpich 软件包,它提供了 MPI 标准(MPI-1、MPI-2 和 MPI-2 和 MPI-3)的高性能和广泛可移植的实现。
8.196. redhat-release-server
8.197. redhat-support-lib-python
程序错误修复
- BZ#1054445
- 当尚未安装 debuginfo 软件包时,"btextract ./vmcore"命令无法正常工作。因此,redhat-support-tool 程序运行但没有安装 debuginfo 软件包。修复了 btextract 的非互动模式,以便在需要时下载内核调试符号,redhat-support-tool 现在会如预期安装 debuginfo 软件包。
- BZ#1036921
- 发出 "redhat-support-tool getcase [case-number]" 命令时,在 Case Details 部分中不会显示 "Version" 字段。现在,提供了一个补丁来修复这个错误,产品版本现在在查看问题单详情时显示。
- BZ#1060916
- 在此次更新之前,redhat-support-tool 诊断功能不适用于来自内核崩溃的简单 oops 信息或 RIP 字符串。另外,redhat-support-tool 结果与相应 API 返回的结果不同。在这个版本中,改进了对简单 oops 消息和内核崩溃中的 RIP 字符串的诊断。因此,redhat-support-tool diagnose [oops.txt] 命令指向与 API "Diagnose" 按钮相同的文章,一个简单的 RIP.txt 文件会拉取与 sfdc 搜索栏上放置 RIP 相同的文章。
- BZ#1036711
- 由于登录到内核下载代码不佳,因此非 root 用户不知道没有必要的 root 特权来下载内核调试符号。要修复这个程序错误,请记录说明需要 root 权限来执行 findkerneldebugs 和 getkerneldebug 命令。此外,这两个命令的帮助已扩展,以指示需要 root 特权。现在,非 root 用户可以更好地指示哪些命令需要 root 权限。
功能增强
- BZ#1036699
- 磁盘空间或连接问题等问题可能会导致从 Red Hat Network 下载内核调试符号。然而,用户没有正确收到有关此故障原因的通知。在这个版本中,会返回错误消息解释内核调试符号无法下载的原因。
8.198. resource-agents
程序错误修复
- BZ#1025909
- 在以前的版本中,IPaddr2 代理不会发送出 unsolicited neighbor 公告来宣布链路层地址更改。因此,需要此功能的浮动 IPv6 地址无法正常工作。要解决这个问题,添加了 IPaddr2 代理所需的 "send_ua" 内部二进制文件来驱动 IPv6 地址。因此,浮动 IPv6 地址现在可以正常工作。然而,IPv4 地址不受此更改的影响。
- BZ#1025504
- 在以前的版本中,当在没有 "listener_name" 选项的情况下创建 oracledb.sh 资源时,rgmanager oracledb 资源代理无法启动。在这个版本中,当没有 "listener_name" 时,oracledb.sh 文件已被修改为可以正常工作,因此 oracledb 现在可以正确启动。
- BZ#1024065
- 在此次更新之前,netfs 代理在停止操作过程中可能会变得无响应,即使启用了"self_fence"选项。在这个版本中,自助隔离操作会在过程中更早执行,这样可确保 NFS 客户端检测到在 umount 无法成功时保留的服务器,并发生自我隔离。
- BZ#1054327
- 在以前的版本中,如果 libvirtd 守护进程不可用,在监控操作过程中由 VirtualDomain 代理管理的虚拟机(VM)实例会失败。这会导致 Pacemaker 资源管理器在 libvirtd 失败时不必要的恢复健康的虚拟机资源。在这个版本中,VirtualDomain 代理可以在无需 libvirtd 的情况下监控 KVM 虚拟机。因此,当 libvirtd 失败时,Pacemaker 不再错误地管理 VM 资源。
- BZ#993329
- 在以前的版本中,netfs.sh 文件中缺少 "no_unmount" 功能。因此,netfs 资源代理不允许在服务重新定位后 NFS 共享保持挂载。在这个版本中,增加了对缺失的功能,在服务重新定位时文件系统现在会被挂载。
- BZ#1022793
- 以下代理在错误中提供,因此已被丢弃:nginx、rsyslog、mysql-proxy 和 slapd。
- BZ#1023340
- 在以前的版本中,Pacemaker 的 SAPInstance 资源代理在 corosync 节点名称与主机名不匹配的节点上无法正确的行为。sapinstance_notify ()函数提供的检查已被修改来解决这个问题。无论 corosync 节点名称和主机名之间的匹配项如何,SAPInstance 代理现在可以正常工作。
- BZ#1091101
- 在以前的版本中,Pacemaker 的 nfsserver 资源代理无法正确执行 NFSv3 网络状态监控器(NSM)状态通知。因此,NFSv3 客户端无法在服务器重新定位或恢复后重新声明文件锁定。在这个版本中引进了 nfsnotify 资源代理,因为哪个 NSM 通知可以正确发送,从而允许 NFSv3 客户端重新声明文件锁定。
8.199. rgmanager
程序错误修复
- BZ#952729
- 当在集群中移动服务时,无法引用没有 "vm:" 前缀的虚拟机。在这个版本中,可以使用和不使用"vm:"前缀来控制虚拟机。
- BZ#1812079
- 当在没有 primary 属性的情况下配置自定义资源代理时,rgmanager 工具会意外终止并出现 segmentation 错误。底层源代码已被修改为解决这个程序错误,并在上述场景中记录错误而不是 rgmanager 崩溃。
- BZ#1033162
- 在以前的版本中,rg_test 工具无法正确处理退出代码 ; 当 rg_test 失败时,会返回零退出代码,而不是非零退出代码。这个版本应用补丁来修复这个程序错误,如果 rg_test 崩溃,则会按预期返回零退出代码。
- BZ#1036652
- 当 cluster.conf 文件中没有正确配置 "time_t" 值时,rgmanager 可能会意外终止。在这个版本中,提供了一个补丁来修复这个程序错误,rgmanager 现在可以正确地处理错误配置的值。
- BZ#1053739
- 当为资源地址配置了多个实例时,会使用 "maxinstances" 属性指定,不会记录任何消息。在这个版本中,在这种情况下会返回一个警告。
功能增强
- BZ#982820
- 当因为节点上的资源不足而无法执行资源启动或状态操作时,用户必须手动重新引导节点。在这个版本中,添加了一个新的 reboot_on_pid_exhaustion 标志。标志允许在上述场景中自动设置 rgmanager 来重新引导节点。
8.200. rhn-client-tools
程序错误修复
8.201. ricci
8.201.1. RHBA-2014:1539 - ricci 程序错误修复和安全更新
程序错误修复
- BZ#996195
- 当使用 "ccs --start[all]" 命令启动集群时,或使用 "--stop[all]" 命令停止集群时,资源会自动启用或禁用。因此,如果用户希望在启动时启动集群服务,在没有启用该服务的情况下无法启动集群。在这个版本中,添加了 "--nodisable" 和 "--noenable" 标志,允许用户在不启用或禁用节点上的服务的情况下启动集群。因此,用户可以在不影响启动服务的情况下停止和启动集群中的节点。
- BZ#1025053
- 在以前的版本中,用户无法为 cluster.conf 文件中的 corosync 工具配置 UID 和 GID 条目。因此,用户无法使用 User Manager GUI 配置对 corosync 的访问。在这个版本中,"--setuidgid"和"--rmuidgid"选项已添加到 ccs 工具中,它可以配置 UID 和 GID 条目。
- BZ#1090642
- 在此次更新之前,ccs 工具没有在使用 "-f" 选项在本地编辑 cluster.conf 文件时创建的临时文件。因此,大量临时文件可能会保留在临时目录中。有了这个更新,如果执行多个 ccs 命令,则正确删除它创建的临时文件,如果执行多个 ccs 命令,文件系统临时目录不再会填充大量文件。
- BZ#1044122
- 由于 reboot_now.xml 文件设计中的一个错误并保留任务批处理状态,ricci 守护进程可能会导致意外的重启循环,并在带有批处理的目录中不必要的冲突。在这个版本中,任务调度会在重启后调度,并解决了过时的文件的问题。因此,ricci 不再会导致重启循环,且不再会在不需要的情况下从已完成的批处理中保留过时的文件。
功能增强
8.202. rp-pppoe
8.202.1. RHEA-2014:0424 - rp-pppoe 增强更新
功能增强
- BZ#1009268
- 在 Red Hat Enterprise Linux 6 中,rp-pppoe 软件包中的 adsl-setup 脚本被重命名为 pppoe-setup。为了协助用户从 Red Hat Enterprise Linux 5 迁移到 Red Hat Enterprise Linux 6,创建了一个符号链接,以便旧脚本名称可以继续工作。
8.203. rrdtool
8.203.1. RHBA-2014:0356 - rrdtool 程序错误修复更新
错误修复
- BZ#914688
- 在以前的版本中,RRDtool 工具在 "fetch" 操作后不会减少数据。因此,在某些情况下无法绘制或处理一些数据。在这个版本中,在"fetch"操作后,数据至少被缩减为 chart 解析,所有数据现在都会按照上述场景中按预期进行图表处理。
8.204. rsh
8.204.1. RHBA-2014:0795 - rsh 程序错误修复更新
程序错误修复
- BZ#749283
- 在以前的版本中,rshd 守护进程执行 setpwent ()和 endpwent ()函数的冗余调用。因此,Lrshd 查询每个远程 shell (rsh)访问上的网络信息安全性(NIS)服务器。在这个版本中,这些冗余调用已被删除,rshd 不再必要地联系 NIS 服务器。
- BZ#802367
- 在此次更新之前,rsh 应用程序的最大命令行参数数量没有限制。但是,分配给参数的数据缓冲区的卷始终为 finite。因此,当 rshd 试图为带有大量参数的命令分配缓冲区时,rshd 会意外终止。在这个版本中,在 rsh 中为命令行参数实施了一个限制,描述的 rshd 崩溃不再发生。
- BZ#1098955
- 在以前的版本中,当远程复制(rcp)连接完成时,不会调用 pam_close_session () 函数。因此,PAM 会话没有正确终止。在这个版本中,pam_close_session ()被调用,PAM 会话会如预期终止。
- BZ#1094360
- 在此次更新之前,rsh 应用程序通过严格的别名规则优化,即使它不是对性能敏感的应用程序。因此,GNU 编译器集合(GCC)生成有关破坏严格别名规则的警告消息,尽管 rsh 的优先级正确。在这个版本中,rsh 禁用了严格的别名。因此,GCC 现在会忽略严格的别名规则,且不再中断带有警告信息的 rsh 进程。但是,这可能会降低性能。
8.205. rsync
8.205.1. RHBA-2014:0451 - rsync 程序错误修复更新
错误修复
- BZ#981797
- 在以前的版本中,rsync 工具会在之后修改文件所有权,而不是之前设置安全属性。因此,缺少目标上的安全属性,在某些情况下,运行 "rsync -X" 命令无法正常工作。在这个版本中,操作的顺序已被切换,rsync 现在会在设置安全属性前更改所有权。因此,在上述情形中,安全属性会如预期出现。
8.206. ruby
8.206.1. RHBA-2014:1470 - ruby 程序错误修复和功能增强更新
程序错误修复
- BZ#784766
- 在之前的 ruby 软件包版本中与 SystemTap 探测引入的 Tracer 模块与 Ruby 中实施的原生 Tracer 类相一致。因此,当将 Ruby 与 debugger 或 tracer 搭配使用时,会引发以下异常:/usr/lib/ruby/1.8/tracer.rb:16: Tracer 不是类(TypeError)在这个版本中,Tracer 模块已重命名为 SystemTap,或者 DTrace。要应用此修复,Tracer.fire 方法的实例应改为之前编写的 Ruby 代码 SystemTap.fire 或 DTrace.fire。
- BZ#802946
- 在此次更新之前,因为使用了禁止的 MD5 算法,ruby 无法在 FIPS 模式下启动 SSL 服务器。有了这个更新,MD5 已被 SHA256 替代,从而解决了这个问题。
- BZ#997886, BZ#1033864
- 由于 OpenSSL 配置选项的变化,ruby 软件包与 OpenSSL 构建不兼容,该构建支持在 Red Hat Enterprise Linux 6 中引入的 Elliptic Curve Curve Cryptography (ECC)。因此,ruby 无法构建。在这个版本中,在 Ruby 中启用了 ECC 支持,从而修复构建问题。
8.207. s390utils
程序错误修复
- BZ#1009897
- 由于初始化顺序不正确,Anaconda 无法检测 zSeries Linux fibre-channel adapter (zFCP)磁盘是否存在。要修复这个程序错误,实施了 cio_settle 内核接口,它会等待 zFCP 设备在线。现在,Anaconda 会按预期检测 zFCp 设备。
- BZ#1016181
- 对于每个可能的 CPU,zfcpdump 内核会消耗每个 CPU 数据结构的所有内存。因为只有 32 MB 可用于 zfcpdump,所以 zfcpdump 可能会耗尽内存。这个更新添加了一个新的内核参数 "possible_cpus=1",zfcpdump 系统不再耗尽内存。
- BZ#1020364
- 在以前的版本中,当使用一个包含分区参数的配置文件调用 "fdasd -c" 命令时,fdasd 守护进程会在配置文件解析过程中意外终止,并带有分段错误。在这个版本中,添加了一个解析配置文件行的新功能,fdasd 不再在上述情况下崩溃。
- BZ#1094376
- 在以前的版本中,删除当前离线的设备会导致错误。znetconf 协议已被修复,可以正确处理离线 ccwgroup 设备,"znetconf -r"命令现在可以按预期删除当前离线设备。
- BZ#1107779
- lsqeth 命令的输出取决于存在名为"?"的文件。由于 grep 命令正则表达式(regex)中的一个错误,当当前工作目录中存在名为 "?" 的文件时,系统 qeth 设备无法被检测到。要解决这个问题,grep 的 regex 参数已被放在单引号中,系统 qeth 设备现在可以成功检测到。
- BZ#1109898
- 由于 s390utils 软件包中指定的不完整依赖关系,在调用或收集不完整数据时,各种命令行工具无法正常工作。在这个版本中,工具添加了缺少的依赖项,现在可以按预期工作。
功能增强
8.208. samba
8.208.1. RHBA-2014:1372 - samba 程序错误修复和功能增强更新
- Trivial Database (TDB)文件的格式已更新。当启动
smbd
守护进程的新版本后,会立即升级这些文件。请注意,在没有备份旧 TDB 文件的情况下,无法降级到旧的 Samba 版本。 - 对于旧版本的 Samba,Samba 的打印子系统 TDB 文件(如
ntprinting.tdb
、ntforms.tdb
、ntdrivers.tdb
)可能包含拉丁-8 字符串或其他 8 位编码。当升级到 Samba 3.6 时,这些文件必须迁移到新的基于 registry 的打印管理。迁移必须手动完成,因为文件中没有有关 charset 编码的信息。为此,请为转换指定正确的代码页面。使用 icony -l 命令列出可用的代码页面。最常使用的是与拉丁-1 对应的 Windows 编码,名为 CP1252。 - 扩展 net print dump 和 net print migrate 命令,以定义 TDB 文件的新编码。因此,可以查看具有 net print dump encoding=CP1252/path/to/ntprinters.tdb 命令的文件,或使用 net print migrate encoding=CP1252 /path/to/ntprinters.tdb 命令迁移它们。迁移打印机时,红帽建议按照以下顺序执行此操作:请注意,必须在 Samba 进程关闭时迁移,并在迁移后需要重命名、移动或删除
ntforms.tdb
ntdrivers.tdb
ntprinting.tdb
/var/lib/samba/
目录中的文件。(BZ#1003921)
程序错误修复
- BZ#1021706
- 某些变量中的
%G
替换字符没有解析为名称。因此,%G
被 GID 号替代,而不是由组名称替换。在这个版本中,提供了一个补丁来修复这个程序错误,%G
现在可以成功替换为一个名称。 - BZ#1035332
- 当用户以客户机 身份登录时,
guest
布尔值标志将附加到用户的令牌中。当使用force user
选项连接到共享时,此标记覆盖了使用force 用户
集为特定共享创建令牌,确保用户只能具有 guest 访问权限。因此,文件以nobody
用户身份创建。在这个版本中,只有在映射的用户名与 guest用户相同时,
用户共享下设置。因此,文件会以指定的用户身份创建。guest
标志才会在强制 - BZ#1053886
- 用于验证用户的功能没有提供有关用户的所有信息。当这个功能与另一个调用一起使用以通过安全频道验证用户时,主目录的路径字段为空。现在,会调用正确的
DCPRC()
功能,所有必填字段都如预期填写。 - BZ#1087472
libsmbclient
库工具集没有初始化默认配置参数。因此,当$HOME
参数没有正确设置时,使用libsmbclient
的应用程序会意外终止。在这个版本中,默认配置值会被正确加载,应用程序不会在上述场景中崩溃。- BZ#1096522
- 由于缺少对部分数据和某些缓冲区小大小的支持,客户端无法解决服务器返回的缓冲区大小。现在,增加了缺少的支持,Samba 现在可以正常工作。
- BZ#1107777
- 使用 SMB2 和 SMB3 协议时,
filenama_convert()
功能没有在完整路径中调用,这会导致路径的最后组件没有被规范化。因此,大目录列表无法使用 SMB2 和 SMB3 正常工作。这个程序错误已被解决,可以正确列出大型目录。
功能增强
smb
服务将自动重启。
8.209. samba4
8.209.1. RHBA-2014:1605 - samba4 程序错误修复更新
8.210. sapconf
8.210.1. RHBA-2014:1424 - sapconf 程序错误修复更新
程序错误修复
- BZ#1024356
- 在某些情况下,sapconf 脚本以不正确的格式创建 /etc/hosts 文件,因此文件不会返回完全限定域名(FQDN)。因此,SAP 安装会失败。在这个版本中,该脚本已被编辑,以在创建不正确的 /etc/hosts 文件时处理情况。另外,当 FQDN 没有被正确返回时,脚本会以错误代码 4 退出。
- BZ#1025187
- 在以前的版本中,没有 sapconf 脚本的手册页。在这个版本中,sapconf 软件包中添加了缺少的手册页。
- BZ#1040617
- 由于底层源代码中的一个错误,sapconf 脚本无法验证虚拟客户机是否为 VMware 客户机。因此,尝试在这样的客户端中使用 sapconf 会失败。在这个版本中,sapconf 可以如预期识别 VMware guest。
- BZ#1051017
- 在 Red Hat Enterprise Linux 中读取限制文件的顺序如下: First is read the /etc/security/limits.conf 文件,然后根据 C localization 功能限制位于 /etc/security/limits.d/ 目录中的文件。当在两个或多个文件中指定了条目时,最后读取的条目将生效。在以前的版本中,sapconf 脚本将条目写入 /etc/security/limits.conf,这可能会导致 sapconf 条目被 /etc/security/limits.d/ 中的文件中的相同条目覆盖。在这个版本中,在 /etc/security/limits.d/ 中添加了一个单独的 sapconf 限制文件来预计这个程序错误。
- BZ#1083651
- 当 sapconf 脚本更新 /etc/hosts 文件时,该文件的权限会被错误地修改。这个版本应用了补丁来修复这个程序错误,sapconf 不再覆盖文件的权限。
8.211. scrub
8.211.1. RHBA-2014:1493 - 清理程序错误修复和功能增强更新
错误修复
- BZ#903890
- 当执行"scrub -X"命令时,它会在给定的磁盘分区上重新写入空闲空间,但无法删除在此过程中创建的文件。因此,对应的文件系统在此进程后仍保留满。在这个版本中,新创建的文件会被删除,文件系统会重新获得可用空间。
功能增强
- BZ#907173
- 在这个版本中,新的 "-E" 选项被添加到清理中,这能够只清理稀疏文件使用的块。这个选项在与大型稀疏文件结合使用时特别有用,因为它在稀疏文件中跳过漏洞。然而,请谨慎使用这个选项,因为结果可能不符合所述的标准,以及有关磁盘数据分配的实际信息可能会泄漏,因为只有分配的部分会被清理。
8.212. scsi-target-utils
程序错误修复
- BZ#848585
- 在以前的版本中,tgtadm SCSI 目标管理工具无法正确处理后备存储错误。因此,在某些情况下,使用无效的 backing-store 参数调用 tgtadm 会导致 tgtd 服务变得无响应。在这个版本中,tgtadm 中的 bug 已被修复,tgtd 现在会从无效的请求中恢复。
- BZ#854123
- 在以前的版本中,tgtadm 无法处理将设备设置为直通模式。因此,当将 device-type 选项设置为 "passthrough" 时调用 tgtadm 会导致服务器端的 tgtd 意外终止并出现分段错误。一个补丁已被用来修复这个程序错误,tgtadm 不再会在上述场景中崩溃。
- BZ#865960
- 在此次更新之前,运行 "tgtadm --mode target --op show" 命令不会在系统上存在多个目标时返回完整的目标数。因此,tgtadm 可以显示不正确的和不一致的结果,因为显示的目标数量随重复尝试而不同。应用了补丁来修复这个错误。现在,运行 "tgtadm --mode target --op show" 现在会在有大量目标的系统中正确显示所有目标。
- BZ#1094084
- 在以前的版本中,scsi-target-utils 不支持 AIX 操作系统使用的"WRITE 和 VERIFY (10) " SCSI 命令。因此,当用户试图在系统中添加 iSCSI 目标时,AIX 无法执行 mkvg 命令。在这个版本中,增加了对 "WRITE 和 VERIFY (10) " 的支持,scsi-target-utils 现在会如预期向 AIX 提供 iSCSI 目标。
- BZ#1123438
- 在以前的版本中,tgtd 可能会因为源代码中的 wagon () 函数不正确的使用而遇到缓冲区溢出。因此,当尝试响应大量连接的 tgtadm 查询时,tgtd 会意外终止。源代码已更新,以避免缓冲区溢出,并使用 tgtadm 显示大量连接不再会导致 tgtd 崩溃。
8.213. selinux-policy
程序错误修复
- BZ#1062384
- SELinux 会阻止 qemu-guest-agent 进程执行 settimeofday ()和 hwclock ()函数。因此,qemu-guest-agent 无法设置系统时间。在 SELinux 策略中添加了一个新规则,qemu-guest-agent 现在可以按预期设置时间。
- BZ#1082640
- 在以前的版本中,SELinux 不允许 dhcpd 守护进程更改系统上的文件所有权。因此,dhcpd 创建的文件的所有权从所需的 dhcpd:dhcpd 改为 root:root。更改了适当的 SELinux 策略,dhcpd 现在可以更改系统上的文件所有权。
- BZ#1097387
- 由于缺少 miscfiles_read_public_files 布尔值,用户无法允许 sshd 守护进程读取用于文件传输服务的公共文件。这个布尔值已添加到 SELinux 策略中,因此允许用户将 sshd 设置为读取公共文件。
- BZ#1111538
- 由于缺少 SELinux 策略规则,syslog 守护进程无法读取使用 syslog_conf_t SELinux 上下文标记的 syslogd 配置文件。在这个版本中,SELinux 策略已被相应地修改,syslog 现在可以按预期读取 syslog_conf_t 文件。
- BZ#1111581
- 由于 SELinux 策略规则不足,thttpd 守护进程在 httpd_t 域中运行。因此,守护进程无法更改其日志文件的文件属性。SELinux 策略已被修改来修复这个错误,SELinux 不再阻止 thttpd 更改其日志文件的属性。
- BZ#1122866
- 在以前的版本中,SELinux 不允许 sssd 守护进程写入 krb5 配置文件,因此守护进程无法在 krb5 中进行任何更改。SELinux 策略已进行了这个更新更改,sssd 现在可以写入 krb5。
- BZ#1127602
- 由于缺少 SELinux 策略规则,Samba 守护进程无法列出 /tmp/ 目录。SELinux 策略已相应地修改,SELinux 不再阻止 Samba 守护进程列出 /tmp/ 目录。
功能增强
- BZ#1069843
- 在这个版本中,添加了新的 SELinux 策略规则,现在以下服务会在其自己的域中运行,而不是在 initrc_t 域中运行:thttpd
8.214. servicelog
8.215. sg3_utils
8.215.1. RHBA-2014:1601 - sg3_utils 程序错误修复更新
错误修复
- BZ#857200
- 当在目标端调整逻辑单元号(LUN)时,rescan-scsi-bus.sh 脚本将无法调整主机端的 SCSI 设备大小。这个版本应用了补丁来修复这个程序错误,当在目标端调整 LUN 的大小时,会按预期将更改传播到主机端。
8.216. sgml-common
错误修复
- BZ#613637
- 在此次更新之前,xml-common 子软件包中缺少许可 COPYING 文件和文档。在这个版本中,将缺少的基本文档和 COPYING 文件添加到 xml-common 中。
8.217. shadow-utils
程序错误修复
- BZ#787742
- 在以前的版本中,pwconv 和 grpconv 工具会错误地解析相应的 shadow 和 gshadow 文件并出错。因此,在编写更正的 shadow 和 gshadow 文件时,只会更正两个连续错误行的第一个错误。有了这个更新,pwconv 和 grpconv 解析带有错误的文件,新写入文件中都会更正所有行。
- BZ#890222
- 由于 /etc/group 文件中的代码解析中的一个错误,在合并组条目时 useradd 命令可能会意外终止并出现 segmentation 错误。解析代码已被修复,useradd 现在可以正确地合并组条目。
- BZ#955769
- 在以前的版本中,useradd 命令在创建并填充用户的主目录后将 SELinux 用户分配给要创建的新用户。因此,主目录文件的 SELinux 上下文不正确。在这个版本中,在填充主目录之前,SELinux 用户会被分配给新创建的用户,并且新创建的用户的主目录文件上的 SELinux 上下文现在是正确的。
- BZ#956742
- 由于在处理无效日期规格中的无效日期规格不正确,在与无效的日期规格一起使用时不会失败。在这个版本中,ACT 的代码可以正确地检测到无效的日期规格,如果指定了无效的日期,则会失败。
- BZ#957782
- 在此更新之前,Poxon 命令错误地处理日期,格式为 "[month] DD YYYY" 为 "[month] DD hhmm"。因此,如果 kustomization 与这样的日期规格一起使用,则日期被设置为意外值。更新的 SecureBoot 代码可以正确地处理上述格式的日期。因此,如果与这个日期规格一起使用,则日期将设置为预期值。
- BZ#993049
- 在以前的版本中,newgrp 命令总是会在系统的所有组中尝试查找具有匹配组 ID (GID)的组。如果组存储在 LDAP 服务器上,则会导致在每次调用 newgrp 时从 LDAP 服务器拉取大型数据。底层源代码已被修复,如果用户是命令行中指定的组的成员,newgrp 不再尝试在系统中所有组中查找匹配的组。因此,没有从 LDAP 服务器拉取额外的数据。
- BZ#1016516
- usermod 代码在 /etc/shadow 文件中错误地处理新条目。因此,如果 /etc/shadow 文件中的条目丢失,"usermod -p"命令将无法设置新密码。如果 /etc/shadow 中缺少了新条目,并且"usermod -p"命令可以正确设置新密码,即使 /etc/shadow 中的用户条目丢失了它,更新的 usermod 代码也会正确地在 /etc/shadow 中创建新条目。
8.219. slapi-nis
8.219.1. RHBA-2014:1583 - slapi-nis 程序错误修复更新
程序错误修复
8.220. scs
8.220.1. RHBA-2014:1528 - sos 程序错误修复和功能增强更新
程序错误修复
- BZ#1001600
- 根据站点本地配置,系统上可能会存在大量系统活动报告器(SAR)数据。sos 工具的早期版本试图收集所有数据,可能会导致大量报告大小和速度较慢的数据收集。在这个版本中,对 SAR 模块捕获的二进制和文本数据的大小限制会限制在默认情况下,报告中的 SAR 数据现在限制为 20 MB。此外,模块中添加了新的"all_sar"选项,以请求旧行为。
- BZ#1041770
- sos 实用程序使用 Red Hat Network Client Tools 硬件模块来获取系统中存在的硬件的信息。但是,由于 sos 调用模块的方式,Red Hat Network 组件的变化会在运行 sosreport 命令时造成错误。sos hardware 插件现在直接导入 Red Hat Network 模块,并将生成的输出存储在报告中,从而修复这个程序错误。现在,在报告处理过程中不再显示异常或其他错误。
- BZ#1085042
- sos 工具的早期版本无法正确处理因为空间不足而导致的文件系统异常。因此,运行带有足够空间的 sosreport 工具可能会导致数千个日志记录错误并创建不可用的报告 tarball。在这个版本中,sosreport 中的所有 I/O 路径可以正确地处理空间和其他严重文件系统例外。现在,尝试运行带有足够空间的 sos 会导致立即描述性错误,工具不再尝试创建报告存档。
- BZ#1101311
- sos 工具的早期版本没有省略 grub.conf 引导装载程序配置文件中的密码或密码哈希。因此,这些文件中包含的密码或密码哈希可能会披露 sos report 归档的接收者。sos 工具现在从 grub.conf 中删除密码和密码哈希,生成的报告存档不再包含密码资料。
功能增强
- BZ#961041
- 在这个版本中,sos 软件包包括对 Samba Clustered Trivial 数据库(CTDB)的支持,由 Samba 使用的 TDB 集群实现。用户现在可以需要 CTDB 状态和配置的信息来诊断集群的 Samba 部署中的问题。
- BZ#1005703
- 根据系统配置和错误状态,一些命令可能会无限期地阻止,从而导致 sos 实用程序变得无响应。在这个版本中,sosreport 工具在运行所有外部命令时应用超时,以便对过量周期阻止的命令现在以超时的形式终止,不再会导致主 sos 进程挂起。
- BZ#1039755
- 之前版本的 sos 实用程序没有捕获 OpenShift Node 和 Broker 安装的诊断数据。在这个版本中,在适用的系统上收集配置和状态信息。
- BZ#1052344
- 在以前的版本中,sosreport 命令不会收集与失败升级相关的信息。在这个版本中,尝试升级会在主机文件系统中保留诊断数据,以帮助确定升级问题的原因。
8.221. spice-gtk
程序错误修复
- BZ#871034
- 在以前的版本中,对于 SSL 连接,如果证书主题与主机名匹配,即使提供了不匹配用户指定的主机证书主题,也会被视为成功。因此,即使证书主题不匹配,remote-viewer 客户端也可以连接到远程主机。在这个版本中,证书主题检查在主机名检查上具有优先级,如果用户指定的证书主题不匹配,连接会失败。
- BZ#1017860
- 在此次更新之前,协议版本回退无法正常工作。因此,用户无法在 Red Hat Enterprise Linux 5 服务器上连接到 spice 客户机。协议回退已被修复,用户可以再次连接到 Red Hat Enterprise Linux 5 服务器上的 spice 客户机。
- BZ#1019797
- 在以前的版本中,virt-viewer 工具无法处理大型复制和粘贴操作;如果复制大量文本,则 mingw-virt-viewer 工具会显示无法为大量数据分配内存。这个程序错误已被解决,现在可以复制和粘贴最多 100 MB 的数据。
- BZ#1022565
- 当迁移通过 mime 连接文件和安全套接字层(SSL)连接的客户端的虚拟机时,迁移会回一个非接口操作,因为认证机构(CA)没有从内存中正确复制。在这个版本中,CA 被正确地复制到目标会话中,现在可以实现无缝迁移。
- BZ#1028637
- 当使用 i686 客户端连接到客户机时重复迁移客户机时,客户端可能会意外终止并出现分段错误。底层源代码已被修补,客户端在迁移过程中不再崩溃。
- BZ#1029765
- 在以前的版本中,virt-viewer 工具在次要显示中使用无效的屏幕截图。辅助显示的截图内存区域已被修复,virt-viewer 现在会创建正确的屏幕截图。
- BZ#1054757
- virt-viewer 和 remote-viewer 工具始终扩展,但还允许用户禁用显示大小,更改客户机上的分辨率以匹配显示窗口大小。因此,用户可能会因为预期的不同行为而混淆。因此,用户禁用调整大小的功能已被删除。
- BZ#1108642
- 在以前的版本中,在客户端或客户机上运行的各种剪贴板管理器偶尔会丢失同步,这会导致剪贴板数据丢失和 SPICE 控制台释放。现在,spice-gtk 工具已被修补,因此剪贴板同步不再冻结 SPICE 控制台。
功能增强
- BZ#1035728
- spice-gtk 实用程序公告 TLS 1.0 作为其最大支持的 TLS 版本。有了这个更新,spice-gtk 支持 openssl 工具提供的更最新的 TLS 版本。
8.222. spice-server
程序错误修复
- BZ#994175
- 在以前的版本中,SPICE 服务器假设 SPICE 客户端已连接,直到它断开连接。但是,当客户端变得无响应时,或者未明确断开连接,服务器会保持尝试与之通信。因此,队列(如驱动程序命令 ring、填充)和客户机显示驱动程序挂起。有了这个更新,如果客户端没有响应,SPICE 服务器会监控,如果客户端没有响应,则 SPICE 服务器会监控。
- BZ#1004443
- 在以前的版本中,来自客户端的待处理数据会被不恰当清理。因此,当虚拟机迁移时,QEMU 可能会意外终止。在这个版本中,确保正确清理待处理的客户端数据,QEMU 不再发生。
- BZ#1035695
- 在此次更新之前,SPICE 服务器使用专用传输层安全(TLS)版本 1.0 来加密连接,无论客户端公告的版本是什么。因此,SPICE 客户端无法使用较新版本的 TLS。要修复此程序错误,SPICE 服务器代码已被修改为允许 TLS 1.0 及更高版本,客户端现在可以使用 TLS 版本 1.0 或更新版本进行连接。
- BZ#1072700
- 由于 32 位计时器值上的整数溢出,在长时间运行的 VM 上的 SPICE 服务器中的无限循环会导致 SPICE 会话变得无响应。现在,会使用 64 位计时器值,SPICE 会话不会再崩溃。
- BZ#1086820
- 由于视频流代码中无效的断言,在触发 assert 时 SPICE 管理程序可能会意外终止。日志文件中返回以下出错信息:QEMU 有时会在 spice-server 中崩溃,并带有 "rate_control->num_recent_enc_frames" assertion无效的断言已被修复,虚拟机监控程序不再崩溃。
8.223. spice-vdagent
错误修复
- BZ#1066094
- 当在 Virtual Desktop Infrastructure 中的 Red Hat Enterprise Linux 6 虚拟机中使用 Eclipse 时,数字会显示隐藏选项卡的数量或在内呈现错误。这个程序错误已被解决,现在文本正常呈现,将物理屏幕大小保留为恒定 96 DPI。
8.224. spice-xpi
8.224.1. RHBA-2014:1560 - spice-xpi 程序错误修复更新
错误修复
- BZ#1073461
- 由于 Red Hat Enterprise Virtualization Manager web 管理门户中的一个错误,可以打开第二个 SPICE 控制台,这会导致 SPICE 插件意外终止。在这个版本中,底层源代码已被修改来解决这个问题,控制台不会在上述场景中崩溃。
8.225. squid
8.225.1. RHBA-2014:1446 - squid 程序错误修复更新
程序错误修复
- BZ#876980
- 在此次更新之前,/etc/init.d/squid 初始化脚本没有描述 condrestart 选项,因此它不出现在 Usage 消息中。这个 bug 已被修复,condrestart 现在会在 Usage 信息中正确显示。
- BZ#998809
- 在某些情况下,squid 工具的 comm_write () 函数试图写入被关闭的文件描述符。因此,squid 工具被中止。在这个版本中,引入了处理写入尝试的补丁。因此,squid 不再在上述场景中中止。
- BZ#1011952
- 由于默认 /etc/httpd/conf.d/squid.conf 配置文件中的一个错误,squid 工具不允许访问 http://localhost/Squid/cgi-bin/cachemgr.cgi 的 CacheManager 工具。这个 bug 已被修复,squid 现在可以在不复杂的情况下访问 CacheManager。
- BZ#1034616
- 在某些情况下,squid 实用程序会泄漏域名系统(DNS)查询。因此,squid 通常达到最大锁定限制为 65,535 并意外终止。在这个版本中,进行了几个更改以防止泄漏的查询。另外,锁定限制也增加到整数数据类型的最大值。
- BZ#1047839
- 在以前的版本中,在收到不正确的域名系统(DNS)响应后,squid 工具意外终止,且不会再次启动。底层源代码已被修改,因此 squid 现在在不复杂的情况下处理不正确的 DNS 响应。
- BZ#1058207
- 在某些情况下,squid 工具的子进程意外终止并生成核心文件。这个 bug 已被修复,squid 进程不再正常退出。
- BZ#1066368, BZ#1089614
- 在以前的版本中,squid 工具的 AuthBasicUserRequest 方法使用自己的数据覆盖了默认的 user ()方法。因此,使用基本身份验证时会发生内存泄漏,这会导致 squid 高内存消耗。在这个版本中,上述覆盖已被删除,内存泄漏不再发生。
8.226. sssd
8.226.1. RHBA-2014:1375 - sssd 程序错误修复和功能增强更新
系统安全服务守护进程(SSSD)
提供一组守护进程来管理对远程目录和身份验证机制的访问。它为系统提供名称服务切换(NSS)和可插拔验证模块(PAM)接口,以及用于连接到多个不同帐户源的可插拔后端系统。
程序错误修复
- BZ#1065534
- 在以前的版本中,SSSD 可插拔验证模块(PAM)接受在名称之前或之后包含空格的用户名。因此,在某些情况下,用户在 Gnome 显示管理器(GDM)登录屏幕中输入不正确的名称。在这个版本中,SSSD PAM 会忽略用户名前后的空格字符,并输入它们不再被 GDM 登录屏幕登录。
- BZ#1059423
- 在此次更新之前,尝试保存不符合配置的搜索基础的用户组成员会导致组被保存不完整的成员资格。因此,使用 "id" 命令为用户组成员资格返回不一致的结果。在这个版本中,即使用户包含配置搜索基础之外的成员,也可以正确保存用户组。因此,"id"现在返回一致的结果。
- BZ#1031807
- 如果启用了 "ad_matching_rule" 选项,SSSD 会错误地访问随机数据。因此,如果用户将 SSSD 配置为使用 "ad_matching_rule" 选项时没有可用的组成员,SSSD 会访问随机数据,并意外终止分段错误。在这个版本中,SSSD 无法访问随机数据,上面描述的场景不再会导致 SSSD 崩溃。
- BZ#1025813
- 在以前的版本中,当使用 "id_provider=proxy" 和 "auth_provider=ldap" 选项配置 SSSD 时,轻量级目录访问协议(LDAP)身份验证代码在搜索用户时使用硬编码过滤器。因此,如果 LDAP 服务器使用自定义 LDAP 模式作为用户名,则使用 "id_provider=proxy" 和 "auth_provider=ldap" 的 SSSD 身份验证会失败。在这个版本中,SSSD 可以针对自定义 LDAP 用户名模式调整,在这种情况下,使用上述选项的 SSSD 身份验证会成功。
- BZ#1028422
- 由于 autofs 响应器没有正确忽略 "default_domain_suffix" 选项,因此当 SSSD 中启用了 "default_domain_suffix" 时无法检索 autofs 映射。在这个版本中,在 autofs 响应程序中正确忽略 "default_domain_suffix",在启用此选项时可以检索 autofs 映射。
- BZ#1030135
- 在此次更新之前,当配置了两个不同的提供程序(如 id_provider=ipa 和 sudo_provider=ldap)时,SSSD 会错误地启动两个并行枚举任务。这会导致枚举任务中的冲突,并生成不完整枚举的数据。在这个版本中,SSSD 仅在 descibed 场景中为 id_provider 启动 enumeration 任务。现在,即使有两个不同供应商类型的配置,枚举数据也会完成。
- BZ#1038098
- 由于释放使用的内存中的一个错误,因此运行定期请求 netgroup 的持久性进程会导致内存泄漏。在这个版本中,内存被正确释放,在上述场景中的内存泄漏不再发生。
- BZ#1084532
- 在以前的版本中,SSSD 无法处理超过 255 个 sudo 规则的条目。因此,在某些情况下 sssd_sudo 进程意外终止并出现分段错误,这会导致某些用户无法使用 sudo。这个版本更改了 sssd_sudo 处理发送 sudo 规则的方式。现在,SSSD 可以处理超过 255 个规则的 LDAP 条目,sssd_sudo 不再崩溃。
- BZ#1135855
- 在此次更新之前,当使用 getservent ()调用来检索所有服务的信息时,SSSD 会将服务计数写入输出缓冲区的错误部分。因此,在某些情况下,"getent"命令会返回不准确的信息或变得无响应。有了这个更新,sssd_nss 代码已被修复,可正确排序 ouput 缓冲区,"getent"现在可以正常工作。
- BZ#1085412
- 由于 SSSD 使用的异步处理,在有些情况下,获取句柄并使用它之间释放了 LDAP 连接句柄。因此,当 Storage Area Network (SAN)遇到高延迟时,SSSD 会频繁意外终止。在这个版本中,为 LDAP 处理添加了额外的 NULL 检查,SSSD 现在会在 SAN 上高延迟发生时中止当前的请求而不是崩溃。
- BZ#1092766
- 在以前的版本中,当使用 id_provider=ad 供应商时,用户组成员资格的处理在某些情况下会预先为具有 POSIX 属性且禁用 ID 映射的用户被终止。因此,用户的主要组有时无法正确解析,简单访问提供程序有时会失败。在这个版本中,解析用户组不再持续结束,简单访问供应商现在始终获得主要用户组。
- BZ#990143
- 在此次更新之前,当启用了 "ipa_dyndns_iface" 选项时,SSSD 的动态 DNS 更新功能不会过滤出多播和子网广播地址。因此,在 Red Hat Identity Management DNS 中会显示对 DNS 无效的地址。在这个版本中,当执行带有 "ipa_dyndns_iface" 的 DNS 更新时,多播和子网广播地址会被过滤掉,且只使用适当的地址。
- BZ#1082633
- 在以前的版本中,SSSD 无法处理 "ldap_group_nesting_level" 选项的零值,因此嵌套组不会被正确跳过。因此,当识别用户所属的组时,SSSD 会重新调整结果。在这个版本中,当 "ldap_group_nesting_level" 设置为 0 时,SSSD 现在可以正确地跳过嵌套组的处理,并返回正确的结果。此外,sssd-ldap (5)手册页已使用"ldap_group_nesting_level"行为的详细描述进行了更新。
- BZ#1020945
- 当使用 "getent services" 命令生成服务时,SSSD 以前使用不正确的指针算术,这会导致其内部缓冲区溢出。因此,当用户执行"getent services"命令时,sssd_nss 进程在某些情况下意外终止。在这个版本中,指针 arithmetics 和 "getent services" 现在可以正常工作。
- BZ#1071823
- 在此次更新之前,当其目标没有配置时,HostID 后端被错误地使用。因此,在通过 SSH 连接时,SSSD 会意外终止并出现分段错误。在这个版本中,添加了一个检查 HostID 后端是否已正确配置,不再会导致 SSSD 崩溃。
- BZ#1064581
- sss_cache 工具之前对过期用户组成员资格没有正确的支持,且在过期用户时没有重置 "syssdb_initgr_expire" 属性。在这个版本中,为 sss_cache 添加了过期用户组成员资格的正确支持,现在当用户过期时会重置 "syssdb_initgr_expire"。
- BZ#1104145
- 在以前的版本中,SSSD 公钥验证器过于严格,且无法处理从 LDAP 获取的公钥字符串中的尾随换行符(\n)。因此,包含此字符的 SSH 密钥被标记为无效,用户无法使用它来连接到其他机器。在这个版本中,SSSD 公钥验证器会忽略 SSH 公钥中的换行符,SSSD 现在可以使用包含此字符的公钥。
- BZ#1074014
- 由于 Bash 功能守护进程的冗余"成功"或"fail"调用,重新启动 SSSD 服务期间会输出一个额外的"[OK]"。在这个版本中,删除了冗余调用,重启 SSSD 时只会正确打印 "[OK]"。
- BZ#1118541
- 由于 SSSD 客户端库中快速内存缓存初始化中的一个竞争条件,在某些情况下,多线程应用程序会收到 SIGSEGV 或 SIGFPE 信号,因此意外终止。在这个版本中,从初始化中删除竞争条件,这会阻止它导致多线程应用程序崩溃。
- BZ#1079783
- 在以前的版本中,SSSD 无法处理企业主体名称(EPN)。因此,某些用户无法使用 Active Directory (AD)供应商登录。这个问题已被 rebase 解决,SSSD 现在可以正确处理 EPN。现在,用户可以按预期使用 AD 供应商登录。
- BZ#1007381
- 在此次更新之前,代理供应商预期每个用户具有至少一个补充组,因为代理提供程序的组处理中存在错误。因此,请求只属于其私有组的用户会导致错误。在这个版本中,代理供应商已被修复,可以正确处理上述情况。因此,请求没有补充组的用户现在可以正常工作。
- BZ#995737
- 在以前的版本中,当 sudo 规则的 "entryUSN" 属性为空时,SSSD 会失败。因此,处理 sudo 规则会失败,用户在调用 sudo 时拒绝访问。在这个版本中,SSSD 可以处理 sudo 规则的空 "entryUSN" 属性,不再导致拒绝访问 sudo 操作。
- BZ#1127757
- 在以前的版本中,SSSD 错误地对 netgroups 使用 "default_domain_suffix" 选项,而不仅仅是用户和组。因此,当启用了 "default_domain_suffix" 时,依赖 netgroup 查找的 sudo 规则无法正常工作。要解决这个问题,SSSD 已被更新,为 netgroup 查找忽略 "default_domain_suffix"。因此,即使启用了 "default_domain_suffix",sudo 规则也可以正常工作。
- BZ#1122873
- 在此次更新之前,当 Service (SRV)记录查找状态失败时,端口状态没有标记为无法正常工作,SSSD 不会尝试再次解析 SRV 记录。因此,故障转移机制不会通过所有可用服务器进行循环,因此 SSSD 保持离线。现在,应用了补丁来解决这个问题,端口状态已被正确标记为 工作。因此,故障转移会继续进行下一配置的服务器。
- BZ#1122158
- 在以前的版本中,当调用 initgroups ()功能时,SSSD 在某些情况下为组解析安全标识符(SID),但不会存储成员资格状态。因此,组成员资格无法正确解决,因为只获取主组。应用了补丁来解决这个问题,SSSD 现在会在 SID 解决后更新用户成员资格。因此,在上述情形中,组成员资格会被正确解决。
功能增强
- BZ#1111317, BZ#1127278
- SSSD 增加了 "override_space" 选项,它允许用户使用指定的字符字符串替换用户名和组名称中的空格。这样可以更轻松地使用某些 shell 脚本或其他应用程序,它们无法正确处理包含空格的用户名和组名称。有关"override_space"的详情,请参考 sssd.conf (5)手册页。
- BZ#1042848
- SSSD 现在支持获取用户和用户组,并以一个用户身份登录,不仅用户当前连接到的 AD 域,也不支持从当前 AD 域"可信"的 AD 域中登录。
- BZ#1111315
- SSSD 现在可以使用 SSSD 配置文件中指定的值替换从 LDAP 服务器获取的主目录中的 "%H" 字符串。这允许用户将 Red Hat Enterprise Linux 迁移到 SSSD,同时保留其现有 environemnt 的配置。
- BZ#1000061
- 在 SSSD 中添加了一个禁用 Kerberos locator 插件的新选项。有了这个选项,用户现在可以选择不告知 libkrb5 库 SSSD 使用的 Kerberos 服务器,并且仅使用 krb5.conf 文件中指定的服务器。
- BZ#1042922
- 在这个版本中,当 "sudoRunAsUser" 属性和 "ldap_sudorule_runasuser" 映射没有在 sssd.conf 文件中定义时,SSSD 会检查并触发已弃用的 "sudoRunAs" 属性。这样可确保更好地与旧的 SSSD 设置兼容。
- BZ#1044729
- SSSD 现在可以使用 AD 的 DNS Sites 功能查找最接近的 Active Directory (AD)域控制器(DC)。这允许 SSSD 更加可靠和高效地连接到 DNS 站点。
8.227. strace
8.227.1. RHBA-2014:1415 - strace 程序错误修复更新
程序错误修复
8.228. subscription-manager
程序错误修复
- BZ#1096734
- 当 python-rhsm 以 JSON 格式向授权服务器发出请求,但以不同格式(如 HTML)获得响应,则向用户显示以下属性错误:
AttributeError: 'exceptions.ValueError' object has no attribute 'msg' error.
当应用这个 python-rhsm 修复时,向用户出现的错误消息更为准确,并提供了有关此问题的信息:Network error. Please check the connection details, or see /var/log/rhsm/rhsm.log for more information.
- BZ#1128658
- 在以前的版本中,即使系统没有注册,Subscription Manager 工具也会调用 Red Hat Network。因此,一些 yum 命令意外联系了 Red Hat Network。在这个版本中,只有当服务器注册用于管理订阅时,订阅管理器才会联系,且仅在需要时联系红帽网络。
- BZ#1118755
- 在这个版本中解决了 subscription-manager (8)手册页中的拼写错误。
- BZ#1062353
- 在以前的版本中,rhn-migrate-classic-to-rhsm 工具提供了一个混淆的提示,如果 "Red Hat account:" 提示需要用户号或登录,则并不明确。在这个版本中,系统会提示用户进行 Red Hat 登录。
- BZ#1070388
- 在此次更新之前,订阅管理器工具不接受包含客户门户网站中帐户的特殊字符的有效密码。因此,注册一些帐户会失败。在这个版本中,所有有效密码都被接受,对于带有特殊字符的密码,注册将不再阻止。
- BZ#1129480
- 在以前的版本中,当提供了激活码时,Subscription Manager 工具会检查环境 URL。因此,Subscription Manager 无法为环境提供身份验证。在这个版本中,当给出激活码时,不会检查环境,并正确执行激活码序列。
- BZ#1107810
- 在以前的版本中,"subscription-manager identity --force"命令的帮助信息包含模糊的信息。在这个版本中,帮助信息提供了有关如何使用 "--force" 选项的信息。
- BZ#1131213
- 在此次更新之前,会忽略 "--serveurl" 选项。因此,在没有在 rhsm.conf 文件中指定的情况下,无法从服务器迁移 URL。现在,应用了补丁来识别迁移过程中的 "--serveurl" 选项,用户现在可以在命令行中指定服务器。
- BZ#1112326
- 在这个版本中解决了 rhsm.log 文件中包含的路径中的拼写错误,这会导致从文件中加载事实时出现错误。
- BZ#1126724
- 在以前的版本中,帮助文本包含硬编码端口 443 提及的内容。因此,无论什么端口被配置为端口,都有助于错误地显示 443 端口。在这个版本中,删除了 443 值,现在会显示主机名和端口的适当值。
- BZ#1135621
- 在以前的版本中,Subscription Manager 工具的 GUI 会显示默认产品证书和安装的产品证书。因此,会显示重复的证书。底层源代码已被修改,以优先选择安装的证书,而不是默认的产品证书。因此,在 Subscription Manager 的 GUI 中不再显示重复。
- BZ#1122772
- 在以前的版本中,如果系统尚未注册,运行 "yum repolist" 命令不会在输出中通知用户。在这个版本中,如果系统在运行 "yum repolist" 后没有注册,用户会被正确通知。
功能增强
- BZ#1035115
- 在这个版本中,增加了对将安装的产品 ID 证书更新至以后的版本的支持。
- BZ#1132071
- 在这个版本中,rhsm-debug 工具会收集更多目录。添加了包含默认产品证书的新目录,rhsm-debug 现在收集 /etc/pki/product-default/ 目录,以帮助支持人员识别订阅问题。
- BZ#1031755
- 在这个版本中,subscription-manager 和 subscription-manager-plugin 遵循 http_proxy 和 https_proxy 环境变量。
- BZ#1115499
- 有了这个更新,用户可以在同一行中启用 X 和禁用,这减少了执行命令所需的步骤数,并使禁用和启用存储库变得更加方便。
8.229. sudo
8.229.1. RHBA-2014:1484 - sudo 程序错误修复更新
程序错误修复
- BZ#1006447
- 在以前的版本中,当使用系统安全服务守护进程(SSSD)获取可用的 sudo 条目时,sudo 工具无法正确处理 "sudo -ll" 命令。因此,运行 "sudo -ll" 返回不完整的结果,因为它没有列出 sudo 用户的规则名称。现在,一个补丁已被用来修复这个程序错误,在使用 SSSD 时"sudo -ll"会按预期列出规则名称。
- BZ#1006463
- 在此次更新之前,sudo 没有正确响应 root 用户的请求,在使用 SSSD 时列出指定用户的特权。因此,为特定用户运行 "sudo -l -U" 命令作为 root 返回不完整的结果,同时以用户运行相同的命令可以正常工作。源代码已被更新来解决这个问题,并以 root 用户身份执行 "sudo -l -U" 现在会返回正确的结果。
- BZ#1052940
- 在以前的版本中,当 /etc/sudoers 文件中的组规格包含与 Active Directory (AD)服务集成的系统上的转义字符时,sudo 无法正确处理这种情况。因此,为包含转义字符的组指定自定义密码提示无法正常工作,因为 sudo 会显示默认密码提示,而不是当该组的成员使用 sudo 时。现在,一个补丁已被应用于修复这个程序错误,并设置自定义密码提示现在可以正常工作,即使组规格包含转义字符。
- BZ#1065415
- 在以前的版本中,当当作为 sudo 调用为 "-sesh" 时,使用不正确的路径名称执行登录 shell,因为它将 shell 路径中的最后一个斜杠字符替换为短划线,而路径的其余部分保持不变。因此,登录 shell 被调用为 "/bin-[shell]" 而不是 "-[shell]",这可能会导致意外的系统行为。源代码已更新,以修复这个错误,sesh 不再导致这个问题。
- BZ#1070952
- 在以前的版本中,pam_faillock 模块没有在密码提示显示后确认尝试使用 Ctrl+C 快捷键终止 sudo 登录的尝试。因此,sudo 继续尝试登录并最终锁定用户。这个问题已被解决,即使尝试使用 Ctrl+C 终止的尝试仍然在尝试登录失败时,sudo 不再锁定用户。
- BZ#1078338
- 在以前的版本中,sudo 无法正确处理 NIS 域名值设置为 " (none) ",因为它被视为 " (none) " 文本字符串为一个有效的域名。因此,getdomainname ()函数返回 " (none) " 作为 NIS 域名,而不是识别没有设置域名。源代码已被更新来解决这个问题,sudo 现在可以正确地处理上述情况。
- BZ#1083064
- 在此次更新之前,当 sudo 规则包含 sudoUser 属性中的 +netgroup 变量时,系统在某些情况下会忽略 sudo 规则的其余部分。因此,执行 "sudo -l" 命令不会显示为指定用户配置的规则的完整列表。在这个版本中,这个问题已被解决,运行 "sudo -l" 现在会显示规则的完整列表,即使 sudo 规则包含 +netgroup 变量。
8.230. suitesparse
8.231. syslinux
8.231.1. RHBA-2014:1461 - syslinux 程序错误修复更新
程序错误修复
8.232. sysstat
程序错误修复
- BZ#921612
- 当 sysstat 实用程序将新统计数据附加到"sa"每日数据文件时,不会检查上一月中是否存在这些文件。在某些情况下,例如当一个月短时,sysstat 会将新统计数据附加到旧文件。在这个版本中,工具已被修改,以检查旧文件是否存在,并在执行时删除这些文件。因此,新统计数据不会附加到旧的"sa"文件中。
- BZ#1088998
- 在以前的版本中,"sa2"脚本不支持 xz 压缩。因此,旧的每日数据文件不会被删除。脚本中添加了对 xz 压缩的支持,数据现在会如预期删除。
- BZ#1124180
- 动态 ticks 内核功能目前会使 /proc/stat 文件变得不可靠,因为 CPU 将无法提供可靠的统计信息(如果它已停止)。尽管内核正在尝试提供最佳猜测,但统计信息并不总是准确。因此,一些 sysstat 命令可能会显示溢出的值。此更新会检测在 sysstat 中向后兼容的值,而 sysstat 命令不再显示溢出的值。
功能增强
8.233. system-config-firewall
程序错误修复
- BZ#634857
- 在以前的版本中,IPv6 的默认 iptables 规则不允许 DHCPv6 配置。因此,DHCPv6 响应会被阻止。在这个版本中,添加了启用 DHCPv6 的规则,以便使用 DHCPv6 的网络环境现在可以如预期支持。
- BZ#682391
- 最近,网络设备的一些任意名称已更改。因此,无法按名称查找这样的设备。这个更新提供了一个反映名称更改的补丁,现在可以轻松查找重命名的设备。
- BZ#711231
- 在某些情况下,尝试执行 system-config-firewall 工具会失败并显示以下错误:"shutil.py:50:copyfile:IOError: [Errno 13] Permission denied: '/etc/sysconfig/iptables-config'"底层源代码已被修改来修复这个程序错误,system-config-firewall 现在可以在上述场景中按预期工作。
- BZ#720831
- 在以前的版本中,无法扩展 "eth+" GUI 选项来显示单独的网络接口。因此,用户无法为特定接口指定规则。在这个版本中,特定条目被添加到接口列表中,从而允许为单个接口指定规则。
- BZ#756048
- 由于缺少依赖项,尝试在最小安装 Red Hat Enterprise Linux 6 的系统中运行 system-config-firewall-tui 工具会失败。缺少的依赖项已添加到 system-config-firewall-tui 依赖项列表中,实用程序现在可以正常工作。
- BZ#819809
- 在以前的版本中,system-config-firewall 工具的本地化没有被完成。这个版本完成了红帽支持的所有语言的翻译。
8.234. system-config-kdump
程序错误修复
- BZ#962724
- 在 IBM System z 构架中,system-config-kdump 工具仅在 kdump 服务已在运行时更新引导装载程序设置。但是,由于在禁用 kdump 时 system-config-kdump 没有运行,因此无法在 IBM System z 架构中启用 kdump。在这个版本中,引导装载程序配置会更新,无论 kdump 服务的状态,现在可以使用 system-config-kdump 接口在此构架中启用 kdump 功能。
- BZ#1017611
- 在此次更新之前,system-config-kdump 接口中原始设备的下拉列表会错误地包括已在使用的分区。因此,用户可以选择这些分区作为复制 kdump 文件的目标,这会使文件系统被破坏。在这个版本中,system-config-kdump 接口只列出原始设备列表中的未使用的分区,因此 kdump 不再可以在上述场景中造成文件系统损坏。
- BZ#987681
- 在以前的版本中,内核参数的 kdump 解析程序无法正确处理包含带引号字符串的条目。因此,在内核参数中使用的系统中通过 system-config-kdump 修改引导选项,可能会导致系统无法引导。在这个版本中,解析器可以正确地处理带引号字符串的带引号字符串和内核参数的解析程序。
- BZ#1030533
- 在以前的版本中,system-config-kdump 中的自动 kdump 内存阈值与内核中对应的值不匹配。因此,在某些系统中,在 system-config-kdump 接口中选择 "Automated kdump memory setting" 选项禁用了 kdump。system-config-kdump 中的内存阈值已更新,以反映内核中的内存阈值,在有足够内存的系统上,"Automated kdump 内存设置"不再禁用 kdump。但是,在没有足够的内存的系统中,这个选项会被禁用,必须手动配置 kdump 的内存。
- BZ#977981
- 在以前的版本中,system-config-kdump 使用 AMD64 和 Intel 64 架构中的 GRUB 引导装载程序配置不正确的路径。因此,无法在这些系统上配置 kdump 内存。在这个版本中,为已知引导装载程序配置路径列表添加了正确的路径,现在可以在上述情况下配置 kdump 内存。
8.235. system-config-keyboard
错误修复
- BZ#1136833
- 以前的 gtk2 版本在对话框内容和 GUI 窗口中的按钮之间使用了横向分隔符。system-config-keyboard 程序被配置为在没有额外检查的情况下从 GUI 中删除此分隔符。通过 gtk2 更新,这个分隔符将不再显示,而 system-config-keyboard 会从其 GUI 中删除"OK"按钮。在这个版本中,system-config-keyboard 已被修改,以检查要删除的项目是否实际上是横向分隔符。因此,无论当前安装的 gtk2 软件包版本是什么,都会保留"OK"按钮,且不会显示水平分隔符。
8.236. system-config-lvm
程序错误修复
- BZ#878253
- 在以前的版本中,system-config-lvm 工具不支持精简逻辑卷。因此,之前支持的卷无法管理。在这个版本中,精简逻辑卷仍不被支持,但不会阻止管理支持的卷。
- BZ#953071
- 在以前的版本中,当通过远程访问访问时,逻辑卷管理(LVM) GUI 并不总是正确显示。因此,用户无法启动 GUI。现在,提供了一个补丁来修复这个程序错误,LVM GUI 现在会如预期正确显示。
- BZ#1029755
- 在以前的版本中,当挂载 ext3 逻辑卷(LV)分区且用户试图在线扩展它时,system-config-lvm 工具会尝试卸载 ext3,且仅在扩展它后进行。现在,底层源代码已被修补,ext3 文件系统现在可以使用没有 system-config-lvm 的命令行工具在线扩展,然后再卸载它。
8.237. systemtap
程序错误修复
- BZ#1020437
- 在以前的版本中,内核添加了一些追踪点,它无法将它们公开给 systemtap 的搜索机制。这个版本扩展了 systemtap 的搜索机制,使其包含这些额外的追踪点,从而允许从 systemtap 脚本探测它们。
- BZ#1027459
- SystemTap 运行时可以在当前目录中尝试打开名为 "trace1" 的文件,而不是在 /sys/kernel/debug/systemtap/ 目录中创建的文件。因此,如果当前目录中存在此类文件,SystemTap 会意外终止。这个版本应用了补丁来修复这个程序错误,SystemTap 现在在上述场景中可以正常工作。
- BZ#1109084
- 在以前的版本中,不知道使用 SystemTap 初始化脚本服务配置的脚本的名称只能包含字母数字字符和下划线字符("_")。另外,名称中的第一个字符不能是一个数字。在这个版本中,在 systemtap (8)手册页中添加了此信息以防止混淆。
8.238. tboot
8.238.1. RHBA-2014:1495 - tboot 程序错误修复和安全更新
8.239. telnet
程序错误修复
8.240. tigervnc
8.240.1. RHBA-2014:1412 - tigervnc 程序错误修复更新
程序错误修复
- BZ#562669
- 当在 /etc/sysconfig/vncservers 文件中配置多个显示时,vncserver initscript 可以停止,阻止其他显示启动。源代码已被修复,vncserver 现在尝试启动每个配置的显示。
- BZ#840972
- 在 VNC 会话中鼠标光标的位置没有正确地与 VNC viewer 进行通信,从而导致光标的放置错误。显示远程光标的方法已更改,VNC 服务器上的光标移动现在可以准确反映在 VNC 客户端上。
- BZ#917717, BZ#991285
- 在以前的版本中,在 Xvnc 上安装 pixman、libX11 和 tigervnc-server 工具的版本不兼容。但是,由于符号解析失败或崩溃,Xvnc 无法启动。有了这个更新,tigervnc-server 对 pixman 和 libX11 有明确的版本要求,Xvnc 现在可以成功启动。
- BZ#949522
- vncserver initscript 假定 TigerVNC 用户首选 shell。因此,只能为使用 bash 的用户配置 started。底层源代码已被修复,现在为用户选择的任何 shell 配置了底层源代码。
- BZ#958988
- 在以前的版本中,通过 xinetd 守护进程创建的 Xvnc 是一个未被用户调用的随机连接,消耗了bundant CPU 内存。修复了在"nowait"模式下运行 Xvnc 的 Xvnc 的问题,用户或非用户 Xvnc 连接不再会造成高 CPU 用量。
- BZ#975778
- 在窗口边框上利用 Xvnc 直接访问 pixmap 屏幕,假设所有绘制操作都在窗口中操作。这可能会导致屏幕上的工件。一个修复已从上游社区向后移植,在视觉表示过程中不会再发生异常情况。
- BZ#1004093
- 在以前的版本中,VNC Xorg 扩展可能会初始化两次,从而导致退出出现忙碌循环。上游补丁已向后移植,仅允许初始化一次。
- BZ#1029923
- 当将 TigerVNC 与某些键盘布局一起使用时,AltGr 键无法正常工作,防止用户生成符号,如 "@" (at-sign)。来自更新版本的 tigervnc 的修复已被后向移植,AltGr 键组合现在可以正常工作。
- BZ#1031506
- 由于键盘映射的差异,有时需要使用假转移的 keypress 来发送通过 VNC 的关键字。当在带有 NumLock 活跃的数字键板上使用密钥时,这种方法无法正常工作。有了这个更新,修复已被向后移植,以避免在数字键中使用 fake shift keypresses,数字键pad 现在可以在使用 VNC 时正常工作。
- BZ#1044244
- 当使用 TigerVNC 作为可加载的 X 模块时,无法正确执行 GLX 扩展初始化。这可能会导致 X 服务器意外终止。现在,对 TigerVNC 版本的修复已被向后移植,GLX 扩展现在可以正确初始化。
- BZ#1116956
- 当最后一个 X 客户端断开连接时,X 服务器会重新生成并重新初始化所有输入设备和扩展。然而,VNC 扩展模块会使 VNC 扩展不活跃。在这个版本中,VNC 在服务器重新生成后被保留或重新加载,远程系统可以成功通过 VNC 连接到 X 服务器。
- BZ#1121041
- 当忽略要使用的编码时,vncviewer 工具无法正确验证服务器提供的编码值。这会导致写入正确范围之外的数组索引,从而导致崩溃。在这个版本中,编码值会被正确验证,防止此类崩溃。
8.241. tomcat6
8.241.1. RHBA-2014:1618 - tomcat6 程序错误修复更新
错误修复
- BZ#1140855
- 由于 tomcat6 软件包中的一个错误,尝试安装带有域名系统(DNS)的 ipa-server 软件包会失败,因为无法配置证书颁发机构(CA)实例。这个更新提供了一个补丁来修复这个程序错误,现在可以按预期安装 ipa-server。
8.242. tomcatjss
8.242.1. RHBA-2014:1550 - tomcatjss 程序错误修复更新
错误修复
- BZ#1084224
- 在以前的版本中,tomcatjss 软件包丢失了 strictCiphers 实现。因此,用户无法禁用弱密码并启用更强大的密码。在这个版本中,strictCiphers 被实施到 tomcatjss。
8.243. trace-cmd
8.243.1. RHBA-2014:1559 - trace-cmd 程序错误修复更新
错误修复
- BZ#879814
- 由于无效的指针,在运行延迟跟踪器失败后执行 "trace-cmd split" 或 "trace-cmd report" 命令失败。在这个版本中,添加了额外的检查,以确保在尝试使用它们前正确初始化指针。因此,在上述场景中不再会发生分段错误。
8.244. transfig
8.244.1. RHBA-2014:0483 - transfig 程序错误修复更新
错误修复
- BZ#858718
- 在此次更新之前,被错误地报告 transfig 工具生成的Script 文件,以符合Script 文档结构(DSC)。因此,从 Xfig 编辑器打印并打印 transfig 生成的Script 文件可能会导致空白页面。改进 DSC 一致性的补丁已应用于解决这个程序错误,在上述情形中会按预期打印 Xfig drawing。
8.245. trousers
安全修复
- CVE-2012-0698
- 在 tcsd (管理受信任的计算资源)的守护进程中发现了一个安全漏洞,处理传入的 TCP 数据包。远程攻击者可能会发送一个专门编写的 TCP 数据包,在由 tcsd 处理时,可能会导致守护进程崩溃。请注意,默认情况下 tcsd 仅接受 localhost 上的请求。
8.246. tsclient
8.246.1. RHBA-2014:0524 - tsclient 程序错误修复更新
程序错误修复
- BZ#798631
- 在以前的版本中,tsclient 用户界面不提供在"Windows Terminal Service"连接类型"高级选项"菜单中设置 32 位颜色深度的选项。因此,即使系统上支持 32 位颜色深度,也无法选择与 Windows 系统的连接,无法使用超过 16 位颜色深度建立到 Windows 系统的连接。在这个版本中,"Advanced Options"菜单中的错误已被修复,32 位颜色深度选项现在可以正常工作。
- BZ#848526
- 在此次更新之前,tsclient 与 Remote Desktop Protocol (RDP)没有完全兼容。因此,在某些情况下,tsclient 可能会在用户通过 RDP 连接到远程系统时意外终止。这个版本解决了 RDP 兼容性的问题,在将 RDP 用于远程连接时,tsclient 不再崩溃。
8.247. tuna
8.247.1. RHBA-2014:1404 - tuna 程序错误修复更新
程序错误修复
- BZ#1035795
- 在以前的版本中,如果没有指定调度程序优先级,"tuna -t $PID -p OTHER"命令会失败,并显示以下错误:ValueError: invalid literal for int (), base 10: 'OTHER'当不同的参数(如 RR 或 FIFO)传递给 -p 选项时,也会发生这个错误。这个程序错误已被解决,值错误不再发生。
- BZ#1059685
- 由于 tuna 软件包中的一个错误,"tuna -CP"命令无法列出进程,返回以下信息:NameError: 全局名称 'cgroups' is not defined这个程序错误已被解决,在执行 "tuna -CP" 时,名称错误将不再发生。
8.248. tzdata
8.248.1. RHEA-2014:1621 - tzdata 增强更新
功能增强
- BZ#1147318
- 这个版本包含在 tzdata-2014h 中实施的更改,它们与历史转换时间都相关。特别是,在 1 月 5 日 1920 上的 Asia/Novokuznetsk 中转换到标准时间实际发生在 Apr 30 1924 上,过渡到节省 Jamaica 的时间而不是 4 月 28 日,但已于 1 月 6 日。此外,很多非洲区域(Africa/Blantyre、Bujumbura、Gaborone、S Harare、Kigali、Lubumbashi 和 Lusaka)已与 Africa/Maputo 合并,因为它们的过渡时间在 post-1970 era 中有所不同。非洲/Maseru 和 Africa/Mbabane 现在已合并为非洲/Johannesburg 的原因。
8.249. udev
8.249.1. RHBA-2014:1524 - udev 程序错误修复和功能增强更新
程序错误修复
- BZ#839172, BZ#1020856
- 在以前的版本中,连接到 Peripheral Component Interconnect Express SSD (PCIe SSD)的硬盘没有在 udev 数据库中带有 ID 的条目,因为设备名称不会触发任何持久性磁盘 udev 规则。因此,在 /dev/disk/by github 文件中不会创建符号链接,设备厂商和产品在安装程序中显示为 "Unknown"。在这个版本中,添加了一个 udev 规则,以提供通过 ata_id 工具收集的信息。现在,/dev/disk/by-id 中的符号链接由 udev 创建,额外的信息可在 udev 数据库中使用。
- BZ#1008341
- 在此次更新之前,udev 规则会尝试写入 sysfs 文件,而不检查其是否存在。因此,错误消息被返回到 syslog。在这个版本中,udev 规则会在尝试写入该文件前检查是否存在该文件,且没有在 syslog 中出现不当的错误消息。
- BZ#028174
- Red Hat Enterprise Linux 6 序列化 modprobe 执行中的 udev 版本限制了 worker 进程的数量。但是,如果触发了大量 modprobes,则 udev 可能会达到 worker 进程的限制,并停止响应固件负载请求。在这个版本中,对于队列中的每个 modprobe 进程,worker 进程的数量已被增加,固件负载请求现在可以成功执行。
- BZ#077186
- 在以前的版本中,对于固件加载请求,全局超时默认为 60 秒。但是,在引导过程中,在有大量 I/O 负载的系统上,一些固件加载时间超过 60 秒,因此有时会失败。固件加载的全局超时时间增加到 600 秒,对于所有系统都足够长,以便所有固件负载都没有超时。
- BZ#091790
- sr_mod 内核模块是通过 udev 规则加载的,而不会遵守任何黑名单选项。因此,sr_mod 被加载,但管理员可能会将这个内核模块列入黑名单。在这个版本中,udev 规则使用 "-b" 选项调用 modprobe,该选项可让 modprobe 检查黑名单。因此,如果管理员选择将 sr_mod 内核模块列入黑名单,则不会自动加载 sr_mod 内核模块。
- BZ#1103278
- 对于某些数据卡,名为 modem-modeswitch 工具的 udev 规则,将卡从 CDROM 切换到 modem 模式。但是,较新版本的内核不需要这个调用。因此,这些数据卡无法切换到 modem 模式。要修复这个程序错误,数据卡的 udev 规则已被删除,切换到 modem 模式不再会导致问题。
功能增强
8.250. unixODBC
8.250.1. RHBA-2014:0869 - unixODBC 程序错误修复更新
程序错误修复
8.251. util-linux-ng
程序错误修复
- BZ#999625
- 在以前的版本中,在 mount (8)手册页中没有正确记录"acl"选项的行为。手册页现在说明"acl"选项特定于文件系统,而不是默认挂载选项。
- BZ#1004021
- blkid (8)手册页现在会正确记录"-w"选项的行为,提到"blkid -w"始终写入默认缓存文件,即使输出已在其他位置重定向。
- BZ#1011590
- 在以前的版本中,在多路径映射设备上使用 fdisk 命令会失败,并显示 "floating point exception" 错误。这个程序错误已被解决,fdisk 现在可以在多路径映射设备上成功执行。
- BZ#1016470
- blockdev (8)手册页现在明确了"--setbsz"选项的行为,该选项会对打开块大小的文件描述符设置块大小。
- BZ#1031641
- 在以前的版本中,findmnt 命令无法在 /proc/mounts 文件条目中正确处理结尾的正斜杠("/")。因此,findmnt 有时无法与正确的路径匹配。这个程序错误已被解决,findmnt 命令现在与独立于尾部斜杠的正确路径匹配。
- BZ#1033309
- rename (1)手册页被称为 non-existing mmv (1)手册页。这个引用已被删除。
- BZ#1039187
- 任务集(1)手册页中的 PERMISSIONS 部分已被修正,以声明允许用户更改自己拥有的进程的关联性,但需要使用一个 CAP_SYS_NICE 标志来更改其他用户进程的关联性。
- BZ#1072583
- 在以前的版本中,"hwclock --systohc"命令可以在忙碌或虚拟机上输入 indefinite 循环。因此,机器无法完成关闭或重启进程。应用了带有不同机制的补丁,"hwclock --systohc"命令现在可以成功完成。
- BZ#1049055
- 在以前的版本中,内核不支持对 PID 命名空间取消共享。在这个版本中,一系列补丁已应用到相关的内核代码,以支持 PID 命名空间的 unshare ()系统调用。
- BZ#1097715
- 在以前的版本中,当尝试使用 flock 命令锁定 NFSv4 卷中的文件时,命令会失败并显示以下错误:[nfs4] flock nfs file fail: Bad file descriptor这个 bug 已被修复,现在 flock 命令在 NFSv4 卷中成功执行。
- BZ#1104575
- 在以前的版本中,ntfs 服务使用的 kill 命令在调用 strtol ()函数后不会检查 "errno" 值。因此,如果同时运行 100 000 进程,则使用"service netfs stop"命令可能会终止系统中的每个进程。这个 bug 已被修复,使用 "service netfs stop" 命令只按预期停止 ntfs。
功能增强
8.252. valgrind
8.252.1. RHBA-2014:1464 - valgrind 程序错误修复更新
程序错误修复
- BZ#828341
- 在以前的版本中,Valgrind 工具无法识别某些旧的 i386 AMD Athlon 处理器支持 MmxExt 指令集中的 PREFETCH 指令。因此,Valgrind 在使用 PREFETCH 的 i386 架构上运行在 Valgrind 下不支持的指令后,会显示错误消息。Valgrind 已更新,以识别哪些处理器实现 MmxExt 指令集。因此,应用程序现在使用 PREFETCH 在 i386 上的 Valgrind 下按预期运行。
- BZ#881893
- 在此次更新之前,在 IBM System z 架构中,valgrind 可能会错误地报告它支持 KIMD Message-Security Assist (MSA)指令扩展,即使它是支持 MSA 而不是 Valgrind 的主机机器。因此,程序可以使用 Valgrind 不支持的一些指令,这会导致系统终止该程序。在这个版本中,Valgrind 不再考虑主机机器支持的指令集。因此,在 Valgrind 下执行的程序现在在上述情况下按预期运行。
- BZ#1007400
- 在以前的版本中,Valgrind 不支持 32 位 PowerPC 和 64 位 PowerPC 架构的 Linux 内核上的 [lf]setxattr 系统调用。因此,使用 [lf]setxattr 的程序会显示警告和错误消息。使用这个补丁,Valgrind 已被更新以识别 [lf]setxattr,使用 [lf]setxattr 的程序现在在 32 位 PowerPC 和 64 位 PowerPC 上运行,而不显示警告或错误。
- BZ#1012932
- 在此次更新之前,Valgrind 无法正确识别 Intel Streaming SIMD Extension 4 (Intel SSE4)指令集中的 MOVNTDQA 指令。因此,在 Valgrind 下执行时使用 MOVNTDQA 的程序意外终止。在这个版本中,这个问题已被解决,使用 MOVNTDQA 的程序现在在 Valgrind 下按预期运行。
- BZ#1024162
- 在此次更新之前,在 AMD64 和 Intel 64 构架中使用时,Red Hat Enterprise Linux 6 信号处理程序是在不正确的堆栈上执行的。因此,需要 16 字节数据校准的指令会意外终止。在这个版本中,堆栈指针一致,并在 AMD64 和 Intel 64 构架中调用信号已被正确执行。
- BZ#1101422
- 在以前的版本中,Valgrind 不支持 PowerPC 架构内核上的 dup3 系统调用。因此,在 Valgrind 下运行时,使用 dup3 的程序会显示警告和错误消息。现在,应用了补丁来解决这个问题,Valgrind 现在可以正确地处理 dup3。使用 dup3 的程序现在在 PowerPC 上运行,而不会显示警告或错误。
- BZ#1120021
- 在以前的版本中,i386 上的 Memcheck 内存错误检测器无法正确处理 bcopy ()函数使用的一些地址访问,即 memcpy ()函数的转换版本,它包含在 GNU C 库(glibc)中。因此,在 Valgrind 下运行的 i386 二进制文件中使用 glibc bcopy ()可能会报告无效的地址访问。Memcheck 现在已更新,以正确处理这个 bcopy ()实例。使用 bcopy ()或 memcpy ()的程序不再在上述情况下显示有关无效访问的警告。
- BZ#1126483
- 在以前的版本中,Valgrind 不支持 64 位 PowerPC Linux 内核中的 prctl 系统调用。因此,在 Valgrind 下运行时,使用 prctl 的程序会显示警告和错误消息。Valgrind 现在已更新为识别 prctl,使用 prctl 的程序不再在上述情况下显示警告或错误。
8.253. virt-manager
程序错误修复
- BZ#870383, BZ#1094600
- 由于 virt-manager 软件包中的一个错误,virt-manager 应用程序无法连接到远程主机机器辅助 IPv6。另外,virt-manager 无法通过 IPv6 创建带有远程连接的虚拟客户机。这个 bug 已被修复,virt-manager 现在成功打开到远程主机的 IPv6 连接,并创建具有此类连接的客户机。
- BZ#918451
- 在创建虚拟机(VM)时,virt-manager 应用程序会错误地配置自定义添加的 TCP net 控制台设备。现在,这个程序错误已被解决,在创建虚拟机时,TCP 控制台会被正确配置。
- BZ#1025706
- 当在没有启用 x-forwarding 的情况下通过 SSH 启动 virt-manager 应用程序时,virt-manager 会终止并返回回溯而不是信息性错误消息。在这个版本中,virt-manager 已被修改,以便在上述场景中返回格式良好的错误消息。
- BZ#1091292
- 在客户虚拟机上执行 pm-suspend 命令后,virt-manager 应用程序会将此客户机的状态显示为 "Running" 而不是 "Suspended"。这个 bug 已被修复,virt-manager 现在显示暂停的虚拟机的正确状态。
- BZ#1091878
- 在以前的版本中,在点 virt-manager GUI 中的 'refresh volume list' 按钮后,virt-manager 应用程序变得无响应。这个程序错误已被解决,virt-manager 在上述场景中不再挂起。
- BZ#1124387
- 当 LC_CTYPE 变量设置不正确时,virt-manager 应用程序已被修改,以返回信息性错误消息而不是回溯。
功能增强
- BZ#807277
- 在这个版本中,增加了对 virt-manager 软件包的 USB 重定向支持。
- BZ#1049781
- 在这个版本中,在 virt-manager 软件包中添加了对 Virtio SCSI 磁盘的支持。
- BZ#996517
- 现在,在使用 virt-manager 应用程序时,默认启用了 pvpanic 设备。pvpanic 是一个模拟设备,用于通知客户端机器上的 virt-manager panic 事件。
- BZ#1046583
- 在这个版本中,添加了一个使用 virt-manager 应用程序创建虚拟机(VM)时更改默认 CPU 模型的选项。VM CPU 模型现在可以设置为在主机 CPU 模型上尽可能接近。
8.254. virt-viewer
程序错误修复
- BZ#1056041
- 在此次更新之前,
SPICE
错误地决定使用原始桌面大小而不是主机屏幕大小来缩放窗口。因此,当在SPICE
中打开 guest 窗口时,屏幕在某些情况下可能会变得模糊。在这个版本中,客户机窗口扩展已被修复,这个问题不再发生。 - BZ#1083203
- 在此次更新之前,当从带有
Native Client
invocation 方法和Open in Full Screen
的 Red Hat Enterprise Virtualization 用户会话中启动virt-viewer
控制台时,客户虚拟机的显示并不总是配置为与客户端显示匹配。在这个版本中,virt-viewer
可以正确地为每个客户端监控器显示全屏 guest 显示。 - BZ#809546
- 在以前的版本中,当在具有两个或多个监视器的客户端机器上以全屏模式打开 virt-viewer 时,它会为每个 monitor 打开全屏客户机显示,但有时会在同一客户端监控器中放置多个显示。在这个版本中,这个程序错误已被解决,每个全屏客户机显示都被放在自己的客户端监控器中。
- BZ#1002156, BZ#1018180
- 当显示配置和对齐多个 guest 时,显示设置有时会使用有关
virt-viewer
和remote-viewer
窗口位置的过时信息。这会导致在客户机中显示重叠,不同的客户端窗口会显示一些相同的内容。另外,当客户机显示窗口调整大小时,客户机的内容会显示完全交换。在这个版本中,只有当前窗口位置用于对齐和配置显示。因此,内容重叠不再发生。 - BZ#1099295
- 在某些情况下,系统 USB 频道会在显示频道后创建。这有时会导致将 USB 设备重定向到客户机计算机失败,从而导致
virt-viewer
客户端接口中的USB 设备选择
菜单不可用。有了这个更新,无论创建 USB 频道和显示频道的顺序是什么,都会重定向 USB 设备。因此,在上述场景中,USB 设备选择
不再不可用。 - BZ#1096717
- 由于 virt-viewer 全屏配置中的一个错误,当 virt-viewer 使用-
full screen=auto-conf 选项启动时,客户机解析被错误地设置,并在
启动时重新进入全屏模式。在这个版本中,在保留和重新进入全屏模式时,这个程序错误和屏幕分辨率总是被正确调整。virt-
viewer - BZ#1029108
- 无法将修饰符键(如 Ctrl 或 Alt)作为组合键分配给
virt-viewer
中的-hotkeys
选项。设置此类组合时,virt-viewer
会自动将选项恢复到其默认值。但是,之前release-cursor
功能无法正确恢复。因此,当为release-cursor
设置只修饰符的热键时,光标不会在客户机窗口中释放。在这个版本中,release-cursor
当用户试图注册修饰符的热键时,并在客户机窗口中释放光标可以正常工作时,release-cursor
会正确恢复。 - BZ#1024199
- 由于
remote-viewer
中的一个错误,在remote-viewer
GUI 工具中输入一个带有额外空格字符的 URI,在之前或之前导致 guest 连接失败。在这个版本中解决了 bug 并在 URI 之前或之后添加空格不再阻止remote-viewer
连接到一个客户机。 - BZ#1009513
- 在此次更新之前,当使用--
fullscreen=auto-conf
选项连接到服务器时,保留客户机的全屏模式显示并打开另一个客户机显示会导致第二个客户机显示以全屏模式打开,而不是在窗口模式下打开。在这个版本中解决了这个问题,在上述情况下,第二个客户机显示会在窗口模式下正确打开。 - BZ#1063238
- 由于
SPICE
客户端与console.vv
文件的 Multipurpose Internet Mail Extension (MIME)的关联不正确,所以console.vv
之前是在文本编辑器中打开的,而不是在remote-viewer
中启动远程桌面会话。在这个版本中,错误的 MIME 关联已被修复,远程桌面会话会正确启动。 - BZ#1007649
- 在此次更新之前,
virt-veiwer
接口提供了Automatically resize
选项。但是,virt-viewer
中自动调整大小的功能取决于所使用的协议和客户机。因此,在某些情况下自动调整大小
无法正常工作。现在,只有在满足所需条件时,才会启用自动客户机大小。 - BZ#1004051
- 由于客户端中的错误显示大小计算,在
virt-viewer
或remote-viewer
中的窗口中进行缩放有时会错误地调整客户机显示的大小。在这个版本中,这个错误已被修复,现在可以正确扩展客户机显示,而不是重新定义大小。
8.255. virt-who
程序错误修复
- BZ#1098019
- 在以前的版本中,virt-who 守护进程没有向服务器报告客户机属性,这禁用了 virt_guest_limit 功能。在这个版本中,virt-who 已修改为正确报告客户机属性。因此,virt-who 现在支持 virt_guest_limit。
- BZ#1113938
- 在此次更新之前,/usr/share/virt-who/virt/libvirtd/libvirtd.py 脚本中对 Libvirtd.listDomains ()函数的每个调用都会打开到 libvirtd 守护进程的新连接,但没有关闭它。因此,在多次迭代后,virt-who 会消耗 libvirtd 的任何客户端允许的所有连接。在这个版本中,Libvirtd.listDomains ()已被修改来正确关闭 livirtd 连接,从而解决了这个问题。
8.256. vte
8.256.1. RHBA-2014:0638 - vte bug fix update
错误修复
- BZ#1063741
- 在以前的版本中,Virtual Terminal Emulator (VTE)无法正确决定在执行 UI 更新前可以读取多少字节,并进一步继续。因此,在大型文本文件上运行 cat 命令会导致 GNOME 终端响应缓慢。一个补丁已被应用于解决这个程序错误,在上述情况下,GNOME 终端的性能不再会减慢。
8.257. webkitgtk
8.258. wget
8.258.1. RHBA-2014:1408 - wget 程序错误修复更新
程序错误修复
- BZ#909604
- 在此次更新之前,Wget 缺少对 Server Name Indication (SNI)的支持。因此,Wget 无法使用 SNI 从服务器成功验证证书,即使证书有效。SNI 支持已被移植到 Red Hat Enterprise Linux 6 中分发的 Wget,Wget 现在能够使用 SNI 从任何服务器成功验证证书,只要证书有效。
- BZ#960137
- Wget 代码中的一个错误阻止 Wget 正确解析检索到的页面中的所有 Web 链接。因此,一些链接不会被跟随,在进行递归检索时不会检索页面。源代码已被修复,可以正确地解析 Web 链接,下载页面中的所有有效链接现在都会被解析,并在上述场景中正确解析。
- BZ#873216
- 由于 Wget 源代码中潜在的资源泄漏,Wget 在某些情况下可能会泄漏内存。在这个版本中,源代码被修补为释放可能会泄漏的资源,从而解决了这个问题。
8.259. x3270
8.259.1. RHBA-2014:1494 - x3270 程序错误修复更新
程序错误修复
8.260. xcb-util
程序错误修复
- BZ#858838
- 在某些情况下,由于 xorg-x11-drv-mga 驱动程序中的高默认颜色深度设置,所以鼠标光标会在移动时波动。这个程序错误已通过将默认的颜色深度设置为 16 bpp 来解决。
- BZ#921641
- 在以前的版本中,Xephyr 显示服务器无法正确解析 -keybd 选项提供的输入。因此,-keybd 设置没有被完全应用。这个程序错误已被解决,传递给 Xephyr 的 -keybd 设置现在可以正确地解析和接受。
- BZ#972647
- 在以前的版本中,在处理 PDF 文件时,pixman 库为 create_bits ()功能分配了内存不足。因此,在打开 PDF 文件时,Evince 文档查看器会意外终止。有了这个更新,pixman 已被修改为在处理 PDF 文件时分配足够内存量,从而解决了这个问题。
- BZ#978523
- 在以前的版本中,"sessreg -a -w"命令不会将 lastlog 条目写入命令行中指定的日志文件中。在这个版本中,sesreg 使用 utmp 接口而不是 utmpx。现在,当执行"sessreg -a -w"时,最后一个log 条目会记录到正确的文件中。
- BZ#987701
- 在以前的版本中,在更新之前,来自 mesa 软件包的软件驱动程序的前端缓冲渲染会导致大量渲染和不正确的读期。因此,一些应用程序(如 /usr/lib/mesa/ 目录中的示例)会出现给用户。这个程序错误已被解决,使用软件驱动程序的应用程序现在可以正确呈现。
- BZ#1001757
- 当将多个 QXL 设备与 Xinerama 扩展一起使用时,当每个 QXL 设备都是一个单独的屏幕时,在 xorg.conf 文件中设置大于 1024 x 768 pixel 的分辨率会失败,并显示错误。在这个版本中,底层源代码已被修改,现在可以在不复杂的情况下设置屏幕分辨率。
- BZ#1011959
- 由于 libX11 库上缺少 libGL 库的依赖项,编译库,如 gl2ps 失败,并显示"undefined reference _XgetRequest"消息。这个依赖项已被添加,编译不再会失败,并显示上述错误。
- BZ#1025714
- 在以前的版本中,mesa 软件包中的 libGL 库无法创建到运行 GLX 1.2 的 X 服务器的连接,而无需 fbconfig。因此,所有 GL 应用程序在那些服务器上都失败。这个程序错误已被解决,GL 应用程序现在可以连接到 X 服务器。
- BZ#1025804
- 尝试锁定通过 VNC 在远程 Xnest 会话中运行的 gnome-screensaver 实例会导致 Xnest 会话终止,并显示以下信息:
X Error of failed request: BadMatch (invalid parameter attributes)
这个程序错误已被解决,gnome-screensaver 实例现在可以被成功锁定 VNC。 - BZ#1038082
- 在以前的版本中,在使用 Mozilla Firefox Web 浏览器时,X 服务器偶尔会变得无响应。这个程序错误已被解决,在上述场景中 X 服务器不再冻结。
- BZ#1056011
- xorg-x11-glamor 软件包中的 libglamoreglgl 模块会自动加载,这会导致在安装了第三方驱动程序时造成冲突。因此,Xorg 意外终止。在这个版本中,libglamoregl 不再自动加载,从而防止冲突和 Xorg 崩溃。
- BZ#1057667
- 在某些情况下,当使用带有 8 位颜色深度的 Xephyr 显示服务器时,在使用滑块修改颜色后,不会自动更新颜色预览窗口。这个程序错误已被解决,颜色预览现在可以正确地响应用户的设置。
- BZ#1076728
- 在以前的版本中,当切换到带有更高分辨率的两个监视器的全屏模式时(例如,1920x1200),而不需要更改二级监控器上的解析,第二个屏幕会得到两个 dark 垂直条带的缺陷。底层源代码已被更新,使用高分辨率自动扩展现在可以按预期工作。
- BZ#1080941
- 在某些情况下,当在全屏中运行 gnome-system-monitor 或 glxgears 工具时,Xorg 使用了 100% 的 CPU。在这个版本中,xorg-x11-drv-mga 驱动程序已被修复,上面提到的问题不再发生。
- BZ#1117574
- 由于 xorg-x11-server 软件包中的一个错误,执行 "Xorg -configure" 命令时可能会出现分段错误。这个程序错误已被解决,上述场景中不再发生分段错误。
- BZ#1129819
- xorg-x11-drv-vmware 软件包已更新,修复了在没有安装 VMware kms 驱动程序的系统中提交问题。
功能增强
- BZ#795925
- 在这个版本中,在 mesa 软件包中添加了对 AMD Chelsea XT GL M3000 GPU 的支持。
- BZ#838739
- 在这个版本中,增加了对 xorg-x11-drv-wacom 驱动程序的 Lenovo X220 Tablet Touchscreen 的支持。
- BZ#1008692, BZ#1008693
- 在这个版本中,增加了对 xorg-x11-drv-wacom 驱动程序的新 Wacom Intuos Pro Tablets 的支持。
- BZ#1078424
- 在这个版本中,将 xcb-util-image 模块添加到 xcb-utils 软件包中。此模块提供来自 Xlib 库的 XImage 和 XShmImage 功能的端口。
- BZ#1078425
- 在这个版本中,xcb-util-keysyms 模块添加到 xcb-utils 软件包中。此模块提供标准的 X 密钥常量,以及转换至密钥码或从密钥码转换。
- BZ#1078426
- 在这个版本中,将 xcb-util-wm 模块添加到 xcb-utils 软件包中。此模块为 ewhm 和 icccm 库提供客户端和 window-manager 帮助程序。
- BZ#1084172
- 在这个版本中,增加了对 AMD Radeon HD 7000 系列和 AMD Radeon HD 8000 系列 GPU 的支持,在 AMD Opteron X1150 和 X2150 APU 中排除 GPU。
8.261. xfsdump
8.261.1. RHBA-2014:1565 - xfsdump 程序错误修复更新
8.262. xfsprogs
8.262.1. RHBA-2014:1564 - xfsprogs 程序错误修复更新
程序错误修复
- BZ#1018751
- 由于底层源代码中的一个错误,尝试使用 xfs_io "pwrite" 命令写入 XFS 文件系统上的块设备失败,并显示以下错误:XFS_IOC_FSGEOMETRY: Inappropriate ioctl for device.这个版本应用了补丁来修复这个程序错误,在上述场景中命令不再会失败。
- BZ#1020438
- 在以前的版本中,线程本地数据被错误地使用。因此,当使用 ag_stride 选项执行 xfs_repair 工具时,实用程序可能会意外终止分段错误。底层源代码已被修改来修复这个程序错误,xfs_repair 在上述情况下不再崩溃。
- BZ#1024702
- 在某些情况下,xfs_fsr 工具无法重新组织具有 SELinux 属性的文件。在这个版本中,提供了一个补丁来解决这个程序错误,xfs_fsr 可以成功使用 SELinux 属性对文件进行碎片整理。
- BZ#1100107, BZ#1104956
- 当源文件系统的扇区大小大于 512 字节时,xfs_copy 工具可能会创建该系统的损坏的副本。另外,实用程序在所有情况下都以非零返回代码退出,即使操作成功也是如此。这个版本会应用补丁来修复这些程序错误,工具现在可以正常工作。
8.263. xguest
8.263.1. RHBA-2014:0538 - xguest 程序错误修复更新
程序错误修复
8.264. xz
8.264.1. RHBA-2014:0769 - xz 程序错误修复更新
程序错误修复
- BZ#850898
- 在以前的版本中,xzgrep 命令的 '-h' 选项没有被包括。因此,输出中的匹配行使用对应的文件名作为前缀。在这个版本中,添加了 '-h' 选项,运行 'xzgrep -h' 命令现在会按预期阻止输出上的文件名。
- BZ#863024
- 在此次更新之前,运行 'xzgrep -l' 命令无法正常工作,因为源代码无法正确处理 '-q' 选项。因此,会显示错误消息。应用了补丁来正确处理源代码中的 'grep -q' 命令。因此,运行 'xzgrep -l' 会阻止正常输出,并按预期打印带有匹配行的文件名。
- BZ#988703
- xzfgrep 命令应当充当 'xzgrep -F' 命令的别名。在以前的版本中,这个别名行为没有被正确设置,模式被处理为正则表达式,而不是作为固定字符串。因此,运行 xzfgrep 命令不会产生任何输出。在这个版本中,xzfgrep 命令充当 'xzgrep -F' 命令的别名,并运行 xzfgrep 命令返回正确的输出。
- BZ#1108085
- 在以前的版本中,当一个或多个文件的内容与请求的模式不匹配时,xzgrep 命令会返回退出状态 1。在这个版本中,如果模式至少有一个匹配项,则 xzgrep 会返回退出状态 0,这使得 xzgrep 行为与默认的 grep 命令行为一致。
8.265. yum
8.265.1. RHBA-2014:1410 - yum bug fix update
程序错误修复
- BZ#875610
- 在以前的版本中,当执行 "yum history" 命令时,/var/lib/yum/history 文件缺失或为空,yum 工具会意外终止。在这个版本中,这种情况被安全处理,yum 不再崩溃。
- BZ#883463
- 如果出于某种原因 /var/lib/yum/yumdb 文件无法写入,yum 工具会意外终止。在这个版本中,这个场景被安全处理,yum 不再崩溃。
- BZ#903634
- 在以前的版本中,如果 http_proxy 和 https_proxy 环境变量被设置为一个地址,并在存储库配置中设置 "proxy=_none_" 选项,yum 实用程序会忽略存储库代理选项,并使用环境变量中的代理。现在,提供了一个补丁来修复这个错误,代理存储库配置选项现在总是覆盖环境变量。
- BZ#967121, BZ#1029359
- 在以前的版本中,"yum remove"和 "yum grouplist" 命令不会遵循 "skip_if_unavailable=1" 仓库属性,并在存储库不可用时失败。因此,yum 工具会在没有完成的情况下退出。底层源代码已被修复,带有 "skip_if_unavailabe=1" 设置的不可用存储库现已跳过,"yum remove" 和 "yum grouplist" 现在可以正常工作。
- BZ#1045415
- 当执行"yum verify"命令时,yum 实用程序也会报告文件权限的更改,即使不存在任何权限。已经提供了一个补丁来修复这个错误,yum 现在只提供可靠的报告。
- BZ#1061583
- 当 yum 命令在非C 区域上执行时,yum 会意外终止。在这个版本中,增加了对区域设置的支持,本地化的 yum 现在在不崩溃的情况下运行。
- BZ#1065122
- 在以前的版本中,如果 /etc/yum.repos.d/ 目录中有一个有问题的符号链接,且发出了 "yum repolist" 命令,则 yum 工具会意外终止。在这个版本中,会跳过不可读取的存储库文件,yum 不再崩溃。
- BZ#1073406
- 在此次更新之前,yum depsolver 没有比较虚拟版本。因此,当 yum 安装软件包时,depsolver 没有选择具有最高虚拟版本的软件包。底层源代码已被修补,yum depsolver 现在遵循预期的虚拟版本。
- BZ#1099195
- 当在缺少 pre- 或 post-dependencies 的软件包中发出 "yum check" 命令时,yum 实用程序报告 RPM 数据库问题,yum ignores 会忽略缺少 pre- 或 post-dependencies,"yum check"不再报告这些问题。
- BZ#1102575
- 当 yum.conf 文件中使用环境变量 $YUM0-$YUM9 时,这些变量不会替换为其值。现在,底层源代码已被修补,变量现在可以正确地替换为 yum.conf 中的值。
8.266. yum-rhn-plugin
错误修复
- BZ#1051972
- 尝试安装一个不可用或对 YUM 可见的软件包会导致空事务错误。在这个版本中,yum-rhn-plugin 报告软件包在这种情况下不可用。
8.267. yum-utils
8.267.1. RHBA-2014:1411 - yum-utils 程序错误修复更新
程序错误修复
- BZ#676193
- 在以前的版本中,debuginfo-install 工具只考虑 debuginfo 软件仓库的特定命名方案,它基于证书的 Red Hat Network 内容交付网络(CDN)没有遵循。因此,debuginfo-install 无法用于 CDN 中创建的 debuginfo 存储库。在这个版本中,添加了对 debuginfo 软件仓库的新命名方案的支持,debuginfo-install 现在可以按预期与 debuginfo CDN 软件仓库一起工作。
- BZ#808347
- 在此次更新之前,在没有相应二进制存储库的情况下启用的源存储库会自动禁用。因此,无法使用 "yumdownloader --source" 命令下载源软件包。在这个版本中,启用的源存储库不再被自动禁用,"yumdownloader --source"命令现在可以正常工作。
- BZ#850612
- 在此次更新之前,fs-snapshot 插件无法用于设备映射器,因为 "dmsetup splitname" 命令行界面已更改,且不再支持 "-o" 选项。更具体地说,fs-snapshot 在运行 yum 事务前不会获取用户文件系统的快照。另外,fs-snapshot 无法用于逻辑卷管理(LVM),无法创建新的 LVM 快照。在这个版本中,插件会调整到新的命令行界面,从而解决了这两个错误。
- BZ#981773
- 在以前的版本中,缺少几个工具(如 repo-rss、repodiff、repoquery 或 reposync)的手册页。在这个版本中,为每个实用程序创建了一个 man page。
- BZ#984119
- 当运行 yum-complete-transaction 命令时,/var/run/yum.pid 文件保留在文件系统中。一个补丁已应用到 yum-complete-transaction 来清理文件系统,/var/run/yum.pid 现在会在 yum-complete-transaction 完成后删除。
- BZ#1004089
- 当用户尝试使用 yumdownloader 工具下载 RPM 时,当目标目录中有较大的 RPM 的 RPM 时,不会重新下载 RPM,且向用户显示一个混淆的错误。应用了用于处理下载的 RPM 的补丁,如果 RPM 的校验和与预期不匹配,yumdownloader 会重新下载 RPM。
- BZ#1013475
- 在以前的版本中,yum 代码中的检查不足。因此,在某些情况下,yum-complete-transaction 命令删除了完整的软件包,几乎删除整个系统,而不是更新它们。在这个版本中,yum-complete-transaction 在删除软件包时更谨慎,当在系统中查找不完整或中止的 yum 事务时,它会尝试完成它们。
- BZ#1045494
- 在以前的版本中,当删除软件包且启用了更改目录的 yum post-transaction-action 扩展时,"yum remove"命令会意外终止。已提供了一个补丁来修复程序错误,"yum remove"不再崩溃,在没有例外的情况下成功实现后事务处理。
- BZ#1075705
- 在以前的版本中,执行 "yum-config-manager --setopt='debuglevel=9' --save" 命令会导致 yum-utils 程序意外终止。底层源代码已被修补,"yum-config-manager --setopt='debuglevel=9' --save" 命令现在可以成功执行。
- BZ#1097560
- 在以前的版本中,当 RPM 数据库打开时,运行 repoquery 命令会导致 repoquery 工具意外终止。一个补丁已被用来修复这个程序错误,repoquery 不再会崩溃。