이 릴리즈 노트 문서에서 다루어질 사항들은 다음과 같습니다:
Red Hat 엔터프라이즈 리눅스 설치 프로그램 (아나콘다)와 관련된 새로운 사항
배포판 전반적인 사항
드라이버 및 하드웨어 지원과 관련된 사항
패키지 관련 사항
다음 부분에서는 Red Hat 엔터프라이즈 리눅스 설치 프로그램인 아나콘다 관련 사항에 대해 다루어 보겠습니다.
이미 설치된 Red Hat 엔터프라이즈 리눅스 3 시스템을 Update 1로 업그레이드하시려면 Red Hat 네트워크를 사용하여 변경된 패키지를 업데이트하셔야 합니다. 아나콘다를 사용한 Update 1 업그레이드 작업은 지원되지 않습니다.
아나콘다는 Red Hat 엔터프라이즈 리눅스 3 Update 1를 새롭게 설치할 경우에만 사용하십시오.
네트워크 기반 설치 준비를 위해 Red Hat 엔터프라이즈 리눅스 3 Update 1 CD-ROM의 내용물을 복사하신다면 해당 운영 체제를 위한 CD-ROM만 복사하셔야 합니다. 추가 CD-ROM이나 기타 제품 CD-ROM을 복사하지 마십시오. 이 CD를 복사하시면 아나콘다가 올바른 작업을 수행하는데 필요한 파일을 덮어쓸 가능성이 있습니다.
이 CD-ROM은 Red Hat 엔터프라이즈 리눅스가 설치된 이후에 설치하셔야 합니다.
Red Hat 엔터프라이즈 리눅스 3 Update 1의 CD-ROM #1에는 RedHat 디렉토리 아래에 새로운 하부 디렉토리가 포함되엇습니다. 이 디렉토리는 Updates라고 불리우며 연 4회 업데이트시 추가되거나 업데이트된 패키지를 모두 포함합니다. 아나콘다도 설치나 업데이트 과정에서 Updates 디렉토리를 검색하도록 수정되었습니다.
다음 부분에서는 배포판 일반적인 정보를 다루고 있습니다.
SCSI 표준은 모든 SCSI 장치가 논리적 단위 장치 번호 (LUN) 0에 응답하도록 합니다. 만일 0 보다 큰 번호의 논리적 단위 장치 번호 (LUN)로 검색된 경우 일부 SCSI 장치는 제대로 작동하지 않을 수도 있습니다. 다른 장치를 제대로 사용하기 위해서는 LUN이 순차적으로 번호 매겨져야 합니다.
Red Hat 엔터프라이즈 리눅스 3 Update 1 커널은 0이 아닌 LUN으로 검색되었을 때와 비순차적 LUN에서 적절히 작동한다고 검증된 장치의 목록을 포함하고 있습니다. 이 목록에 포함된 장치만 스캔되도록 기본 설정되었습니다. 이 기본 설정을 변경하시려면 /etc/modules.conf 파일에 다음과 같은 옵션을 추가하십시오:
options scsi_mod max_scsi_luns=255
modules.conf 파일을 수정 후 mkinitrd 스크립트를 사용하여 초기 램디스크 파일을 다시 작성하셔야 합니다. 초기 램디스크 이미지를 작성하는 방법에 대한 보다 자세한 정보는 man mkinitrd 명령을 입력하여 mkinitrd 맨페이지를 참조하시기 바랍니다.
이 옵션이 사용되면, 장치의 LUN 번호는 0 부터 순차적으로 할당됩니다.
Red Hat 엔터프라이즈 리눅스 3 Update 1 커널은 이제 AMD64 아키텍쳐에서 NUMA ((Non-Uniform Memory Access)를 지원합니다. 모든 CPU는 NUMA 지원 없이도 모든 메모리를 사용 가능하지만, 업데이트 커널에 NUMA 지원을 가미한다면 CPU가 가능한 로컬 메모리를 최대한 사용하기 때문에, CPU 간 메모리 소통량을 최소화할 수 있으며 따라서 특정 프로그램에서 성능이 매우 호전됩니다. NUMA 없이 원래 설정으로 되돌리기를 원하신다면, 다음과 같은 부팅 변수를 지정하시기 바랍니다:
numa=off
ASUS SK8N와 같은 NVIDIA nForce3 칩셋 기반 시스템은 종종 부팅시 IDE 검색 과정에서 멈추거나 다른 interrupt-delivery 문제를 출력한다고 알려져있습니다. 이 문제를 방지하시려면 다음 부팅 변수를 입력하십시오:
noapic
Red Hat 엔터프라이즈 리눅스 3 Update 1에서 응용 프로그램 호환성 관련 사항
POSIX 표준은 여러 다른 프로그램에 의해 파일이 동시에 변경되는 것을 방지하기 위하여 인터페이스에서 파일 잠금을 시행합니다. F_GETLK, F_SETLK, F_SETLKW 인터페이스를 사용한 fcntl() 인터페이스가 이러한 용도로 사용됩니다. 이 표준에 따르면 이미 다른 프로세스가 잠근 파일을 다시 잠금 시도하면 실패하게 됩니다. 또한 POSIX에는 lockf() 인터페이스도 포함되며, 이 인터페이스는 동일한 용도로 사용됩니다. flock() 인터페이스는 POSIX에 포함되지는 않지만 동일한 범주에 속합니다.
초기 Red Hat 엔터프라이즈 리눅스 3 배포판에 포함된 이전 커널은 다른 프로세스가 파일을 잠금 시도하는 것을 방지할 뿐만 아니라 동일한 프로세스에서 다른 스레드가 잠금 시도하는 것도 방지합니다. 이러한 작업은 올바르지 않으며 2.6 리눅스 커널 및 올바른 POSIX 표준에도 부합하지 않습니다. Red Hat 엔터프라이즈 리눅스 3 Update 1의 업데이트 커널은 NPTL을 사용하여 올바른 프로그램 작업을 돕습니다. LinuxThreads를 사용하는 프로그램과 다중-스레드되지 않은 프로그램에는 아무런 영향을 미치지 않습니다.
원 Red Hat 엔터프라이즈 리눅스 3 커널의 한가지 단점은 l_pid field 입니다. 이 영역은 F_GETLK 명령을 사용한 fcntl() 호출에 의해 반환된 flock 구조의 일부이며, 커널 내부의 스레드 수를 포함합니다. Red Hat 엔터프라이즈 리눅스 3 Update 1 커널은 이 영역에 프로세스의 모든 스레드에 대한 프로세스 ID를 보여줍니다.
POSIX 표준을 따르지 않는 다중스레드 응용 프로그램이 NPTL 라이브러리 (디폴트)를 사용하는 경우 해당 응용 프로그램이 fcntl() 시스템 호출을 사용하여 파일 잠금을 수행하게되면, Red Hat 엔터프라이즈 리눅스 3 Update 1 커널이 사용될 경우 응용 프로그램이 제대로 작동하지 않을 수도 있습니다. Red Hat은 업데이트된 커널에서 이러한 응용 프로그램을 다시 검증하신 후 만일 문제가 계속 발생한다면 다음 중 한가지 방법을 시도해보시기를 권장합니다:
1) NPTL 라이브러리 사용을 막는 응용 프로그램 프로세스의 LD_ASSUME_KERNEL 환경 변수를 "2.4.19"로 설정하십시오. 만일 응용 프로그램이 LD_ASSUME_KERNEL 환경 변수를 재설정하지 않는다면, 이 설정은 모든 자식 프로세스에 전달될 것입니다.
2) 응용 프로그램을 POSIX 표준에 준수하도록 수정하십시오. 이렇게 함으로서 프로그램의 전반적인 이식성이 향상될 수 있습니다.
Red Hat은 업데이트된 커널에서 수정된 파일 잠금 기능은 다중 스레드된 응용 프로그램에 아무런 부정적인 영향을 미치지 않을 것으로 봅니다.
유닉스 소켓 및 System V 메시지 큐, 세마포어 및 공유 메모리 전송을 위해 인증 증명(credential)을 제공하는 커널 기능에 유사한 문제가 존재합니다. 우선 다음과 같은 호출은:
getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &caller, &optlen)
struct ucred 형식인 caller 구조로 정보를 출력하며, 이 구조는 pid 영역을 포함합니다. 원래의 Red Hat 엔터프라이즈 리눅스 3 커널에서 이 영역은 자료를 보낸 스레드를 표시하는 커널 내부의 값으로 채워집니다. Red Hat 엔터프라이즈 리눅스 3 Update 1에서는 이 영역이 올바른 프로세스 ID로 출력됩니다 -- 즉 한 프로세스에서 모든 스레드가 동일한 값으로 보여집니다.
<sys/msq.h>에 정의된 struct msqid_s 형식은 System V 메시지 큐에 대한 정보를 얻는데 사용되며, msg_lspid 영역과 msg_lrpid 영역을 포함하고 있습니다. 두 영역은 이전에 커널 내부 값을 나타내었지만, 이제는 각각 msgsnd()와 msgrcv()를 호출하는 프로세스의 PID를 올바르게 나타냅니다.
<sys/sem.h>에 정의된 GETPID 명령을 semctl() 호출과 함께 사용시 원래의 Red Hat 엔터프라이즈 리눅스 3 커널은 커널 내부 값을 출력하였습니다. 그러나 Red Hat 엔터프라이즈 리눅스 3 Update 1는 프로세스 ID를 반환합니다.
<sys/shm.h>에 정의된 struct shmid_s 형식은 시스템 V 공유 메모리 세그먼트와 관련된 정보를 얻는데 사용되며, shm_lpid 영역과 shm_cpid 영역을 포함하고 있습니다. 두 영역은 이전에 커널 내부 값을 나타내었지만, 현재는 각각 이전 작업을 수행한 프로세스와 세그먼트를 생성한 프로세스의 PID를 올바르게 보여주고 있습니다.
이 업데이트 버전에는 다수의 드라이버 문제점이 수정되었습니다. 중요한 드라이버 업데이트 목록을 아래에서 찾으실 수 있습니다. 드라이버 설정을 나중에 업데이트하려는 분들을 위하여 일부 원래 드라이버의 이름을 변경 후 디폴트가 아닌 선택 항목으로 두었습니다.
대부분의 경우 각 업데이트마다 오직 한 버전 이전의 드라이버만 보존되므로, 다음 Red Hat 엔터프라이즈 리눅스 업데이트 받기 이전에 최신 드라이버로 업데이트하셔야 합니다.
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 드라이버는 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 버전으로 업데이트되었습니다
다음 부분에서는 Red Hat 엔터프라이즈 리눅스 3에서 Update 1으로 업데이트되거나 추가된 패키지 목록을 다루고 있습니다.
이 패키지 목록에는 Red Hat 엔터프라이즈 리눅스 3의 모든 패키지를 포함합니다. 여러분의 시스템에는 이 목록에 포함된 패키지가 모두 포함되지 않을 수도 있습니다.
원버전 Red Hat 엔터프라이즈 리눅스 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 엔터프라이즈 리눅스 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 )