介绍

本文档包括了以下内容:

  • 与安装相关的注记

  • 技术预览

  • 已知的问题

  • 一般信息

  • 驱动更新程序

  • 国际化

  • 内核注记

红帽企业 Linux 5 的某些更新可能没有出现在这个版本的发行注记里。您可以通过以下 URL 来获得更新的发行注记:

http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/index.html

与安装相关的注记

以下内容是针对于 红帽企业 Linux 的安装以及 Anaconda 安装程序的。

备注

要升级已经安装 红帽企业 Linux 的系统,您必须使用 红帽网络 来更新那些已经改变的软件包。

您可以使用 Anaconda 安装一个全新的红帽企业 Linux 5,或从红帽企业 Linux 4 最新的更新版本 升级到红帽企业 Linux 5。

如果您需要复制红帽企业 Linux 5 光盘中的内容(例如,为了准备网络安装),请复制操作系统光盘。不要复制附加光盘或任何分层产品光盘中的内容,这样会覆盖 Anaconda 正常运行所需的文件。这些光盘必须在红帽企业 Linux 被安装 才安装。

ISO 的内容和注册

与产品相关套件的软件组件包的结构与以前版本的 红帽企业 Linux 有所不同。不同种类的媒介套件和 ISO 映像被减少到两种:

  • 红帽企业 Linux 5 服务器

  • 红帽企业 Linux 5 客户端

ISO 映像包含大量的可选软件包,它提供了核心分发版本外的其他功能,如:虚拟化、群集和群集存储。关于服务器套件、客户端套件和可选套件的更多信息,请参考 http://www.redhat.com/rhel/

因为可选的内容也存在在相同的树或 ISO 映像中,所以应该特别注意不要使安装的组件和订阅所提供的组件不匹配。如果这种情况发生了,系统存在错误或安全漏洞的可能性将会增加。

为了保证安装的组件和订阅相匹配,红帽企业 Linux 5 需要输入一个 安装号。它被用来配置安装程序来提供正确的软件包。安装号码包含在您的订阅里。

如果您没有输入安装号码,只有核心服务器或 Desktop 将会被安装。其它功能可以在以后被手工安装。关于安装号码的更多信息,请参考 http://www.redhat.com/apps/support/in.html

在安装过程中被使用的安装号码将被存放在 /etc/sysconfig/rhn/install-num 里。当在 红帽网络 注册时,这个文件将自动被 rhn_register 引用,来决定系统应该订阅到哪个合适的子通道。

新的 RPM GPG 签名密钥(Signing Key)

新的签名密钥被用来签注红帽企业 Linux 5 软件包。当第一次更新系统时,系统将提示您允许这个密钥被安装。

签名密钥(Signing key)分发在下面的文件里:

  • /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release — 包含了新的发布签名密钥的公共密钥。

  • /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-auxiliary — 包含了辅助的发布签名密钥的公共密钥(目前未被使用)

  • /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-former — 包含了之前发行的签名密钥的公共密钥,用于过去的 红帽企业 Linux 发布版本。

Subversion

在 红帽企业 Linux 5 中,Subversion 版本控制系统是与 Berkeley DB 4.3 相关联的。如果从 红帽企业 Linux 4 进行了升级,而其中有使用 Berkeley DB 后端 "BDB"(而不是纯基于文件系统的 "FSFS" 后端)创建的 Subversion 存储库(repository),您需要注意存储库是否可以在升级后被访问。这个过程必须在 红帽企业 Linux 4 系统上执行,并应该在升级到 红帽企业 Linux 5 进行:

  1. 关闭所有运行的进程,并确认没有程序在访问存储库(如 httpdsvnserve 或本地用户在直接访问)。

  2. 使用下面的命令对存储库进行备份:

    svnadmin dump /path/to/repository | gzip 
    > repository-backup.gz
    
  3. 在存储库中运行 svnadmin recover 恢复命令:

    svnadmin recover /path/to/repository
    
  4. 删除存储库中无用的日志文件:

    svnadmin list-unused-dblogs /path/to/repository | xargs rm -vf
    
  5. 删除存储库中所有剩余的共享内存文件:

    rm -f /path/to/repository/db/__db.0*
    

其它安装注记

  • 如果 IDE/PATA (并行 ATA) 设备在 "100% Native" 模式下配置,某些 BIOS 可能会使 红帽企业 Linux 5 的安装不成功。要防止这种情况发生,可以在 BIOS 里把 IDE/PATA 模式配置为 "Legacy"。

  • IBM System z 不提供传统的 Unix 风格的物理控制台。因此,用于 IBM System z 的 红帽企业 Linux 5 在初始程序装载时不支持 firstboot 功能。

    要为用于 IBM System z 的 红帽企业 Linux 5 正确初始化设置,可以在安装后运行以下命令:

    • /usr/bin/setup — 由 setuptool 软件包提供

    • /usr/bin/rhn_register — 由 rhen-setup 软件包提供

  • 当用 ksdevice=bootif 参数通过 PXE 引导 Anaconda 时,您仍将被提示安装过程中所使用的以太接口。如果只插入了一个以太设备,使用 ksdevice=link。或者,您也可以手工指定接口。

技术预览

红帽企业 Linux 5 订阅服务目前还支持技术预览(Technology Preview)特征,它现在也还不完善,不适合于正式使用。然而,这个特征可以方便客户,提供更广泛的功能。

客户可能发现这些特征在非产品的环境里很有用。在正式支持技术预览特征之前,我们欢迎客户提供反馈和关于功能的建议。对于严重的安全问题,我们将提供勘误表。

随着这些技术的不断开发,用户将可以获得其它新功能,并对它们进行测试。 红帽可能会在以后的发行版本中对这些技术预览提供完全的支持。

Stateless Linux

这个发布版本的红帽企业 Linux 5 启用了 Stateless Linux 的基础环境。Stateless Linux 为运行和管理一个系统提供了一个新思路。它的设计思想是,通过使系统的组成部分可以被简单地更换来达到简化维护和管理一个大型系统的目的。这主要是通过使用提前准备好的系统映像来实现的,这些系统映像可以在大量的 stateless 系统间被复制和管理,操作系统以只读的方式被运行(请参考 /etc/sysconfig/readonly-root 来获得更多细节)。

在它当前的开发阶段,stateless 的功能只是它所要设计达到的功能的一部分。因此,这些功能被标记为技术预览。

以下是包括在红帽企业 Linux 5 中的基本功能:

  • 使用 NFS 运行一个 stateless 映像

  • 使用 loopback over NFS 来运行一个 stateless 映像

  • 在 iSCSI 上运行

我们强烈建议对测试 stateless 代码感兴趣的用户参阅 http://fedoraproject.org/wiki/StatelessLinuxHOWTO 中的 HOWTO 并加入 stateless-list@redhat.com

GFS2

GFS2 是一个基于 GFS 文件系统的先进的新系统。虽然 GFS2的所有功能现在都可以实现,但它当前还不适合于在实际的生产环境中实施。GFS2 计划在 红帽企业 Linux 5 的更新版本中被完全支持。数据转换应用程序(gfs2_convert)可以对 GFS 文件系统的元数据进行更新,把它转换为一个 GFS2 文件系统。

