次のトピックがリリースノートに含まれます。
Red Hat Enterprise Linux インストールプログラム (Anaconda) への変更点
全般事項
ドライバー及びハードウェアサポートへの変更点
パッケージへの変更点
このセクションでは、Red Hat Enterprise Linux インストールプログラムの Anaconda に関連する点を説明します。
既に Red Hat Enterprise Linux 3 がインストールされているシステムを Update 1 にアップグレードするためには、Red Hat Network を使用して変更しているパッケージをアップデートする必要があります。Update 1 へのアップグレードに Anaconda を使用する場合はサポート対象外となります。
Anaconda は Red Hat Enterprise Linux 3 Update 1 の新規インストールを行う場合にのみ使用してください。
Red Hat Enterprise Linux 3 Update 1 CD-ROM の内容をコピーする場合は(例、ネットワークベースのインストールの準備として)、オペレーティングシステム用の CD-ROM のみをコピーするよう注意してください。エクストラ CD-ROM や一連の製品 CD-ROM はコピーしないでください。Anaconda が正しく動作するために必要となるファイルを上書きしてしまいます。
それらの CD-ROM は Red Hat Enterprise Linux のインストールが終了してからインストールします。
Red Hat Enterprise Linux 3 Update 1 には、CD-ROM #1 にある RedHat ディレクトリに新しいサブディレクトリが含まれています。Updatesという名前のこのサブディレクトリには、四半期アップデート中に追加、更新されたパッケージをすべて含んでいます。また、インストールやアップグレード中にUpdatesサブディレクトリを検索するよう Anaconda が修正されています。
このセクションでは、本リリースノートのいずれのセクションにも該当しない全般事項について説明します。
SCSI スタンダードでは、すべての SCSI デバイスが論理ユニット番号 (LUN) ゼロ に応答するよう定められています。ゼロより大きい論理ユニット番号 (LUN) をスキャンすると失敗する SCSI デバイスがあります。他のデバイスは LUN が順番に番号付けされる必要があります。
Red Hat Enterprise Linux 3 Update 1 カーネルには、ゼロ以外の LUN 及び順不同の LUN をスキャンした際に正しく作動することをテストされ、証明されたデバイスの一覧が格納されています。このリストにあるデバイスのみがデフォルトでスキャンされます。このデフォルトの動作は、/etc/modules.confファイルに次のエントリを加えるとシステム全体で無効にすることができます。
options scsi_mod max_scsi_luns=255
modules.confを変更したら、初期 ramdisk ファイルをmkinitrdスクリプトを使って再構築する必要があります。初期 ramdisk イメージの作成方法についてはmkinitrd man ページを参照してください(man mkinitrdコマンドを使用)。
このオプションを使用するときは、デバイスの LUN 番号がゼロから順番に割り当てられなければなりません。
Red Hat Enterprise Linux 3 Update 1 カーネルが AMD64 アーキテクチャで NUMA (Non-Uniform Memory Access) をサポートするようになりました。すべての CPU が NUMA サポートなしに均等にすべてのメモリにアクセスできる一方、更新カーネルに NUMA サポートがあるのはCPUができる限りローカルメモリを使用するようにするためであり、内部CPUメモリの消費が最小限に抑えられます。これにより、特定のアプリケーションでのパフォーマンスが大幅に向上します。オリジナルの非 NUMA 動作に戻す場合は、次のブート時パラメータを指定します。
numa=off
NVIDIA nForce3 チップセット(ASUS SK8N など)に基づくシステムは、ブート時における IDE の検出や、他の割り込み配信問題の表示中にハングすることで知られていました。この問題を回避するには、次のブート時パラメータを指定します。
noapic
Red Hat Enterprise Linux 3 Update 1 でのアプリケーション互換性に関する注意事項
POSIX スタンダードでは、インターフェースが他のプログラムによって同時並行して変更されないようファイルまたはファイルの一部をロックするよう定義しています。これには、F_GETLK、F_SETLK、F_SETLKWインターフェースを付けてfcntl()インターフェースを使用します。このスタンダードには、別のプロセスからすでにロックされているファイルへのロック試行は失敗しなければならないと定義されています。また、lockf()インターフェースは POSIX の一部であり、同じ目的を果たします。POSIX ではありませんが、同じカテゴリに入るのがflock()インターフェースです。
初期の Red Hat Enterprise Linux 3 リリースのオリジナルカーネルは他のプロセスからのファイルロックを防止するだけでなく、同じプロセスの他のスレッドからのロックも防止します。これは正しい動作ではなく、2.6 Linux カーネル及び 正しい POSIX セマンティクスでの動作に対応しません。Red Hat Enterprise Linux 3 Update 1 でのカーネルアップデートでは NPTL を使うプログラムに対する正しい動作を導入しています。LinuxThreads を使用するプログラム及びマルチスレッドではないプログラムへの影響はありません。
オリジナルの Red Hat Enterprise Linux 3 カーネルの副作用は、flock構造の一部であり、F_GETLKコマンドを使って fcntl() にコールで返される l_pid field には、スレッドのカーネル内部番号が含まれています。 Red Hat Enterprise Linux 3 Update 1 カーネルでは、このフィールドにプロセスのスレッドすべてのプロセス ID が含まれています。
POSIX 準拠以外のマルチスレッドアプリケーションが NPTL ライブラリ(これがデフォルト)を使用し、そのアプリケーションがfcntl() システムコールでファイルのロックを行う場合、そのアプリケーションは Red Hat Enterprise Linux 3 Update 1 カーネルを使用すると本来の意図通りに機能しない可能性があります。Red Hat はこうしたアプリケーションはすべて更新カーネルで再認可されることを推奨します。また、問題が発生した場合は、次の手順のいずれかをとってください。
1) アプリケーションプロセスが NPTL ライブラリを使わないようにするためにLD_ASSUME_KERNEL環境変数を"2.4.19"に設定します。アプリケーションがLD_ASSUME_KERNEL環境変数をリセットしない場合、この設定はすべての子プロセスによって引き継がれるので注意してください。
2) アプリケーションを修正すると、POSIX 準拠と矛盾する動作がなくなります。これによりプログラムの全体的なポータビリティが向上します。
Red Hat は更新カーネルに含まれるファイルロック修正によりネガティブな影響を受けるマルチスレッドのアプリケーションはほとんどないだろうと考えています。
Unix ソケットと System V メッセージキューの転送、セマフォ、共有メモリに証明書を提供するカーネル機能に同様の問題が存在します。1番目の場合、次のようなコールです。
getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &caller, &optlen)
caller構造で情報を返す struct ucred タイプです。この構造には pid フィールドが含まれます。オリジナルの Red Hat Enterprise Linux 3 カーネルでは、このフィールドにはデータを送信したスレッドを表すカーネル内部値がありました。Red Hat Enterprise Linux 3 Update 1 では、このフィールドは正確にプロセス ID を含むようになっています。つまり、プロセス内のスレッドすべてに同じ値となります。
<sys/msq.h>で定義され、System V メッセージキューに関する情報を取得するために使用される struct msqid_s タイプには、msg_lspid フィールドと msg_lrpid フィールドが含まれています。いずれのフィールドも以前はカーネル内部値を含んでいましたが、それぞれmsgsnd() または msgrcv() をコールするプロセスの PID を正しく含むようになりました。
<sys/sem.h> で定義される GETPID コマンドが semctl() 機能で使用されると、オリジナルの Red Hat Enterprise Linux 3 カーネルはカーネル内部値を返していました。Red Hat Enterprise Linux 3 Update 1 からは、プロセス ID を返します。
<sys/shm.h>で定義され、System V 共有メモリセグメントに関する情報を取得するために使用される struct shmid_s タイプには、shm_lpid フィールドと shm_cpid フィールドが含まれています。いずれのフィールドも以前はカーネル内部値を含んでいましたが、それぞれ最後の動作を行う、またはセグメントを作成する、プロセスの PID を正しく含むようになりました。
このアップデートにはいくつかのドライバーのバグ修正が含まれています。以下の一覧が重要なドライバーのアップデートです。いくつかは、オリジナルのドライバーが別の名前で保存されており、後日最新バージョンにドライバーの設定を移行する予定の企業などのためにデフォルトではない代替として利用できるようになっています。
ほとんどの場合、各アップデートには旧リビジョンのドライバーが 1 つしか維持されないため、次回の Red Hat Enterprise Linux アップデートが適用される前に、最新ドライバーへの移行を完了しておく必要があります。
IBM ServeRAID (ips ドライバー)
scsi/ips ドライバーは 6.00.26 から 6.10.52 に更新されています。
旧ドライバーは addon/ips_60026 として保存されています。
LSI Logic RAID (megaraid ドライバー)
scsi/megaraid ドライバーは v1.18j から v1.18k に更新されています。
scsi/megaraid2 ドライバーは v2.00.5 から v2.00.9 に更新されています。
C-Media PCI オーディオドライバー (cmpci ドライバー)
sound/cmpci ドライバーは Revision 5.64 から 6.36 に更新されています。
旧ドライバーは addon/cmpci_564 として保存されています。
Intel PRO/1000 (e1000 ドライバー)
e1000 ドライバーは 5.1.11-k1 から 5.2.20-k1 に更新されています。
Intel PRO/100 (e100 ドライバー)
e100 ドライバーは 2.3.13-k1-1 から 2.3.30-k1 に更新されています。
このセクションでは、Update 1 の一部として Red Hat Enterprise Linux 3 から更新または追加されている パッケージを一覧にしています。
このパッケージ一覧には Red Hat Enterprise Linux 3 の全種類のパッケージが含まれます。ここに記載されているパッケージがご利用のシステムに含まれていないこともあります。
以下のパッケージは オリジナルのRed Hat Enterprise Linux 3 リリースから更新されています。
XFree86
XFree86-100dpi-fonts
XFree86-75dpi-fonts
XFree86-ISO8859-14-100dpi-fonts
XFree86-ISO8859-14-75dpi-fonts
XFree86-ISO8859-15-100dpi-fonts
XFree86-ISO8859-15-75dpi-fonts
XFree86-ISO8859-2-100dpi-fonts
XFree86-ISO8859-2-75dpi-fonts
XFree86-ISO8859-9-100dpi-fonts
XFree86-ISO8859-9-75dpi-fonts
XFree86-Mesa-libGL
XFree86-Mesa-libGLU
XFree86-Xnest
XFree86-Xvfb
XFree86-base-fonts
XFree86-cyrillic-fonts
XFree86-devel
XFree86-doc
XFree86-font-utils
XFree86-libs
XFree86-libs-data
XFree86-sdk
XFree86-syriac-fonts
XFree86-tools
XFree86-truetype-fonts
XFree86-twm
XFree86-xauth
XFree86-xdm
XFree86-xfs
anaconda
anaconda-runtime
ant
ant-devel
ant-libs
clumanager
compat-gcc
compat-gcc-c++
compat-libstdc++
compat-libstdc++-devel
cpp
devlabel
ethereal
ethereal-gnome
freeradius
freeradius-mysql
freeradius-postgresql
freeradius-unixODBC
gcc
gcc-c++
gcc-g77
gcc-gnat
gcc-java
gcc-objc
gdb
glibc
glibc-common
glibc-debug
glibc-devel
glibc-headers
glibc-profile
glibc-utils
gnupg
hotplug
httpd
httpd-devel
hwdata
initscripts
iproute
kdegames
kdegames-devel
kernel
kernel-doc
kernel-smp
kernel-smp-unsupported
kernel-source
kernel-unsupported
kernel-utils
kinput2-canna-wnn6
kudzu
kudzu-devel
libf2c
libgcc
libgcj
libgcj-devel
libgnat
libobjc
libstdc++
libstdc++-devel
mdadm
mod_jk2
mod_ssl
mod_webapp
modutils
modutils-devel
net-snmp
net-snmp-devel
net-snmp-perl
net-snmp-utils
netdump
netdump-server
nptl-devel
nscd
nss_ldap
openssl
openssl-devel
openssl-perl
oprofile
oprofile-devel
quagga
quagga-contrib
quagga-devel
redhat-config-cluster
redhat-config-kickstart
redhat-config-network
redhat-config-network-tui
redhat-config-packages
redhat-config-xfree86
rh-postgresql
rh-postgresql-contrib
rh-postgresql-devel
rh-postgresql-docs
rh-postgresql-jdbc
rh-postgresql-libs
rh-postgresql-pl
rh-postgresql-python
rh-postgresql-server
rh-postgresql-tcl
rh-postgresql-test
rsync
shadow-utils
strace
struts
tomcat
tomcat-devel
tomcat-libs
up2date
up2date-gnome
ypbind
以下の新しいパッケージが Red Hat Enterprise Linux 3 Update 1 に追加されています。
jaf
jaf-devel
javamail
javamail-devel
jonas
jonas-examples
junit
junit-devel
mysql-jdbc
mysql-jdbc-tomcat
rh-cs-es
struts-webapps
tomcat-test
( x86-64 )