Les sujets suivants sont abordés dans ce document :
Changements apportés au programme d'installation de Red Hat Enterprise Linux (Anaconda)
Informations générales
Changements au niveau de la prise en charge des pilotes et du matériel
Changements au niveau des paquetages
La section suivante contient des informations spécifiques au programme d'installation de Red Hat Enterprise Linux, Anaconda.
Afin de mettre à niveau un système Red Hat Enterprise Linux 3 déjà installé à la version Update 1, vous devez utiliser Red Hat Network pour mettre à jour les paquetages qui ont changé. L'utilisation d'Anaconda pour une mise à niveau à la version Update 1 n'est pas prise en charge.
Utilisez Anaconda seulement pour effectuer une nouvelle installation complète de Red Hat Enterprise Linux 3 Update 1.
Si vous copiez le contenu des CD-ROM de Red Hat Enterprise Linux 3 Update 1 (par exemple, en vue d'une installation basée sur le réseau), assurez-vous de ne copier que les CD-ROM du système d'exploitation. Ne copiez pas le CD-ROM de paquetages supplémentaires et ne copiez aucun des CD-ROM de produits en couche car une telle opération écraserait certains fichiers nécessaires au bon fonctionnement d'Anaconda.
Ces CD-ROM doivent être installés après l'installation de Red Hat Enterprise Linux.
Red Hat Enterprise Linux 3 Update 1 inclut un nouveau sous-répertoire du répertoire RedHat présent sur le CD-ROM 1. Ce sous-répertoire, nommé Updates (Mises à jour), contient tous les paquetages qui ont été ajoutés ou mis à jour lors d'une mise à jour trimestrielle. Anaconda a également été modifié pour qu'il effectue la recherche du sous-répertoire Updates lors des installations ou mises à jours.
Cette section contient des informations générales qui ne sont spécifiques à aucune autre section de ce document.
Le standard SCSI nécessite que tous les périphériques SCSI répondent au numéro d'unité logique (LUN) zéro. La détection de certains périphériques SCSI échoue lorsqu'ils sont scannés pour des numéros d'unité logique supérieurs à zéro. D'autres périphériques nécessitent que les numéros d'unité logique soient numérotés de manière séquentielle.
Le noyau de Red Hat Enterprise Linux 3 Update 1 contient une liste de périphériques qui ont été testés et ont montré qu'ils fonctionnent correctement lorsqu'ils sont scannés pour des numéros d'unité logique autres que zéro et pour des numéros d'unité logique qui ne sont pas séquentiels. Seuls les périphériques faisant partie de la liste sont scannés par défaut. Ce comportement par défaut peut être modifié pour tout le système en ajoutant l'entrée suivante dans le fichier /etc/modules.conf :
options scsi_mod max_scsi_luns=255
Après avoir modifié le fichier modules.conf, il est nécessaire de reconstruire le fichier du disque virtuel initial à l'aide du script mkinitrd. Reportez-vous à la page de manuel de mkinitrd (affichable grâce à la commande man mkinitrd) pour obtenir de plus amples informations sur la manière de créer l'image initiale du disque virtuel.
Lorsque cette option est utilisée, les numéros d'unité logique (LUN) sur le périphérique doivent être attribués de manière séquentielle, en commençant par zéro.
Le noyau de Red Hat Enterprise Linux 3 Update 1 prend désormais en charge l'accès non uniforme à la mémoire (ou NUMA de l'anglais Non-Uniform Memory Access) sur l'architecture AMD64. Alors que toutes les unités centrales (CPU) peuvent avoir accès à toute la mémoire, même sans prise en charge de l'accès non uniforme à la mémoire (NUMA), la prise en charge de NUMA présente dans le noyau mis à jour entraîne un changement de l'allocation de mémoire en faveur, autant que possible, de l'unité centrale (CPU) sur laquelle elles sont originaires, minimisant par là même le trafic inter-CPU de la mémoire. Ce faisant, la performance de certaines applications peut être considérablement améliorée. Si vous souhaitez revenir au comportement original non NUMA, spécifiez le paramètre boot-time suivant :
numa=off
Les systèmes basés sur le jeu de puces NVIDIA nForce3 (tel que le jeu de puces ASUS SK8N) ont tendance à rester suspendu lors de la détection IDE au démarrage ou à afficher des problèmes de livraison d'interruptions. Pour contourner ce problème, spécifiez le paramètre suivant lors du démarrage :
noapic
Remarques sur la compatibilité des applications sous Red Hat Enterprise Linux 3 Update 1
Le standard POSIX définis les interfaces permettant de verrouiller les fichiers ou les parties de fichiers pour assurer qu'ils ne soient pas modifiés par d'autres programmes. L'interface fcntl() avec les interfaces F_GETLK, F_SETLK et F_SETLKW peut être utilisée à cet effet. Le standard définit que toute tentative de verrouillage d'un fichier déjà verrouillé par un processus précédent doit échouer. L'interface lockf() qui est également incluse dans POSIX peut également être utilisée à de mêmes fins. L'interface flock(), qui fait partie de la même catégorie, ne fait pas partie de POSIX.
Le noyau d'origine de la version initiale de Red Hat Enterprise Linux 3 empêche non seulement le verrouillage du fichier par d'autres processus, il empêche également le verrouillage par d'autres threads dans le même processus. Ceci n'est pas correct et ne correspond pas au comportement du noyau Linux 2.6 et à la sémantique correcte de POSIX. La mise à jour dans Red Hat Enterprise Linux 3 Update 1 introduit le bon comportement pour les programmes utilisant NPTL. Il n'y a aucun impact sur les programmes qui utilisent Linux Threads ou sur les programmes qui ne sont pas multi-threaded.
Un effet secondaire du noyau d'origine de Red Hat Enterprise Linux 3 est que le champs l_pid field, qui fait partie de la structure flock renvoyée par un appel à fcntl() à l'aide de la commandeF_GETLK, contient un numéro interne au noyau pour le thread. Avec le noyau de Red Hat Enterprise Linux 3 Update 1, ce champs contient l'ID de processus pour tous les threads du processus.
Si une application multi-thread non conforme à POSIX utilise la bibliothèque NPTL (qui est le défaut) et qu'elle effectue le verrouillage de fichiers avec l'appel système fcntl(), il est possible que cette application ne fonctionne pas comme prévu lorsque le noyau Red Hat Enterprise Linux 3 Update 1 est utilisé. Red Hat recommande que toute application de ce type soit qualifiée à nouveau sur le noyau mis à jour ; en cas de problème, utilisez une des solutions suivantes :
1) Donnez à la variable d'environnement LD_ASSUME_KERNEL la valeur "2.4.19" pour le processus de l'application afin de l'empêcher d'utiliser la bibliothèque NPTL. Notez bien que si l'application ne réinitialise pas la valeur d'environnement LD_ASSUME_KERNEL, ce paramétrage sera s'appliquera également au processus enfant.
2) Modifiez l'application de manière à ce qu'elle n'attende plus de comportement en contradiction avec le standard POSIX. Cette modification permettra d'améliorer la portabilité générale du programme.
Red Hat estime qu'un nombre limité d'applications multi-thread (voire aucune) seront affectées de manière négative par les correctifs relatifs au verrouillage de fichiers qui font partie du noyau mis à jour.
Des problèmes semblables existent avec la fonctionnalité du noyau fournissant les informations d'authentification de transport pour des sockets Unix et des files d'attente de messages System V, pour les sémaphores et pour la mémoire partagée. Dans le premier cas, des appels tels que :
getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &caller, &optlen)
renvoient des informations dans la structure caller, qui est de type struct ucred. Cette structure contient un champs pid. Dans le noyau d'origine de Red Hat Enterprise Linux 3, ce champ avait une valeur interne au noyau représentant le thread qui a envoyé les données. Avec Red Hat Enterprise Linux 3 Update 1, le champ contient comme il se doit l'ID du processus -- en d'autres termes, la même valeur pour tous les threads d'un processus.
Le type struct msqid_s, défini dans <sys/msq.h>, qui est utilisé pour obtenir des informations sur une file d'attente de messages System V, contient les champs msg_lspid et msg_lrpid. Ces deux champs contenaient auparavant une valeur interne au noyau, alors qu'ils spécifient désormais le bon ID du processus appelant respectivement msgsnd() et msgrcv().
Lorsque la commande GETPID, définie dans <sys/sem.h>, est utilisée avec la fonction semctl(), le noyau d'origine de Red Hat Enterprise Linux 3 renvoie une valeur interne au noyau. Depuis Red Hat Enterprise Linux 3 Update 1, la valeur renvoyée correspond à l'ID du processus.
Le type struct shmid_s, défini dans <sys/shm.h>, qui est utilisé pour obtenir des informations sur un segment de mémoire partagé System V, contient les champs shm_lpid et shm_cpid. Ces deux champs contenaient auparavant des valeurs internes au noyau ; ils spécifient désormais le bon ID du processus effectuant la dernière opération et créant le segment.
Cette mise à jour inclut des correctifs de bogues pour un certain nombre de pilotes. Les mises à jour de pilotes les plus importantes sont énumérées ci-dessous. Dans certains cas, le pilote d'origine a été maintenu sous un nom différent et peut être utilisé en tant qu'alternative qui n'est pas le défaut, pour les entreprises qui souhaitent effectuer à une date ultérieure la migration de la configuration de leurs pilotes vers des versions plus récentes.
La migration vers les derniers pilotes devrait être terminée avant que la prochaine mise à jour de Red Hat Enterprise Linux ne soit appliquée. En effet, dans bien des cas, seul un pilote faisant partie de la dernière révision sera préservé pour chaque mise à jour.
IBM ServeRAID (pilote ips)
Le pilote scsi/ips a été mis à jour de la version 6.00.26 à la version 6.10.52
L'ancien pilote a été conservé en tant que addon/ips_60026
LSI Logic RAID (pilote megaraid)
Le pilote scsi/megaraid a été mis à jour de la version v1.18j à la version v1.18k
Le pilote scsi/megaraid2 a été mis à jour de la version v2.00.5 à la version v2.00.9
pilote audio C-Media PCI (pilote cmpci)
Le pilote sound/cmpci a été mis à jour de la Revision 5.64 à la révision 6.36
L'ancien pilote a été maintenu en tant que addon/cmpci_564
Intel PRO/1000 (pilote e1000)
Le pilote e1000 a été mis à jour de 5.1.11-k1 à 5.2.20-k1
Intel PRO/100 (pilote e100)
Le pilote e100 a été mis à jour de la version 2.3.13-k1-1 à la version 2.3.30-k1
Cette section contient une liste des paquetages de Red Hat Enterprise Linux 3 qui ont été mis à jour ou ajoutés dans la version Update 1.
Ces listes de paquetages incluent des paquetages venant de toutes les variantes de Red Hat Enterprise Linux 3. Il est possible que votre système n'inclut pas exactement tous les paquetages énumérés ici.
Les paquetages suivants ont été mis à jour depuis la version d'origine de 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
Les nouveaux paquetages suivants ont été ajoutés à 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 )