FS-Cache

FS-Cache 是一个远程文件系统的本地缓存工具。它允许用户在一个本地挂载的磁盘上缓存 NFS 数据。要设置 FS-Cache,请安装 cachefilesd RPM 并根据 /usr/share/doc/cachefilesd-<version>/README 中的介绍进行配置。

使用安装的 cachefilesd 软件包的相应版本替换 <version>

Compiz

Compiz 是一个基于 OpenGL 的窗口合成管理器。除了可以进行一般的窗口管理,compiz 还可以作为一个合成器使用。它可以协调并同步整个桌面来提供一个更易用的桌面环境。

Compiz 使用 3D 硬件加速来处理各种窗口效果(如 thumbnail windows、window drop shadows,在虚拟桌面间进行动画效果的窗口最大化、最小化以及其它操作)。

因为目前渲染架构的限制,compiz 当前还无法和进行直接渲染的 OpenGL 应用程序或使用 Xv 扩展的应用程序一起使用。这些程序将展示先进的渲染技术。正因为如此,compiz 目前还只是一个技术预览。

Ext3 的性能增强

在红帽企业 Linux 5 中,EXT3 文件系统所支持的最大容量已经从过去的 8TB 增加到 16TB。当前对 16TB 的支持还只是一个技术预览,对它的完全支持计划被包括在以后发行的红帽企业 Linux 5 中。

AIGLX

AIGLX X server 的一个技术预览。它的目标是在标准桌面上启用 GL加速效果。这个项目由以下内容组成:

  • 有少许修改的 X server

  • 增加了新协议支持的更新的 Mesa 软件包

通过安装这些组件,几乎不作修改您就可以在桌面上实现 GL 加速的效果,而且不需要替换 X server 就可以及启用和终止它。AIGLX 也启用远程 GLX 应用程序来利用 GLX 硬件加速功能。

Frysk GUI

frysk 项目的目的是创建一个智能的、分布式的、always-on 的系统监控和调试工具,它允许开发者和系统管理员来:

  • 监控运行的进程和线程(包括创建和终止事件)

  • 监控 locking primitive 的使用

  • 解开死锁

  • 收集数据

  • 从列表里选择任何进程来调试,或者允许 frysk 来打开崩溃或不正常的进程的源代码(或其他)窗口。

在 红帽企业 Linux 5 里,frysk 图形用户界面只是一个技术预览,但 frysk 命令行接口是被完全支持的。

Systemtap

Systemtap 提供自由软件(GPL)架构来简化运行的 Linux 系统的信息收集。它协助性能或功能性问题的诊断。利用 systemtap,为了收集数据,开发者不再需要完成阅读冗长的指令、编译、安装和重启等一系列过程。

Dogtail

Dogtail 是一个用 Python 编写的 GUI 测试工具和自动化框架,它使用 Accessibility 来与桌面应用程序进行通信。

对 Indic 语言和 Sinhalese 的支持

红帽企业 Linux 5 也支持下面的语言作为技术预览:

  • Assamese

  • Kannada

  • Sinhalese

  • Telugu

要获得安装和启用这些语言的支持的详细信息,请看考本文档的 Internationalization 部分。

安装到 dm-multipath 设备

现在 Anaconda 具有检测、创建和安装到dm-multipath 设备的能力。要启用这个特征,可以在内核引导行后添加 mpath 参数。

注意,如果设比的 major:minor 号码改变的话,mpath 参数可能导致引导失败。红帽企业 Linux 5 的更新版本将解决这个问题。

iSCSI 软件启动程序(open-iscsi)的安装/引导

Anaconda 现在提供安装至 iSCSI 设备的能力。使用 QLogic qla4xxx hardware initiator 的安装和引导被完全支持。然而,由于下面的原因,安装 open-iscsi software initiator 至 iSCSI 设备的能力目前还只是技术预览:

  • 文本模式的安装没有完成。您必须执行图形化的安装,或者是自动化的 kickstart 安装。

  • 基于介质的安装没有完成。您必须进行基于网络的安装。

  • 由于执行时间的原因,Anaconda 可能不能够检测到所有的 iSCSI target 或 LUN。当发生这样的事情时,使用安装程序 shell 和 iSCSI 命令来配置存储设备。

  • iscsid 守护进程可能没有正确启动。这样的事情将阻止系统处理所有的 iSCSI 错误,如网络问题、SCSI/iSCSI 超时和 target 错误。要确认 iscsid 守护进程是否运行,您可以运行命令 iscsiadm -m session -i 并检查 Internal iscsid Session State: 行是否输出任何值。

  • 在某些 iSCSI target 实施中,系统可能在关闭过程中挂起。

  • 在某些 iSCSI target 实施中,系统可能在关闭过程中挂起。要避免这个问题,关闭系统并再次引导它(而不是直接从同一会话里重新启动)。

  • IBM System p 里从 iSCSI 设备引导不稳定。虽然 iSCSI 设备上的安装好像成功了,但最后系统将不能正确引导。

  • 在安装后的第一次引导时,您可能会看到如下的 SELinux 错误:

    kernel: audit(1169664832.270:4): avc:  denied  { read
    } for  pid=1964 comm="iscsid" 
    

    要解决这个问题,用内核参数 enforcing=0 引导系统。一旦系统被正确地引导,使用 setenforce 1 来恢复 enforcing 模式。

这些限制将在将来的红帽企业 Linux 5更新里得到解决。

已知问题

  • 使用 MegaRAID 驱动的主机总线适配器必须设置为在 "Mass Storage" 仿真模式下操作,

    1. 输入 MegaRAID BIOS Set Up Utility

    2. 输入 Adapter settings menu

    3. Other Adapter Options 下,选择 Emulation 并把它设置为 Mass Storage

    如果适配器被错误地设置为 "I2O" 仿真,系统将试图装在 i2o 驱动。这不会成功而且会阻止正确驱动的装载。

    以前的 红帽企业 Linux 发行版本通常不会在 MegaRAID 驱动之前装载 I20 驱动。无论如何,Linux 使用的硬件应该总是设为 "Mass Storage" 仿真模式。

  • 当您安装的是一个完整的用 vcpus=2 配置的 virtualized guest 时,这个 virtualized guest 可能会需要很长时间来启动。

    要解决这个问题,可以用命令 xm destroy <guest id> 删除 slow-booting 客户(guest),然后用 xm create <guest id> 来启动相同的客户。

  • 红帽企业 Linux 5 包含了 openmpi-1.1.1-4.el5(从 OFED 1.1 发行版本里), 它最终已经完全不被使用了。在 openmpi 栈运行了一段时间后,就是这样了。

    请参考 http://people.redhat.com/dledford/Infiniband/openmpi 来获得 openmpi 的更新版本。

  • 在安全虚拟化的红帽企业 Linux 系统里将 Windows Server 2003 安装为一个客户(Guest),当完成第一阶段的安装时,会出乎意料地终止。这时,图形化的控制台窗口终止,客户操作系统从 Virtual Machine Manager 的主机列表里消失,并导致了 Broken pipe 错误。

    这个问题将在即将发布的红帽企业 Linux 5 更新里得到解决。您可以在终端里使用下面的命令行来解决这个问题:

    xm create /etc/xen/<name of guest machine>

    之后,再打开虚拟主机。

  • 当从 CD / DVD 里创建完全虚拟化的 Windows Server 2003 时,客户操作系统的第二阶段安装在重启后将不能继续。

    要解决这个问题,可以编辑 /etc/xen/<name of guest machine>,附加一条关于 CD / DVD 设备的记录。

    如果对简单文件的安装被用作虚拟设备,/etc/xen/<客户机名称>disk 行将如下所示:

    disk = [ 'file:/PATH-OF-SIMPLE-FILE,hda,w']
    

    主机上的 DVD-ROM 设备 /dev/dvd 可以在安装的第二阶段作为 hdc 可用,只要加入和 'phy:/dev/dvd,hdc:cdrom,r' 类似的条目。因此,disk 行应该如下所示:

    disk = [ 'file:/opt/win2003-sp1-20061107,hda,w', 'phy:/dev/dvd,hdc:cdrom,r']
    

    根据硬件配置的不同,所使用的相应的设备路径也会不同。

  • rmmod xennet 会导致 domU 崩溃;这是由虚拟化特征的 grant table 问题所引起的。由于目前虚拟化特征还不能异步地释放 grant table 操作,所以在客户机里卸载 xennet 模块是不安全的。在这种情形下,grant table 被用来执行后台-前台的通信,但却不能保证后台程序释放对它的引用,就不可避免地导致了内存泄漏。

    这个问题将在 红帽企业 Linux 5 的下一个 minor 发布版本里解决。目前,我们建议用户 不要 在客户机里卸载 xennet 模块。

  • 对于以太网卡设置,运行 ethtool eth0 的输出信息不完整。这仅在系统运行虚拟化内核时才会发生,因为虚拟化特征把物理以太设备识别为 peth0。因此,获取物理以太设备的正确命令是 ethtool peth0

  • 在型号为 xw9300 和 xw9400 的 HP 系统里,安装虚拟化特征可能导致 time went backwards 警告。

    对于 xw9400 机器,如果要解决这个问题,可以在 BIOS 里启用 HPET 计时器。注意,这个选项对于 xw9300 机器是不可用的。

    当新的 BIOS 映像可用时,HP 会通知 xw9300 和 xw9400 系列的用户。

  • 当在安装了 nVidia CK804 芯片组的机器上使用 红帽企业 Linux 5 时,您可能会收到如下的内核信息:

    kernel: assign_interrupt_mode Found MSI capability
    kernel: pcie_portdrv_probe->Dev[005d:10de] has invalid IRQ. Check vendor BIOS
    

    这些信息指出某些 PCI-E 端口没有请求 IRQ。而且,这些信息不会以任何方式影响机器的操作。

  • 某些 Cisco Aironet 无线设备会阻止 NetworkManager 为不广播 SSID 的无线网络存储连接的细节。这是由 Cisco Aironet 无线设备防火墙限制所引起的。

  • 装备了 Cisco Aironet MPI-350 无线卡的笔记本可能会在使用有线以太端口进行网络安装的过程中,不能获取 DHCP 地址。

    要解决这个问题,可以使用本地介质进行安装。或者,在安装之前您可以在笔记本的 BIOS 里禁用无线网卡(完成安装后,您可以再启用它)。

  • 目前,system-config-kickstart 不支持软件包的选择和取消。在使用 system-config-kickstart 时,「Package Selection」 选项是禁止的。这个因为 system-config-kickstart 使用 yum 来收集组信息,但却不能配置 yum 来连接红帽网络。

    我们正在研究这个问题,希望在 红帽企业 Linux 5 的下一个 minor 发布版本里解决它。目前,您将需要在 kickstart 文件里手工更新软件包的选择。当使用 system-config-kickstart 打开 kickstart 文件时,它将保留所有软件包信息,在您保存文件时再写回。

  • 带有 SATA 控制器的系统在引导过程中可能会暂停,显示如下的错误信息:

    ata2: port is slow to respond, please be patient
    

    之后,如下的错误信息会出现:

    ata2: reset failed, giving up
    

    注意,在第二个错误信息之后,系统将继续进行引导。除了这种延迟外,不会对系统有其他的影响;只要 SATA 驱动器还在,它们仍会被正确地检测。

  • 没有在 node 0 里配置内存的 4-socket AMD Sun Blade X8400 Server Module 系统在引导过程中会崩溃。要避免这个问题,node 0 里应该配置内存。

  • 通过 Anaconda 安装到 LVM 镜像设备目前不被支持。红帽企业 Linux 5 的更新版本里将加入这个功能。

  • 当从包含 红帽企业 Linux ISO 映像的 NFS 服务器目录里安装 红帽企业 Linux 5 时,Anaconda 可能会显示下面的错误信息:

    Unable to read package metadata. This may be due to a missing repodata directory. 
    Please ensure that your install tree has been correctly generated. Cannot 
    open/read repomd.xml file for repository:
    

    如果存放 ISO 镜像的目录也包含了部分解开的安装树(例如,第一个 ISO 里的 /images 目录)时,就会出现这个问题。这些目录的存在会导致上面的错误。

    要避免这个错误,您需要把安装树解开到不包含 ISO 安装映像的其他目录下。

  • 在这个版本的 红帽企业 Linux 5 里,/var/log/boot.log 里没有 Boot-time 日志。同等的功能将加入到将来的 红帽企业 Linux 5 更新版本里。

  • kexeckdump 都不能把数据转储到连接至 accraid 控制器的磁盘上。

    要解决这个问题,可以使用 scp 来进行网络转储。或者您可以转储到使用其他控制器的磁盘上。

  • bttv 内核模块运行 tvtimexawtv 会导致系统停止。这个问题会在将来的 红帽企业 Linux 5 minor 版本里得到解决。

    要解决这个问题,在内核引导行加入 mem=3000m 参数。

  • 这个发行版本的附属光盘包含了 Mozilla plugins flash-pluginacroread-plugin。这些 plug-in 都是 32 位的,因此我们不推荐在 64 位 Firefox 浏览器里安装它们。

  • 用不连续的介质来安装完全虚拟化的客户 - 特别是用多张 CD 光碟 - 在切换安装光碟时可能会失败。在客户机的操作系统安装过程中,用户可能会被阻止挂载或者弹出安装光碟,这会导致安装不能完成。

    因此,在客户机操作系统安装过程中,我们推荐您使用 QEMU 显示控制台来切换 CD-ROM 映像。 如:

    1. 打开一个连至客户机操作系统的图形化 VNC 控制台。

    2. 在客户机操作系统里卸载光驱设备。

    3. Ctrl-Alt-2 切换到 QEMU 显示器控制台。

    4. 运行 eject hdc 命令。

    5. 运行命令 change hdc <path to the CD-ROM in host system>

    6. Ctrl-Alt-1 切换回客户机操作系统控制台。

    7. 在客户机操作系统里挂载光驱设备。

    注意:当使用普通的 VNC 客户端时,主机的 X server 可能不能识别 Ctrl-Alt-2Ctrl-Alt-1 命令。要在 virt-manager 里绕开这个问题,可以使用 sticky keys。按 Ctrl 键三次,使其变为 "sticky" 状态,直到下一个 non-modifier 键被按住。由此,要发送 Ctrl-Alt-1,可以在按Ctrl-Alt-1 之前按 Ctrl 键两次。

  • 使用 NVIDIA 图形卡的某些机器在用图形化安装程序或者图形界面登录时,可能会不正确地显示图形或字体。要解决这个问题,先切换到一个虚拟控制台,然后切换回原来的 X 主机。

  • 当包含了 bootpath-modifying 驱动的 kmod 包被安装时,红帽企业 Linux 5的 Driver Update Model 会创建修改过的 initrd 映像文件。此时, initrd 映像文件的备份会很快占满 /boot 分区,尤其是当系统在执行大量的驱动升级的时候。

    因此,如果您经常进行驱动的升级,我们推荐您监控 /boot 分区的空闲空间。您可以通过删除更旧的 initrd 映像文件来为 /boot 释放更多的空间;这些文件的名字类似于 .img0.img1.img2,诸如此类。

  • 如果系统内存超过 64GB,红帽企业 Linux虚拟化内核可能不能正常工作。要在安装了超过 64GB 内存的机器上引导虚拟化内核,您需要在内核命令行里加入 dom0_mem=4G mem=64G。例如:

    title Red Hat Enterprise Linux Server (2.6.18-4.el5xen)
            root (hd0,0)
            kernel /xen.gz-2.6.18-4.el5 dom0_mem=4G mem=64G
            module /vmlinuz-2.6.18-4.el5xen ro root=LABEL=/
            module /initrd-2.6.18-4.el5xen.img
    
  • 目前在可移除介质上的自动运行是禁用的。要从红帽企业 Linux附加光盘里安装软件包,使用下面的命令启动光盘安装程序:

    system-cdinstall-helper /media/path-to-mounted-drive

  • 当从红帽企业 Linux 4 升级到红帽企业 Linux 5时,《部署指南》并没有自动安装。您需要在升级完成后用 pirut 来手工安装它。

  • autofs 的一个程序错误阻止了 multi-mount 的正常运行。

    在过期之前,如果最后检查的 multi-mount 组件并不和挂载相关联,而其他组件又不空闲。autofs 会错误地认为 multi-mount 过期了。这导致了 multi-mount 的部分过期,且不再负责将来的挂载请求和过期运行。

    要永久地解决这个问题,用 yum update autofs 命令来升级 autofs

  • 如果 X 正在运行且使用 vesa 之外的驱动,系统可能没有成功地重启至 kexec/kdump 内核。这个问题只存在于 ATI Rage XL 图形芯片组里。

    如果 X 运行在安装了 ATI Rage XL 的系统上,为了成功地重启至 kexec/kdump 内核,请确保它使用 vesa 驱动。

  • 使用以读写方式挂载的 NFS 共享目录里的 boot.iso 创建完全虚拟化的客户机不能成功完成。要解决这个问题,可以用只读方式挂载 NFS 共享目录。

    如果不能以只读方式挂载 NFS 共享目录,您可以把 boot.iso 复制到本地的 /var/lib/xen/images/ 目录下。

一般信息

这部分内容包含本文档其他部分不专有的一般信息。

红帽企业 Linux 部署指南

这个 红帽企业 Linux 的发布版本包含了一个相当完备的部署指南。您可以通过 「系统」(面板顶部) => 「文档」 => 红帽企业 Linux 「部署指南」 访问它。

红帽 的愿望是对于所有支持的语言提供完全本地化的部署指南。如果您安装了部署指南的本地化版本,在有新版本时,我们推荐您通过 红帽网络 来进行更新。

虚拟化

红帽企业 Linux 5 包括了 i686 和 x86-64 的基于 Xen 的虚拟化功能的技术预览,并提供了管理虚拟化环境的基础环境。

在 红帽企业 Linux 5 中,虚拟化是基于 hypervisor 的,它使用极低的系统开销来实现 paravirtualization 技术。在带有 Intel 虚拟化技术或 AMD AMD-V 功能的处理器上,红帽企业 Linux 5 上的虚拟化可以使没有被修改的操作系统在完全虚拟化的模式中运行。

红帽企业 Linux 5 的虚拟化还提供以下功能:

  • Libvirt 库函数,它提供了一个管理虚拟机的统一的、可移植的 API。

  • Virtual Machine Manager,一个用来监测并管理虚拟机的图形化工具。

  • 通过安装程序设置虚拟机,并可以通过 kickstart 安装虚拟机。

红帽网络 也支持虚拟机。

目前,虚拟化功能有着如下的限制:

  • 当启用虚拟化时,Suspend to RAM 和 Suspend to Disk 都不被支持,而且也不能执行 CPU 超频。

  • 硬件-虚拟化的客户不能够有超过 4GB 的虚拟内存。

  • 完全虚拟化的客户不能够保存、恢复和移植。

  • 在 Virtual Machine Manager 里没有对应 xm create 命令的图形化界面。

  • 虚拟化不支持 bridged networking 组件。客户所使用的所有相应工具都自动以此为缺省设置。

  • 缺省的用于虚拟化的 红帽 SELinux 策略只允许配置文件写入 /etc/xen、日志文件写入 /var/log/xen/ 以及磁盘文件(包括核心 dump 文件)写入 /var/lib/xen。这些缺省设置可以用 semanage 工具来修改。

  • 这个虚拟化发布版本里包括的 hypervisor 是 NUMA-aware。在 NUMA 机器上运行的性能可能不是最优的。以后的 红帽企业 Linux 5 更新版本将解决这个问题。

    为了解决这个问题,可以在 NUMA 机器的 BIOS 里启用 memory node interleaving。这将确保更加一致的性能。

  • 目前 Paravirtualized domain 不支持 en-US 外的键盘布局。因此,其他键盘可能不能够输入某些键。以后的 红帽企业 Linux 5 更新版本将解决这个问题。

  • 虚拟化的内核不能够利用 kdump 功能。

  • qcowvmdk 映像不被支持。当手工配置 guest 时,物理或逻辑设备备份的映像应该使用 phy: 类型。至于 file-backed 的映像,对于 paravirtualized guest 要把映像类型设置为 tap:aio: 而对于 virtualized guest 则设置为 file:

  • Paravirtualized domain 只能够自动检测相关的鼠标移动,而指针移动则不够稳定。以后的 红帽企业 Linux 5 更新版本将解决这个问题。

  • 为了使用 paravirtualized guest 的工作控制台,您需要在内核命令行指定 console=xvc0

  • 当配置客户机操作系统使用稀疏文件(sparse file)时,dom0 可能会用尽磁盘空间。这会阻止客户机完成磁盘的写操作并导致数据丢失。而且,使用稀疏文件的客户不能安全地进行 I/O 同步。

    因此,我们推荐您使用非稀疏文件(non-sparse file)。要配置客户机使用非稀疏文件,可以在执行 virt-install 时使用 --nonsparse 选项。

Web Server 软件包更改

红帽企业 Linux 5 现在包含了 Apache HTTP 服务器的 2.2 版本。这个发布版本带来了 2.0 版本之后的许多改进,包括:

  • 改进的缓存模块(mod_cachemod_disk_cachemod_mem_cache

  • 验证(authentication)和授权(authorization)支持的新结构,代替了以前版本里的验证模块。

  • 对代理服务器负载平衡的支持(mod_proxy_balancer

  • 对 32 位平台上的大文件(大于 2GB)处理的支持

缺省的 httpd 配置文件里有下面的改动:

  • mod_cern_metamod_asis 模块不再缺省被装载。

  • mod_ext_filter 模块现在缺省被装载。

如果您是由 红帽企业 Linux 的前一个发布版本升级的话,httpd 配置文件将需要为 httpd 2.2 更新。请参阅 http://httpd.apache.org/docs/2.2/upgrading.html 来获得更多信息。

注意,任何为 httpd 2.0 编译的第三方模块必须为 httpd 2.2 重新构建。

php

红帽企业 Linux 5 里包含了 PHP 的 5.1 版本,这个版本有很多的改进,且性能有显著的提高。某些脚本可能需要用新版本进行编辑;关于更多细节或从 PHP 4.3 移植到 PHP 5.1,请访问下面的链接:

http://www.php.net/manual/en/migration5.php

/usr/bin/php 执行文件现在是用 CLI command-line SAPI,而不是 CGI SAPI 进行构建的。对于 CGI SAPI 可以使用 /usr/bin/php-cgiphp-cgi 执行文件也包含了对 FastCGI 的支持。

下面的扩展模块已经被加入:

  • mysqli 扩展模块,是特别为 MySQL 4.1(包含在 php-mysql 软件包里)设计的一个新接口。

  • date、hash,、eflection,、SPL 和 SimpleXML(内置于 php 软件包)

  • pdopdo_psqlite(在php-pdo 软件包里)

  • pdo_mysql(在 php-mysql 软件包里)

  • pdo_pgsql(在 php-pgsql 软件包里)

  • pdo_odbc(在 php-odbc 软件包里)

  • soap(在 php-soap 软件包里)

  • xmlreaderxmlwriter(在 php-xml 软件包里)

  • dom(代替 php-xml 软件包里的 domxml 扩展模块)

不再包含下面的扩展模块:

  • dbx

  • dio

  • yp

  • overload

  • domxml

PEAR 框架

PEAR 框架现在包含在 php-pear 包里。红帽企业 Linux 5 只包含下面的 PEAR 部件:

  • Archive_Tar

  • Console_Getopt

  • XML_RPC

加密的交换分区和非根文件系统

红帽企业 Linux 5 现在对加密的交换分区和非根文件系统提供基本的支持。要使用这些特征,您需要在 /etc/crypttab 里加入合适的条目并引用 /etc/fstab 里创建的设备。

下面是 /etc/crypttab 的一个条目样本:

my_swap /dev/hdb1 /dev/urandom swap,cipher=aes-cbc-essiv:sha256

这创建了加密的块设备 /dev/mapper/my_swap,它可以在 /etc/fstab 里被引用。

下面是用于文件系统卷的 /etc/crypttab 条目样本:

my_volume /dev/hda5 /etc/volume_key cipher=aes-cbc-essiv:sha256

/etc/volume_key 文件包含一个明文加密密钥。您也可以指定 none 作为密钥文件名;这会使系统在引导时请求加密密钥。

我们推荐使用 LUKS(Linux Unified Key Setup)来设置文件系统卷。可以遵循下面的步骤来完成:

  1. cryptsetup luksFormat 创建加密卷。

  2. /etc/crypttab 里添加必要的条目。

  3. cryptsetup luksOpen(或 reboot)手工地设置卷。

  4. 在加密卷上创建一个文件系统。

  5. /etc/fstab 里添加必要的条目。

挂载和卸载

mountumount 命令不再直接支持 NFS;内置的 NFS 客户端不再存在了。提供 /sbin/mount.nfs/sbin/umount.nfs 助手的单独的 nfs-utils 软件包必须被安装。

CUPS 打印机浏览

本地子网上的 CUPS 打印机浏览可以用图形化工具 system-config-printer 来配置。它也可以用 CUPS 的 web 接口 http://localhost:631/ 来完成。

要在子网之间使用用于打印机浏览的直接广播,您可以打开客户机上的 /etc/cups/cupsd.conf 并把 BrowseAllow @LOCAL 替换为 BrowseAllow ALL

对 ATI 和 R500 的支持

基于 R500 芯片组的 ATI 图形卡只被 vesa 驱动支持,红帽企业 Linux 5 不支持它用于外部显示器、LCD 投影仪或 3D 加速。

up2date 和 yum

由于 yum(Yellowdog Updater Modified)的存在,up2date 正在被反对。因此,我们建议您修订系统里使用的任何依赖 up2date 的脚本。关于 yum 的更多信息,请用 man yum 命令来参考它的帮助页;您也可以参考 /usr/share/doc/yum-<version>/usr/share/doc/yum-metadata-parser-<version>(用 yumyum-metadata-parser 的版本号来替换 <version>)目录下的文档.

OpenLDAP 服务器和 红帽 目录服务器

红帽 目录服务器是一个基于 LDAP 的服务器,它把企业和网络的数据集中到一个与操作系统无关的、基于网络的注册表里。它用来替换 OpenLDAP 服务器组件,, which will be deprecated after 红帽企业 Linux 5. For more information about 红帽 Directory Server, refer to http://www.redhat.com/software/rha/directory/.

i810 驱动和 i830 支持

i810 驱动支持从 i810 到 i965 的所有集成的 Intel 图形芯片组。然而,对 i830(和更新的版本)芯片组的支持还有限制; i810 驱动只能够设置显示 BIOS 里列出的模式。 如果您的机器安装了 i830 或更新的芯片组,您可以运行下面的命令来决定有哪些可用的模式:

grep Mode: /var/log/Xorg.0.log

用星号(*)标记的模式是可用的。

许多笔记本的显示 BIOS 不提供匹配原始面板尺寸的模式。因此,您所选择的模式可能会使显示过度伸展、扭曲或带有黑边。所以,如果您选择的模式没有正确显示,您需要从硬件供应商那里升级 BIOS 来使原始面板尺寸正常工作。

智能卡登录

红帽企业 Linux 5 包含了对 智能卡 的支持,它提供密钥对和相关公用密钥证书的安全存储。这些密钥用一个 PIN 来保护,您需要输入它来获取智能卡上的密钥或证书。

在 红帽企业 Linux 5 环境里部署智能卡允许您配合其他的加密功能,如 Kerberos 和 S/MIME,这可以增强验证的安全性。红帽企业 Linux 5 支持下面的功能:

  • Axalto Cyberflex 32K e-Gate

  • DoD CAC Cards

要设置智能卡验证,您的网络需要安装有 红帽 目录服务器和 红帽 证书系统。关于智能卡的更多信息,请参考《 红帽企业 Linux 部署指南》的 单点登录(Single Sign-On) 章节。

Intel PRO/Wireless 3945ABG 网络连接支持

这个 红帽企业 Linux 5 发布版本包含了对 ipw3945Intel PRO/Wireless 3945ABG 网络连接)适配器的支持。红帽企业 Linux 5 附属光盘包含了支持这个适配器的驱动、常规守护进程和防火墙。

要启用对 ipw3945 无线适配器的支持,可以在 红帽企业 Linux 5 附属光盘里搜寻文件名包含 "3945" 的的软件包并安装。

rawio

rawio 是一个已经被取消的接口;然而,红帽企业 Linux 5 仍然包含对它的支持。如果您有用 rawio 执行设备访问的应用程序,我们强烈建议您修改您的程序,用 O_DIRECT 标记来打开块设备。红帽企业 Linux 5 将一直保留 rawio 接口,但将来也有可能会剔除它。

目前,文件系统的 AIO(异步 I/O)只在 O_DIRECT 或 non-buffered 模式下被支持。而且,请注意异步 poll 接口已不存在了,基于管道的 AIO 不再被支持。

ctmpc

ctmpc 是一个被取消的驱动;然而,红帽企业 Linux 5 仍将包含它。注意,以后的版本可能会剔除它。

对策略模块(Policy Modules)和 semanage 的支持

红帽企业 Linux 5 现在支持 策略模块(Policy Modules)semanage。策略模块通过 semodulecheckmodule 工具,简化了自定义策略和第三方策略的创建和分发。

semanage 是一个策略管理工具,它修改 SELinux 的配置。它也允许配置文件上下文,网络组件标签和 Linux 到 SELinux 的用户匹配。

raw 设备映射

raw 设备接口在 红帽企业 Linux 5 里已经被取消了;raw 设备映射现在通过 udev 规则进行配置。

要配置 raw 设备映射,可以在 /etc/udev/rules.d/60-raw.rules 里加入以下格式的条目:

  • 设备名称:

    ACTION=="add", KERNEL="<device name>", RUN+="raw /dev/raw/rawX %N"
    
  • 主/次号码:

    ACTION=="add", ENV{MAJOR}="A", ENV{MINOR}="B", RUN+="raw /dev/raw/rawX %M %m"
    

用您需要绑定的设备名称替换 <device name>(如:/dev/sda1)。"A" 和 "B" 是设备的主/次号码,X 是系统使用的 raw 设备号码。

如果您有一个大的、现有的 /etc/sysconfig/rawdevices 文件,您可以用下面的脚本转换它:

#!/bin/sh

grep -v "^ *#" /etc/sysconfig/rawdevices | grep -v "^$" | while read dev major minor ; do
        if [ -z "$minor" ]; then
                echo "ACTION==\"add\", KERNEL==\"${major##/dev/}\", RUN+=\"/usr/bin/raw $dev %N\""
        else
                echo "ACTION==\"add\", ENV{MAJOR}==\"$major\", ENV{MINOR}==\"$minor\", RUN+=\"/usr/bin/raw $dev %M %m\""
        fi
done
对 QLogic 的支持

红帽企业 Linux 5 支持 iSCSI HBA(Host Bus Adapters)的 QLogic 族。目前,只支持这些板卡的 iSCSI 接口(使用 qla4xxx 驱动)。

此外,红帽 目前不能把这些板卡 Ethernet 作为以太网卡来支持,因为这种功能需要 qla3xxx 驱动。这个问题将在以后的 红帽企业 Linux 5 的 minor 发行版本解决。

IBM System z 指令集

要为 31 位应用程序理想地运用 IBM System z 指令集,我们推荐您使用 gcc 的选项 -march=z900。对于 64 位的应用程序,gcc 将缺省使用 IBM System z 指令集。

Linux 的 iSeries Access

Linux 的 iSeries ODBC Driver 已经被 iSeries Access 所取代,它可以从以下网址下载:

http://www.ibm.com/eserver/iseries/access/linux/

Linux 的 iSeries Access 提供了对 iSeries 服务器的基于 Linux 的访问,它允许您:

  • 用 ODBC 驱动程序访问 iSeries 的 DB2 UDB(Universal Database

  • 从 Linux 客户端建立到 iSeries 服务器的 5250 会话

  • 通过 EDRS(Extended Dynamic Remote SQL)启动程序访问 DB2 UDB

  • 支持 32 位(i386 和 PowerPC)和 64 位(x86-64 和 PowerPC)平台

IBM Power4 iSeries

红帽企业 Linux不再支持 IBM Power4 iSeries

驱动更新程序

这部分内容包含了红帽企业 Linux 5里驱动更新程序的实施的信息。

内核模块软件包

在 红帽企业 Linux 5 里,您有可能构建更新的内核模块软件包,它依赖于当前的内核 ABI 版本而不是特定的内核发布号。用这个功能构建的内核模块可以用在一系列的 红帽企业 Linux 5 里,而不仅仅是单一的内核版本里。http://www.kerneldrivers.org/ 上的项目网站包含了打包过程的更多信息,以及几个示例。

注意,下面的问题也已经被确认:

  • 作为 kmod 软件包分发的 Bootpath 驱动不被正式地支持。

  • 目前不支持重载内核里现有的驱动。

这个问题将在将来的红帽企业 Linux 5更新里得到解决。

内核模块装载

从以前的红帽企业 Linux发行版本开始,红帽企业 Linux 5里的模块装载行为就已经更改了。和红帽企业 Linux 4 一样,红帽企业 Linux 5内核软件包里附带的模块都是签名的。然而,从另外一个内核版本里载入签名的模块已经不可能了。

这意味着初始的红帽企业 Linux 5分发版本附带的模块不能够装载在将来的更新内核里。这阻止用户在系统里装载不被支持的模块。红帽只支持分发版本包含的签名的模块。

如果您想装载旧的模块,您可以尝试不用签名来重新构建它。或者,您可以用下面的命令从二进制文件里删除签名:

objcopy -R .module_sig <module name>-mod.ko <module name>-nosig.ko

我们推荐您在试图装载未签名的模块之前,先和指定的红帽全球支持代表(Global Support Representative)商量。

国际化

这部分内容包含了 红帽企业 Linux 5 里语言支持的信息。

输入方法

在这个版本里,作为亚洲和其他语言的输入系统,SCIM(Smart Common Input Method)已经代替了 IIIMF。SCIM 的缺省 GTK 输入方法模块由 scim-bridge 提供。在 Qt 里,它是由 scim-qtimm 提供的。

下面是不同语言之间进行切换的缺省热键:

  • 所有语言:Ctrl-Space

  • 日语:Zenkaku-HankakuAlt-`

  • 韩文:Shift-Space

如果 SCIM 已经安装,它缺省为所有用户运行。

在安装或删除 SCIM 引擎软件包后,我们推荐您启动一个新的桌面会话,这样所做的修改就会反映到 SCIM 语言菜单里。

安装语言

要启用对某些亚洲语言的额外支持,您需要安装必要的语言支持包。下面是这些语言的列表以及您安装相应的语言支持包所需要运行(以根用户身份)的命令:

  • 阿萨姆语 — yum install fonts-bengali m17n-db-assamese scim-m17n

  • 孟加拉语 — yum install fonts-bengali m17n-db-bengali scim-m17n

  • 中文 — yum install fonts-chinese scim-chewing scim-pinyin scim-tables-chinese

  • Gujarati — yum install fonts-gujarati m17n-db-gujarati scim-m17n

  • Hindi — yum install fonts-hindi m17n-db-hindi scim-m17n

  • 日语 — yum install fonts-japanese scim-anthy

  • Kannada — yum install fonts-kannada m17n-db-kannada scim-m17n

  • 韩语 — yum install fonts-korean scim-hangul

  • Malayalam — yum install fonts-malayalam m17n-db-malayalam scim-m17n

  • Marathi — yum install fonts-hindi m17n-db-marathi scim-m17n

  • Oriya — yum install fonts-oriya m17n-db-oriya scim-m17n

  • Punjabi — yum install fonts-punjabi m17n-db-punjabi scim-m17n

  • Sinhala — yum install fonts-sinhala m17n-db-sinhala scim-m17n

  • 泰米尔语 — yum install fonts-tamil m17n-db-tamil scim-m17n

  • Telugu — yum install fonts-telugu m17n-db-telugu scim-m17n

当启用其他语言支持的时候,我们也推荐您安装 scim-bridge-gtkscim-qtimmscim-bridge-gtk 软件包可以避免与和旧版本 libstdc++ 关联的第三方程序之间可能的二进制冲突。

注意,其他语言的支持软件包也可以在 OpenOfficeopenoffice.org-langpack-<language code>_<locale>)和 KDE(kde-i18n-<language>)获得。这些软件包也可以通过 yum 来安装。

im-chooser

我们加入了一个叫 im-chooser 的新的用户配置工具,它允许您很容易地禁止或启用桌面上的输入方法。所以,如果您已安装了 SCIM,但您不想它在桌面上运行,您就可以用 im-chooser 禁止它。

xinputrc

在 X 启动时,xinput.sh 会读取 ~/.xinputrc/etc/X11/xinit/xinputrc,而不是搜寻 ~/.xinput.d//etc/xinit/xinput.d/ 下的配置文件。

Firefox 里对 Pango 的支持

红帽企业 Linux 5 里的 Firefox 是用 Pango 构建的,它提供了对某些脚本的更好的支持,如 Indic 和某些 CJK 脚本。

要禁止使用 Pango,您可以在启动 Firefox 之前,在环境变量里设置 MOZ_DISABLE_PANGO=1

字体

对于没有黑体的字体,现在提供了 synthetic emboldening 功能。

增加了中文的新字体:AR PL ShanHeiSun Uni(uming.ttf)和 AR PL ZenKai Uni(ukai.ttf)。缺省字体是 AR PL ShanHeiSun Uni,它包含嵌入的位图。如果您更喜欢点阵字体,把下面的内容加入到 ~/.font.conf 文件里:

<fontconfig>
  <match target="font">
    <test name="family" compare="eq">
      <string
>AR PL ShanHeiSun Uni</string>
    </test>
    <edit name="embeddedbitmap" mode="assign">
      <bool
>false</bool>
    </edit>
  </match>
</fontconfig
>                                
                        
gtk2 IM 子菜单

Gtk2 context menu IM 子菜单缺省不再出现。您可以用下面的命令启用它:

gconftool-2 --type bool --set '/desktop/gnome/interface/show_input_method_menu' true

文本方式安装的 CJK 支持

CJK(中文、日语、韩语)的渲染支持已经从 Anaconda 文本安装里删除了。文本安装方式从长远来说会逐渐消失,而更倾向于 GUI 、VNC 和 kickstart 安装方式。

gtk+ deprecation

下面的软件包已经取消或计划从 红帽企业 Linux 里删除:

  • gtk+

  • gdk-pixbuf

  • glib

。这些软件包正被取消,是因为 gtk2 可以提供更好的功能,尤其是国际化和字体处理。

在控制台上输入 CJK

如果您需要在控制台上显示中文、日语或韩语,您需要设置一个帧缓冲;随后,安装 bogl-bterm 并在帧缓冲上运行 bterm

内核注记

这部分内容注明了到 2006 年 7 月 12 号为止,2.6.9 版本(红帽企业 Linux 4 基于它) based)和 2.6.18 版本(红帽企业 Linux 5 将继承它)之间的区别。我们正在开发的,将在 2.6.18 或 2.6.19 里出现的其他的特征(如:虚拟化)在这里不会着重描述。换句话说,这个列表只显示 upstream Linux 树里包括的内容;而不包括正在开发的内容。所以,这个列表并不是一个最后的,完整的 红帽企业 Linux 5 新功能的列表,虽然它也给出了可以期待的功能的总览。而且,请注意这个部分内容只选择了 upstream 修改的重点,所以它并不完备。它没有提及底层硬件支持的增强和设备驱动信息。

下面是查看更详细信息的一个不错的资源:

http://kernelnewbies.org/LinuxChanges

性能/可伸缩性
  • Big Kernel Lock preemption (2.6.10)

  • Voluntary preemption patches (2.6.13) (subset in 红帽企业 Linux 4)

  • 对 futexes 的轻量级的 user-space 优先级继承(PI)支持, 对于实时应用程序(2.6.18)有用。

  • 新的 'mutex' 锁定原语(locking primitive)(2.6.16)

  • 高精度计时器(2.6.16)

    • 相对于在内核/timer.c 里实现的低精度超时 API,hrtimers 提供了更高解析度和精度,这依赖于系统的配置和能力。这些计时器目前用于 itimers、POSIX timers、nanosleep 和精确的 in-kernel timing。

  • Modular, on-the-fly switchable I/O schedulers (2.6.10)

    • 在 红帽企业 Linux 4(整个系统而不是 per-queue)里,这只能通过引导选项来调节。

  • 到四级(4-level)页面表的转换(2.6.11)

    • 允许 x86-64 从 512G 内存增加到 128TB。

  • 新的管道实施(2.6.11)

    • 在管道带宽里,有 30-90% 的性能提高

    • 循环缓冲(circular buffer)允许比 blocking writer 更大的缓冲

  • "Big Kernel Semaphore":把 Big Kernel Lock 转换成信号

    • 通过分解 long lock hold times 和添加 voluntary preemption 来减少传输时间

  • X86 "SMP alternatives"

  • libhugetlbfs

    • 允许应用程序在 Linux 里使用超大页(huge page)支持而不需要修改源代码

  • kernel-headers 软件包

    • 替换 glibc-kernheaders 软件包

    • 用 2.6.18 版内核新的 headers_install 特征来提供更好的适应性

    • 值得注意的内核 kernel header-related 修改:

      • 删除了 <linux/compiler.h> 头文件,因为它不再有用。

      • 删除了 _syscallX() 宏;user-space 应该使用 C 类库里的 syscall()

      • 删除了 <asm/atomic.h><asm/bitops.h> 头文件;C 编译器提供了它自己的原子内置(atomic built-in)函数,这更适合于 user-space 程序

      • 以前用 #ifdef __KERNEL__ 保护的内容现在已经用 unifdef 工具全部删除了;用来查看不应该对 user-space 可见的部分的 __KERNEL__ 定义不再有效。

      • 由于页面大小的不同,从某些架构里删除了 PAGE_SIZE 宏;user-space 应该使用 sysconf(_SC_PAGE_SIZE)getpagesize()

    • 为了提供对 user-space 的更好的适应性,删除了几个头文件和内容

其他通用特征(Generic Feature Additions)

  • kexec and kdump (2.6.13)

    • diskdumpnetdump 已经被 kexeckdump 所取代,这保证了更快的启动和可靠的用于诊断目的的 kernel vmcores。要获得更多信息和配置说明,请参考 /usr/share/doc/kexec-tools-<version>/kexec-kdump-howto.txt(用相应的 kexec-tools 包版本号代替 <version>)。

    • 注意,现在虚拟化的内核还不能够利用 kdump 功能。

  • inotify (2.6.13)

    • 它的用户界面是通过下面的系统调用:sys_inotify_initsys_inotify_add_watchsys_inotify_rm_watch

  • Process Events Connector (2.6.15)

    • 报告所有进程的 forkexec、id 的变动和退出事件给 user-space。

    • 可能发现这些事件有用的应用程序包括 accounting / auditing (for example, ELSA)、system activity monitoring(例如:top)、security 和 resource management(如 CKRM)。Semantics 给 per-user-namespace、"files as directories" 和 versioned file systems 提供 building blocks。

  • 通用的 RTC (RealTime Clock) 子系统 (2.6.17)

  • splice (2.6.17)

文件系统/LVM

  • EXT3

    • 对 ext3 里大节点的 Extended 属性的支持:在某些情况下节省空间和提高性能(2.6.11)

  • 对 Device mapper 多重路径(multipath)的支持

  • 对 NFSv3 和 NFSv4 的 ACL 的支持(2.6.13)

  • NFS:支持 wire 上的大量读和写(2.6.16)

    • Linux NFS 客户端先现在支持传输最大为 1MB 的数据。

  • VFS 的修改

  • Big CIFS 更新(2.6.15)

    • 几项性能的提高以及对 Kerberos 和 CIFS ACL 的支持

  • autofs4:提供对 user-space autofs 的直接挂载的支持(2.6.18)

  • cachefs core enablers (2.6.18)

安全性

  • SELinux 的多级安全性的实施(2.6.12)

  • 审计子系统

    • 对基于进程上下文过滤的支持(2.6.17)

    • 更多的过滤器规则比较器(2.6.17)

  • TCP/UDP getpeercon:这是一个 security-aware 的应用程序,它获取使用 IPSec 安全性关联的套接字和对应的进程的全部安全性上下文。如果只需要 MLS-level 信息或与传统 unix 系统的互用性,NetLabel 可以用来代替 IPSec。

网络

  • 添加了几个 TCP congestion 模块(2.6.13)

  • IPv6:在高级 API 里支持几个新的 sockopt / ancillary 数据(2.6.14)

  • IPv4/IPv6: UFO (UDP Fragmentation Offload) Scatter-gather approach (2.6.15)

    • UFO 是一个内核网路栈将降低把大的 UDP 数据报文分解至硬件的负荷的功能。它将降低把大的 UDP 数据报文分解为 MTU 大小的数据包的栈负荷。

  • 添加了 nf_conntrack 子系统(2.6.15)

    • netfilter 里现有的连接跟踪子系统只能够处理 ipv4。现在有两种选择来增加对 ipv6 连接跟踪支持:把所有的 ipv4 连接跟踪代码复制到 ipv6 相应的地方;或者(这是这些补丁所采用的方法)设计一个能够处理 ipv4 和 ipv6 的通用层,这就只需要编写一个子协议(TCP、UDP 等等)连接跟踪助手模块(helper module)。事实上,nf_conntrack 能够用于任何第 3 层的协议。

  • IPV6

    • RFC 3484-compliant 源地址选择(2.6.15)

    • 增加了对 Router Preference (RFC4191) 的支持(2.6.17)

    • 增加了 Router Reachability Probing (RFC4191)(2.6.17)

    • 增加了对 Multiple Routing Tables 和 Policy Routing 的支持

  • 无线功能的更新

    • 对硬件 crypto 和 fragmentation offload 的支持

    • QoS (WME) support, "wireless spy support"

    • mixed PTK/GTK

    • 对 CCMP/TKIP 和 WE-19 HostAP 的支持

    • BCM43xx 无线驱动

    • ZD1211 无线驱动

    • WE-20,Wireless Extensions 的版本 20(2.6.17)

    • 增加了与硬件无关的软件 MAC 层, "Soft MAC"(2.6.17)

    • 增加了 LEAP 验证类型

  • 增加了 generic segmentation offload (GSO)(2.6.18)

    • 在某些情况下可以提高性能,但是它需要用 ethtool 来启用

  • DCCPv6 (2.6.16)

增加了对硬件的支持

备注

这部分内容只例举了最常用的功能。

  • 对 x86-64 clustered APIC 的支持(2.6.10)

  • 对 Infiniband 的支持(2.6.11)

  • 热插拔

    • 增加了通用内存的增加/删除和对内存热插拔的支持(2.6.15)

  • 对 SATA/libata 的增强和其他硬件支持

    • 完全重新设计的 libata 错误处理器;这将使 SATA 子系统变得更加健壮,可以从更大范围的错误中进行恢复。

    • Native Command Queuing (NCQ),tagged command queuing 的 SATA 版本 - 可以同时把几个 I/O 请求发送到同一设备(2.6.18)

    • 热插拔支持(2.6.18)

  • 对 EDAC 的支持(2.6.16)

    • EDAC 的目的是检测和报告系统里发生的错误。

  • 为 Intel(R) I/OAT DMA 引擎增加了新的 ioatdma 驱动(2.6.18)

NUMA (Non-Uniform Memory Access) / Multi-core

  • Cpusets (2.6.12)

    • Cpusets 提供了把多个 CPU 和内存节点分配给多个任务的机制。Cpusets 把任务的 CPU 和内存节点的分配限制到一个任务的当前 cpuset 里。在大型系统里,这对于管理动态任务分配是必需的。

  • NUMA-aware slab allocator (2.6.14)

    • 这创建了多个节点上的 slab,且用优化分配位置的方式来管理 slab。每个节点都有自己的部分的(partial)、空闲的(free)和完全的(full)slab 的列表。所有节点的对象分配都从与节点相关的 slab 列表里选择。

  • Swap migration (2.6.16)

    • Swap migration 允许在进程运行的时候,在 NUMA 系统里的节点之间移动页面的物理位置。

  • 超大页面(Huge page)(2.6.16)

    • 增加了对超大页面的 NUMA 策略支持: 内存策略层里的 huge_zonelist() 函数提供了按 NUMA distance 排序的区(zone)列表。hugetlb 层将在这个列表里寻找拥有可用超大页面的区,且这个区要在当前 cpuset 的节点列表里。

    • 超大页面现在符合 cpuset。

  • 基于区的 VM 计数器

    • 提供基于区的 VM 统计,这对于决定区所在的内存的状态是必需的。

  • Netfilter ip_tables: NUMA-aware allocation. (2.6.16)

  • Multi-core

    • 为了在 core 之间共享缓存,增加了一个新的调度器域。这使得在这些系统里的更加智能的 cpu 调度成为可能,在某些情况下可以大幅提高性能。(2.6.17)

    • 用于 CPU 调度器的节能策略:使用 multicore/smt CPU 时,使某些软件包空闲而让其他包承担所有的工作,而不是把任务分配给所有 CPU,这样就可以减少耗电量。

( amd64 )



[1] 本内容需要在 Open Publication License, v1.0(http://www.opencontent.org/openpub/)的条件下发布。