Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

Guide de planification de migration

Red Hat Enterprise Linux 6

Migrer vers Red Hat Enterprise Linux 6

Édition 6.1

Logo

Red Hat Inc.

Résumé

Ce guide documente la migration de systèmes exécutant Red Hat Enterprise Linux 5 vers Red Hat Enterprise Linux 6.

Chapitre 1. Introduction

Le guide de planification de migration documente la migration de toute version mineure d'une installation de Red Hat Enterprise Linux 5 vers Red Hat Enterprise Linux 6 en soulignant les changements de comportement clés méritant d'être mentionnés lors d'une migration.
Ce guide à été conçu dans le but de faciliter l'utilisation de Red Hat Enterprise Linux 6 en fournissant des directives sur les changements de produits entre Red Hat Enterprise Linux 5 et Red Hat Enterprise Linux 6. Toutefois, ce guide n'est pas conçu pour expliquer toutes les nouvelles fonctionnalités : il se concentre sur le comportement des applications ou composants qui faisaient partie de Red Hat Enterprise Linux 5 et ont changés dans Red Hat Enterprise Linux 6, ou lorsque leurs fonctionnalités ont été remplacées par un autre paquetage.

1.1. Red Hat Enterprise Linux 6

Red Hat Enterprise Linux est la plate-forme de choix pour l'informatique open source. Vendu par abonnement, Red Hat Enterprise Linux offre une valeur sûre et continue, et est certifié par les meilleurs fournisseurs de logiciels et de matériel d'entreprise. Du bureau jusqu'au centre de données, Red Hat Enterprise Linux associe les innovations de la technologie de l'open source à la stabilité d'une véritable plate-forme de niveau entreprise.
Red Hat Enterprise Linux 6 est la nouvelle génération de la suite complète des systèmes d'exploitation de Red Hat, conçu pour répondre à une informatique de missions critiques en entreprise et certifié par les meilleurs fournisseurs de logiciels et de matériel. Cette version est disponible en tant que kit unique sur les architectures suivantes :
  • i386
  • AMD64/Intel64
  • System z
  • IBM Power (64-bit)
Dans cette version, Red Hat rassemble des améliorations de serveurs, de systèmes, et de l'expérience open source de Red Hat en général. Voici quelques-unes des nombreuses améliorations et nouvelles fonctionnalités incluses dans cette version :
Gestion de l'alimentation

Noyau sans tic et améliorations à la pile d'applications afin de réduire les réveils, mesure de la consommation d'énergie avec PowerTOP, gestion de l'alimentation (ASPM, ALPM), et paramétrage du système adaptatif avec Tuned.

Réseau de nouvelle génération

Complète prise en charge d'IPv6 (NFS 4, CIFS, support mobile [RFC 3775], support ISATAP), FCoE, iSCSI, ainsi qu'une nouvelle pile sans fil mac80211 améliorée.

Fiabilité, disponibilité, facilité de service

Améliorations du niveau du système avec la collaboration de l'industrie informatique afin de tirer profit au maximum des capacités matérielles RAS et des architectures NUMA.

Contrôle et gestion de précision

Planificateur amélioré et meilleure gestion des ressources du noyau via CFS (Completely Fair Scheduler) et CG (Control Groups).

Systèmes de fichiers modulables

ext4 est le système de fichiers par défaut, et xfs offre robustesse, évolutivité, et une performance de haut niveau.

Virtualisation

KVM inclut des améliorations de performance ainsi que de nouvelles fonctionnalités, sVirt protège l'hôte, les MV, et les données d'une violation de la sécurité d'un invité, SRIOV et NPIV offre une utilisation virtuelle des périphériques physiques de haute performance, et libvirt appuie la fonctionnalité du contrôleur CG du noyau.

Améliorations de SELinux

SELinux inclut une facilité d'utilisation améliorée, la mise en sandbox d'applications, ainsi qu'une grande amélioration de la couverture des services du système, tandis que SSSD offre un accès unifié pour les services d'identité et d'authentification ainsi que la mise en cache pour une utilisation hors-ligne.

Prise en charge du développement et de l'exécution

SystemTap (permet l'instrumentalisation d'un noyau en cours d'exécution sans recompilation), ABRT (simple collecte d'informations concernant les bogues), et améliorations à GCC (version 4.4.3), glibc (version 2.11.1), et GDB (version 7.0.1).

1.2. Compatibilité d'applications

Cette version de Red Hat Enterprise Linux fournit des dépendances de manière à ce que les applications conçues pour être exécutées sur de plus anciennes versions du système d'exploitation puissent continuer à s'exécuter avec un minimum d'interruptions. Pour ce faire, de plus anciennes versions des bibliothèques de clés ont été incluses afin de préserver les interfaces héritées qui auraient pu changer entre cette version et les versions plus anciennes. Ces bibliothèques servent en tant que dépendances principalement pour les applications écrites en C/C++.
Veuillez remarquer qu'il n'est pas nécessaire de tester ou de certifier à nouveau les applications entre les versions mineures de Red Hat Enterprise Linux. La politique de compatibilité de Red Hat Enterprise Linux garantit que les applications exécutées sur une version pourront continuer à être exécutées tout au long du cycle de vie de la version. Par exemple, les applications certifiées sur Red Hat Enterprise Linux 6 seront totalement compatibles avec Red Hat Enterprise Linux 6.1 et ainsi de suite.
Reportez-vous à la table suivante pour obtenir des détails sur ces paquetages de compatibilité :

Tableau 1.1. Bibliothèques de compatibilité

Paquetage Description
compat-db La bibliothèque de compatibilité de bases de données de Berkeley, Berkeley DB. La base de données de Berkeley (Berkeley DB) est un outil de programmation qui offre une prise en charge implantée de bases de données pour des applications client/serveur. Ce paquetage contient diverses versions de Berkeley DB qui avaient été incluses dans de précédentes versions.
compat-expat1 Expat est un analyseur XML orienté vers les flux. La bibliothèque de ce paquetage est compatible avec les versions précédentes.
compat-glibc glibc est la bibliothèque C utilisée pour les appels système et autres commodités de base. Ce paquetage offre compatibilité (et bibliothèques d'exécution) pour la compilation de binaires qui requièrent de plus anciennes versions de glibc et leur permet de s'exécuter sur cette version de Red Hat Enterprise Linux.
compat-libf2c-34 Ce paquetage offre de plus anciennes versions des bibliothèques partagées Fortran 77, celles-ci sont nécessaires pour exécuter des programmes Fortran 77 dynamiquement liés.
compat-libgcc-296 Contient la bibliothèque 2.96 libgcc.a et des fichiers objets de prise en charge pour conserver la compatibilité avec de plus anciennes versions de GCC.
compat-libgfortran-41 Ce paquetage inclut une bibliothèque d'exécution Fortran 95 pour la compatibilité avec les applications Fortran compilée avec GCC 4.1.x.
compat-libstdc++-295 Offre la compatibilité avec la bibliothèque C++ standard GNU version 2.95.
compat-libstdc++-296 Offre la compatibilité avec la bibliothèque C++ standard GNU version 2.96.
compat-libstdc++-33 Offre la compatibilité avec la bibliothèque C++ standard GNU version 3.3.
compat-libtermcap Ce paquetage offre la compatibilité avec les programmes basés termcap plus anciens.
compat-openldap OpenLDAP est une suite d'open source d'applications et d'outils de développement LDAP. Le paquetage compat-openldap inclut des anciennes versions des bibliothèques partagées OpenLDAP qui peuvent être requises par certaines applications.
openssl098e Ce paquetage fournit OpenSSL 0.98e, qui peut être requis pour certaines applications SSL.

Chapitre 2. Installation

Cette section souligne les différences entre les procédures d'installation de Red Hat Enterprise Linux 6 et de Red Hat Enterprise Linux 5. Selon la version de Red Hat Enterprise Linux 5 à partir de laquelle vous êtes en train d'émigrer, toutes les options et techniques répertoriées ici pourraient ne pas concorder avec votre environnement, celles-ci peuvent en effet déjà être présentes dans votre environnement Red Hat Enterprise Linux 5.

2.1. Options de démarrage et du noyau

  • Il est possible d'effectuer des tests de mémoire avant d'installer Red Hat Enterprise Linux en saisissant memtest86 à l'invite boot:. Cette option exécute le logiciel de test de mémoire autonome Memtest86 au lieu de l'installateur de système Anaconda. Une fois démarré, le test de mémoire Memtest86 se fera en boucle continue jusqu'à ce que vous appuyez sur la touche Esc.
  • Le paramètre de noyau rdloaddriver est maintenant nécessaire afin de définir l'ordre de chargement des modules, au lieu de l'ancienne option scsi_hostadapter.

2.2. Installateur graphique

Cette section décrit les comportements ayant changé dans l'installateur graphique.

2.2.1. Périphériques et disques

  • L'utilisation du nom de périphérique /dev/hdX est obsolète sur les architectures i386 et x86_64 pour disques IDE, et se trouve maintenant sur /dev/sdX. Ce changement ne s'applique pas à l'architecture PPC.
  • Si vous rencontrez des difficultés car l'installation ne détecte pas la carte Smart Array, saisissez linux isa à l'invite de l'installateur. Cela vous permettra de sélectionner la carte requise manuellement.
  • Tandis que les anciens disques IDE prenaient en charge jusqu'à 63 partitions par périphérique, les périphériques SCSI sont limités à 15 partitions par périphérique. Anaconda utilise le nouveau pilote libata de la même manière que le reste de Red Hat Enterprise Linux ; ainsi, il n'est pas en mesure de détecter plus de 15 partitions sur un disque IDE pendant le processus d'installation ou de mise à jour. Si vous effectuez une mise à jour sur un système possédant plus de 15 partitions, vous devrez sans doute migrer le disque vers un LVM (Logical Volume Manager).
  • Un changement dans la manière dont le noyau gère les périphériques de stockage signifie que les noms de périphériques tels que /dev/hdX ou /dev/sdX peuvent être différents des valeurs utilisées dans des versions antérieures. Anaconda résout ce problème en se fiant aux étiquettes de partitions. Si ces étiquettes ne sont pas présentes, alors Anaconda avertit que ces partitions devraient être étiquetées. Les systèmes qui utilisent LVM (Logical Volume Management) et le mappage de périphériques ne nécessitent habituellement pas de ré-étiquetage.
  • La prise en charge de l'installation sur des périphériques blocs chiffrés est incluse, y compris le système de fichiers racine.
  • Tous les contrôleurs RAID IDE ne sont pas pris en charge. Si votre contrôleur RAID n'est pas encore pris en charge par dmraid, vous pouvez combiner des disques en matrices RAID en configurant le RAID logiciel Linux. Pour les contrôleurs pris en charge, configurez les fonctions RAID dans le BIOS de l'ordinateur.
  • La version de GRUB incluse dans Red Hat Enterprise Linux 6 prend maintenant ext4 en charge, Anaconda permet donc d'utiliser le système de fichiers ext4 sur n'importe quelle partition, y compris sur les partitions /boot et root.

2.2.2. Kickstart

Cette section décrit les modifications de comportement concernant les installations automatiques (Kickstart).

2.2.2.1. Modifications du comportement

  • Auparavant, un fichier Kickstart qui ne possédait pas de ligne réseau faisait supposer que le DHCP devrait être utilisé afin de configurer le réseau. Ceci était inconsistant avec le reste de Kickstart car toutes les autres lignes manquantes signifient que l'installation devrait s'arrêter et demander une entrée. Le fait de ne pas avoir de ligne réseau signifie que l'installation va s'arrêter et demander qu'une entrée soit saisie. L'option --bootproto=query est aussi obsolète. Si vous souhaitez continuer à utiliser DHCP sans interruption, ajoutez network --bootproto=dhcp à votre fichier Kickstart.
  • Traditionnellement, les disques sont référencés à Kickstart par un nom de noeud de périphérique (tel que sda). Le noyau Linux possède maintenant une méthode plus dynamique dans laquelle la consistance des noms de périphériques n'est pas garantie après des redémarrages, ceci peut ainsi compliquer l'utilisation de scripts Kickstart. Pour obtenir une dénomination de périphérique stable, vous pouvez utiliser /dev/disk au lieu d'un nom de noeud de périphérique. Par exemple, au lieu de :
    part / --fstype=ext4 --onpart=sda1
    
    Vous pouvez utiliser une entrée similaire à l'une des entrées suivantes :
    part / --fstype=ext4 --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
    part / --fstype=ext4 --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1
    
    Cela permet de faire référence de manière consistante à des disques ayant plus de sens que simplement sda. Ce qui est particulièrement utile dans des environnements de stockage de grande taille.
  • Vous pouvez aussi utiliser des entrées similaires aux shells pour faire référence aux disques. Ceci est avant tout dans le but de faciliter l'utilisation des commandes clearpart et ignoredisk dans des environnements de stockage de grande taille. Par exemple, au lieu de :
    ignoredisk --drives=sdaa,sdab,sdac
    
    Vous pouvez utiliser une entrée similaire à l'une des entrées suivantes :
    ignoredisk --drives=/dev/disk/by-path/pci-0000:00:05.0-scsi-*
    
  • Kickstart sera interrompu avec une erreur dans de plus nombreux cas que dans les versions précédentes. Par exemple, si vous faites référence à un disque qui n'existe pas, l'installation s'interrompra et vous informera de l'erreur. Ceci est conçu afin de détecter les erreurs dans les fichiers Kickstart avant qu'elles ne conduisent à de plus grands problèmes. Il en résulte un effet secondaire, les fichiers conçus pour être génériques à travers différentes configurations de machines peuvent échouer plus fréquemment. Ceux-ci devraient être gérés au cas par cas.
  • Le fichier /tmp/netinfo utilisé pour les informations de réseau Kickstart a été supprimé. Anaconda utilise maintenant NetworkManager pour la configuration d'interface, et stocke la configuration dans les fichiers ifcfg dans /etc/sysconfig/network-scripts/. Il est possible d'utiliser ce nouvel emplacement comme source de paramètres réseau pour les scripts %pre et %post.

2.2.2.2. Modifications des commandes

Cette section répertorie les modifications les plus importantes apportées aux commandes et à leurs options :
  • L'option network --device peut maintenant faire référence aux périphériques avec les adresses MAC au lieu d'utiliser les noms de périphériques. Tout comme les disques, les noms des périphériques réseau peuvent changer après des redémarrages en fonction de l'ordre dans lequel les périphériques sont examinés. Pour permettre une dénomination consistante dans Kickstart, vous pouvez utiliser une entrée similaire à ce qui suit :
    network --device=00:11:22:33:44:55 --bootproto=dhcp
    
  • Les commandes langsupport, key et mouse ont été supprimées. L'utilisation de ces commandes résultera en une erreur de syntaxe. La commande monitor est obsolète aussi.
    À la place de langsupport, ajoutez le groupe approprié à la section %packages de votre fichier Kickstart. Par exemple, pour inclure la prise en charge du français, ajoutez @french-support.
    Il n'y a pas de remplacement pour l'option key, la clé d'installation n'est en effet plus demandée lors de l'installation. Supprimez simplement cette option de votre fichier.
    Les commandes mouse et monitor ne sont pas requises car X peut détecter et configurer les paramètres automatiquement. Pour cette même raison, la commande xconfig --resolution= n'est plus valide, celles-ci peuvent être supprimées du fichier en toute tranquillité.
  • Les commandes part --start et part --end sont maintenant obsolètes et n'ont aucun effet. Anaconda ne permet plus la création de partitions sur des limites de secteur spécifiques. Si vous avez besoin d'un niveau de partitionnement plus strict, utilisez un outil externe dans %pre et faites en sorte qu'Anaconda utilise des partitions existantes avec la commande part --onpart. Sinon, créez des partitions d'une certaine taille, ou utilisez --grow.
  • Au lieu de créer des groupes manuellement dans %post, vous pouvez maintenant utiliser la commande group pour qu'elle les crée pour vous. Pour obtenir plus de détails, veuillez vous rapporter à la documentation Kickstart complète.
  • L'algorithme d'autopart par défaut a changé. Pour toutes les machines, autopart créera une partition /boot (ou une autre partition de chargeur de démarrage spécifique, comme l'architecture la requiert) et une partition swap. Pour les machines possédant au moins 50 Go d'espace disque libre, autopart créera une partition racine (ou root) de taille raisonnable (/), puis le reste sera ssigné à /home. Pour ceux possédant des machines contenant moins d'espace, seule la partition racine (/) sera créée.
    Si vous ne souhaitez pas qu'un volume /home soit créé pour vous, n'utilisez pas autopart. Spécifiez au contraire /boot, swap et /, en vous assurant ainsi que le volume racine puisse grandir comme nécessaire.
  • Anaconda inclut maintenant une nouvelle interface filtrant le stockage pour contrôler quels périphériques sont visibles pendant l'installation. Cette interface correspond aux commandes existantes ignoredisk, clearpart et zerombr. Comme ignoredisk est optionnel, l'exclure du fichier Kickstart ne fera pas apparaître l'interface utilisateur pendant l'installation. Si vous souhaitez utiliser cette interface, ajoutez :
    ignoredisk --interactive
    
  • L'option --size=1 --grow du fichier /tmp/partition-include ne peut plus être utilisée. Vous devez spécifier une taille par défaut raisonnable et les partitions s'agrandiront en conséquence.

2.2.2.3. Modifications des paquetages

Ces changements affectent la section %packages :
  • Les arguments --ignoreDeps et --resolveDeps ont été supprimés. Anaconda résout les dépendances automatiquement, mais ignorera l'installation des paquetages qui possèdent des dépendances non-résolues.
  • Si vous souhaitez obtenir le même ensemble de paquetages via Kickstart que vous auriez pu obtenir dans une installation GUI par défaut acceptant toutes les valeurs par défaut, ajoutez ce qui suit :
    %packages --default
    %end
    
  • Optionnellement, vous pouvez aussi spécifier l'architecture des paquetages que vous souhaitez installer pour des installations multi-architectures. Par exemple :
    %packages
    glibc.i686
    %end
    
    Ceci ajoutera le paquetage glibc à l'ensemble, ce qui peut se révéler utile sur un système x86-64 qui requiert des paquetages x86 pour des raisons liées à la compatibilité.
  • Il n'est pas possible d'auditer et de migrer tous les paquetages et groupes dans la section %packages. Certains groupes et paquetages ont été supprimés, certains ont été ajoutés, et d'autres ont changé de nom. Veuillez vous reporter aux Notes de publications pour plus de détails.

2.2.2.4. Modifications des scripts

Ces modifications affectent l'utilisation des scripts %pre, %post et %traceback.
  • La journalisation de erreurs pendant l'exécution de scripts a été améliorée. Les scripts ne sont plus supprimés après leur exécution, ils peuvent ainsi être examinés. Ceci est particulièrement utile pour les systèmes sur lesquels des scripts sont générés de manière dynamique car vous pouvez maintenant voir ce qui a été exécuté. De plus, les sorties stderr et stdout sont tout le temps journalisées et ce pour chaque script. Ceci a un effet secondaire important : si vos scripts utilisent un programme interactif, vous devrez passer --logfile=/dev/tty3 à l'en-tête de vos scripts. Sinon, vous ne serez pas en mesure d'interagir avec le programme.

2.2.2.5. Modification de la syntaxe

Les modifications apportées au coeur de la syntaxe de Kickstart sont assez rares. Cependant, deux changements importants dans la syntaxe sont à connaître :
  • L'option %include peut maintenant accepter une URL en tant qu'argument, en plus d'un nom de fichier.
  • Les sections %packages, %post, %pre and %traceback devraient avoir une option %end à la fin. Auparavant, ces sections n'avaient pas de jeton (de l'anglais « token ») de fin explicite, et se terminaient lorsqu'une autre commençait. À partir de Red Hat Enterprise Linux 6, l'utilisation de %end est requise. Les fichiers ne possédant pas le jeton %end échoueront.

2.2.2.6. Récapitulatif des différences

Cette section répertorie les différences des commandes et options dans Red Hat Enterprise Linux 6 :
Commandes supprimées :
  • key
  • langsupport
  • mouse
Commandes obsolètes :
  • monitor
  • xconfig --resolution
Commandes ajoutées :
  • fcoe
  • group
  • rescue
  • sshpw
  • updates

2.2.2.7. pykickstart

Le paquetage pykickstart contient des utilitaires qui peuvent être utilisés pour faciliter les migrations. Assurez-vous de bien avoir installé le paquetage le plus récent. La commande ksverdiff possède une version de syntaxe de début et de fin, et rapporte les différences des commandes et options entre deux versions données. Celle-ci fait état des commandes et options nouvelles, obsolètes, et de celles qui ont été supprimées. Par exemple :
$ ksverdiff --from RHEL5 --to RHEL6

The following commands were removed in RHEL6:
langsupport mouse key

The following commands were deprecated in RHEL6:
monitor

The following commands were added in RHEL6:
sshpw group rescue updates fcoe
 ...
Vous pouvez aussi vérifier la validité de votre fichier Kickstart avec la commande ksvalidator. Cette commande vérifie la validité du fichier par rapport à toute version de syntaxe de Kickstart que vous spécifierez. Cependant, elle ne peut pas vous informer des problèmes qui ne surviendraient que lors de l'installation, par exemple si vous spécifiez part --ondisk=sdr et que ce périphérique n'existe pas. Exemple d'utilisation :
$ ksvalidator --version RHEL6 my-rhel5-ks.cfg

2.2.3. Mise en réseau

Cette section décrit les comportements qui ont changé dans l'installateur graphique et qui concernent le réseau.
  • Anaconda utilise maintenant NetworkManager pour la configuration des interfaces réseau pendant l'installation. L'écran de configuration de l'interface réseau principal dans Anaconda a été supprimé. Les utilisateurs ne se voient demander les détails de la configuration réseau que si ceux-ci se révèlent être nécessaires pendant l'installation. Les paramètres utilisés pendant l'installation sont ensuite écrits sur le système pour une utilisation ultérieure.
  • Lors de l'utilisation de boot.iso pour démarrer l'installateur, l'écran de sélection de la source apparaît même si toutes les méthodes d'installation par défaut sont choisies.
  • Lorsque vous effectuez un démarrage PXE et que vous utilisez un fichier .iso monté via NFS pour le média d'installation, ajoutez repo=nfs:server:/path/ à la ligne de commande. Les fichiers install.img et product.img doivent aussi être extraits et/ou placés dans le répertoire nfs:server:/path/images/. Le fichier product.img contient des définitions de variantes et diverses classes d'installation.
  • Certains systèmes avec de multiples interfaces réseau peuvent ne pas assigner eth0 à la première interface réseau comme reconnue par le BIOS du système. Ceci peut causer à l'installateur de tenter d'utiliser une interface réseau autre que celle initialement utilisée par PXE. Pour modifier ce comportement, utilisez ce qui suit dans les fichiers de configuration pxelinux.cfg/* :
    IPAPPEND 2 APPEND
          ksdevice=bootif
    
  • Cette option de configuration fait que l'installateur utilisera la même interface réseau que celle utilisée par le BIOS du système et PXE. Vous pouvez aussi utiliser l'option suivante, qui fera que l'installateur utilisera le premier périphérique réseau qu'il trouve lié à un interrupteur réseau :
     
    ksdevice=link
    

2.2.4. Abonnements aux produits et mises à jour du contenu

Red Hat Enterprise Linux 6 présente un service mis à jour et plus flexible pour la distribution de contenu et la gestion des abonnements. Cette section décrit les changements apportés au service des contenus.
  • L'environnement hébergé par Red Hat Network est mis à jour à partir des abonnements basés sur canaux et basés sur les « produits et quantités » (product-and-quantity). Le nouveau RHN basé sur certificats a reconçu les outils client pour la gestion des abonnements et systèmes et fonctionne avec le nouveau réseau CDN (Subscription and Content Delivery Network).
    Le RHN traditionnel, basé sur canaux, est toujours disponible sous le nom RHN Classic.
    Ces deux services d'abonnement sont disponibles sur la même plate-forme, avec des technologies parallèles. Ainsi, tous les abonnements peuvent être enregistrés et gérés d'une manière ou de l'autre.
    Les environnements utilisant un serveur Satellite ou proxy continueront d'utiliser le système traditionnel basé sur canaux et enregistreront les systèmes avec RHN Classic.
  • Une nouvelle option de serveur de contenu, Red Hat Network Classic, a été ajoutée à l'assistant firstboot. Elle utilise RHN basé sur canaux plutôt que le RHN Mis à jour et CDN. L'option de Red Hat Network par défaut utilise la nouvelle plate-forme de gestion Red Hat Network basé sur certificats.
  • RHN basé sur certificats et RHN Classic sont interopérables. Si un système est enregistré à l'aide d'un service, l'autre service le reconnaîtra et ne générera pas d'avertissement. Cependant, ces services ne fonctionnent pas simultanément. Un système doit être enregistré avec un seul et unique service d'abonnement. Il ne peut pas être enregistré avec les deux.
    Il n'y a pas de chemin de migration direct depuis un système utilisant RHN Classic vers le nouveau Red Hat Network basé sur certificats. Pour déplacer un système depuis un service vers un autre, il existe deux options :
    • Mettre à jour le système sur Red Hat Enterprise Linux 6.1 ou une version plus récente à l'aide d'un ISO de démarrage plutôt qu'avec yum.
    • Supprimer manuellement le système de RHN Classic, supprimer l'enregistrement hôte, puis enregistrer le système sur Red Hat Network basé sur certificats à l'aide des outils du gestionnaire des abonnements Red Hat Subscription Manager.
  • Un nouvel ensemble d'outils client, l'interface utilisateur graphique Red Hat Subscription Manager et CLI, sont fournit avec Red Hat Enterprise Linux 6.1 pour gérer les abonnements sur RHN basé sur certificats. Les outils existants rhn_* sont toujours disponibles pour manipuler les systèmes gérés par RHN Classic.

2.3. Installateur basé texte

L'option d'installation en mode texte dans Red Hat Enterprise Linux 6 est significativement plus simple que dans les versions précédentes. L'installation en mode texte omet maintenant les étapes plus compliquées qui, auparavant, faisaient partie du processus, et vous offre une expérience plus pure et directe. Cette section décrit les changements de comportement lors de l'utilisation de l'installateur basé sur texte :
  • Maintenant, Anaconda sélectionne automatiquement les paquetages provenant uniquement de la base et des groupes de base. Ces paquetages suffisent à assurer que le système est opérationnel à la fin du processus d'installation, et est prêt à installer les mises à jour et les nouveaux paquetages.
  • Anaconda présente toujours l'écran initial des anciennes versions qui vous permet de spécifier où Ananconda devrait installer Red Hat Enterprise Linux sur votre système. Vous pouvez choisir d'utiliser un disque entier, de supprimer des partitions Linux existantes, ou d'utiliser l'espace resté libre sur le disque. Cependant, Ananconda paramètre maintenant automatiquement la structure des partitions et ne vous demande pas d'ajouter ou de supprimer des partitions ou des systèmes de fichiers de la structure de base. Si vous nécessitez une structure personnalisée lors de l'installation, vous devriez effectuer une installation graphique sur une connexion VNC ou une installation Kickstart. Les options plus avancées, comme la gestion de volumes logiques (LVM), les systèmes de fichiers cryptés, et les systèmes de fichiers redimensionnables ne sont disponibles que dans le mode graphique ou avec Kickstart.
  • Anaconda effectue maintenant la configuration du chargeur de démarrage automatiquement dans l'installateur basé sur texte.
  • Les installations en mode texte utilisant Kickstart sont effectuées de la même manière que dans les versions précédentes. Cependant, comme la sélection de paquetages, le partitionnement avancé, et la configuration du chargeur de démarrage sont maintenant automatisées dans le mode texte, Anaconda ne peut pas vous demander de saisir les informations dont il a besoin pendant ces étapes. Vous devrez ainsi vous assurer que le fichier Kickstart contienne bien les configurations de paquetage, de partitionnement, et du chargeur de démarrage. S'il venait à manquer l'une de ces informations, Anaconda se fermerait avec un message d'erreur.

Chapitre 3. Stockage et systèmes de fichiers

3.1. RAID

Mises à jour

La mise à niveau d'un ensemble dmraid vers un ensemble mdraid n'est pas prise en charge. Un avertissement s'affichera lorsqu'il sera tenté d'effectuer une mise à jour de ce type . Les mises à jour d'ensembles mdraid existants et la création de nouveaux ensembles mdraid sont possibles.

Le nouveau superbloc par défaut peut causer des problèmes lors des mises à niveau d'ensembles. Ce nouveau format de superblocs (utilisé sur tous les périphériques excepté lors de la création d'une partition RAID1 /boot) se trouve maintenant au début de la matrice, et tout système de fichiers ou toutes données LVM sont décalées du début de la partition. Lorsque la matrice n'est pas en cours d'exécution, les commandes mount de LVM et des systèmes de fichiers peuvent ne pas détecter que le périphérique possède des volumes ou des données de système de fichiers valides. Ceci est intentionnel et signifie que si vous souhaitez monter un disque unique dans une matrice RAID1, vous devrez démarrer cette matrice avec un seul disque dedans, puis monter la matrice. Vous ne pourrez pas monter un disque individuel directement. Ce changement a été effectué car le montage direct d'un disque individuel peut silencieusement corrompre la matrice si une resynchronisation n'est pas forcée.
Lors des redémarrages ultérieurs, le système RAID peut considérer que le disque qui n'était pas inclut dans la matrice est incompatible, et déconnectera ce périphérique de la matrice. Ceci est normal. Lorsque vous serez prêt à réajouter l'autre disque dans la matrice, utilisez la commande mdadm pour ajouter à chaud le disque dans la matrice, à ce moment une resynchronisation des parties modifiées du disque (si vous possédez write intent bitmaps) ou du disque entier (si vous ne possédez pas bitmap) sera effectuée, et la matrice sera à nouveau synchronisée. À ce moment, les périphériques ne seront pas déconnectés de la matrice, puisque la matrice sera considérée comme étant correctement assemblée.
Le nouveau superbloc prend en charge le concept des matrices mdraid nommées. La dépendance de l'ancienne méthode de numérotation de matrice (par exemple, /dev/md0 puis /dev/md1, etc.) pour distinguer les matrices a été abandonnée. Vous pouvez maintenant choisir un nom arbitraire pour la matrice (tel que home, data, ou opt). Créez la matrice avec le nom que vous aurez choisi à l'aide de l'option --name=opt. Quel que soit le nom donné à la matrice, ce nom sera créé dans /dev/md/ (à moins qu'un chemin spécifique ne soit spécifié en tant que nom, dans quel cas ce chemin sera créé, ou à moins que vous ne spécifiez un nombre simple, tel que 0, et mdadm démarrera la matrice avec l'ancien schéma /dev/mdx). Actuellement, l'installateur Anaconda ne permet pas la sélection de noms de matrices, au lieu de cela, il utilise le schéma des numéros simples pour émuler la manière dont les matrices étaient créées dans le passé.
Les nouvelles matrices mdraid prennent en charge l'utilisation de write intent bitmaps. Ceci aide le système à identifier les parties problématiques d'une matrice ; ainsi, au cas où il se produirait un arrêt incorrect, les parties problématiques devront être resynchronisées, et non le disque entier. Cela permet de réduire de manière drastique le temps requis pour effectuer une resynchronisation. Des matrices nouvellement créées auront automatiquement un write intent bitmap ajouté lorsque possible. Par exemple, les matrices utilisées comme swap et les matrices de très petite taille (telles que les matrices /boot) ne bénéficieront pas de l'obtention de write intent bitmaps. Il est possible d'ajouter write intent bitmap aux matrices existant précédemment une fois que la mise à jour sur le périphérique est terminée via la commande mdadm --grow. Cependant, write intent bitmaps n'encourt pas d'impact sur la performance (environ 3-5% sur un bitmap d'une taille de 65536, mais peut augmenter jusqu'à 10% ou plus sur des bitmaps de plus petite taille, tels que 8192). Cela signifie que si write intent bitmap est ajouté à une matrice, il est préférable de conserver la taille relativement grande. La taille recommandée est 65536.

3.2. ext4

Migration depuis ext3

Il est recommandé pour ceux qui désireraient utiliser ext4 de démarrer avec une partition nouvellement formatée. Cependant, vous pouvez installer Red Hat Enterprise Linux 6 avec l'option de démarrage ext4migrate si vous souhaitez convertir vos partitions héritées ext3 en ext4. Il est important de remarquer qu'en faisant ceci, vous ne recevrez pas tous les bénéfices offerts par ext4, puisque les données résidant actuellement sur la partition n'utiliseront pas les fonctionnalités étendues et autres changements. Parcontre les nouvelles données utiliseront ces améliorations. Passer cette option de démarrage pour migrer vers ext4 n'est pas recommandé, il est aussi fortement recommandé de procéder à faire des copies de sauvegarde des systèmes de fichiers avant d'effectuer cette migration.

Changements de comportement

Red Hat Enterprise Linux 6 offre la prise en charge complète d'ext4 et est le système de fichiers par défaut pour les nouvelles installations. Cette section explique les modifications majeures du comportement qui sont présentées par ce nouveau système de fichiers.

  • La version incluse du chargeur de démarrage GRUB offre une prise en charge complète des partitions ext4. L'installateur vous permet aussi de placer tout système de fichiers /boot sur une partition ext4.
  • La version incluse du paquetage e2fsprogs est entièrement compatible avec ext4.
  • Dans certains cas, les systèmes de fichiers ext4 créés sous Red Hat Enterprise Linux 5.3 avec le paquetage e4fsprogs ont créé un système de fichiers de type ext4dev. Le marqueur test_fs identifiant ces systèmes de fichiers comme versions de développement peut être supprimé avec la commande suivante : tune2fs -E ^test_fs. Ceci est effectué afin que ces systèmes de fichiers soient reconnus comme des systèmes de fichiers ext4 normaux.

3.3. fusecompress

fusecompress

Fusecompress est un système de fichiers compressible pouvant être monté par des utilisateurs non-privilégiés. Red Hat Enterprise Linux 6 inclut une version mise à jour corrigeant certains bogues mais celle-ci modifie le format sur disque. Les utilisateurs avec des systèmes de fichiers fusecompress existants devront migrer leurs données vers le nouveau format. À moins d'effectuer la décompression avant la mise à jour, le paquetage fusecompress_offline1 sera requis.

3.4. blockdev

blockdev

L'option de commande blockdev --rmpart n'est plus prise en charge. Les commandes partx(8) et delpart(8) offrent maintenant cette fonctionnalité.

Chapitre 4. Réseaux et services

4.1. Interfaces et configuration

NetworkManager

Red Hat Enterprise Linux 6 utilise NetworkManager par défaut lors de la configuration d'interfaces réseau.

Infiniband

La prise en charge de l'Infiniband (plus particulièrement le script de démarrage openib et le fichier openib.conf) est offerte par le paquetage openib dans Red Hat Enterprise Linux 5. Le nom du paquetage a changé dans Red Hat Enterprise Linux 6 afin de mieux refléter ses fonctionnalités. La fonctionnalité d'Infiniband est maintenant distribuée dans le paquetage rdma. Le service est maintenant appelé rdma, et le fichier de configuration se situe maintenant sur /etc/rdma/rdma.conf.

4.2. Initialisation de services

xinetd

Xinetd est un démon utilisé pour démarrer les services réseau sur requête. Les changements dans xinetd sont liés à la limite autorisée des descripteurs de fichiers ouverts :

  • Le mécanisme d'écoute a changé de select() à poll(). Avec ce changement, la limite des descripteurs de fichiers ouverts utilisés par xinetd peut être modifiée.
  • La limite des descripteurs de fichiers peut aussi être modifiée sur une base par service. Ceci peut être réalisé dans le fichier de configuration pour le service avec la directive rlimit_files. La valeur peut être un entier positif ou UNLIMITED.
Niveaux d'exécution

Dans Red Hat Enterprise Linux 6, les niveaux d'exécution personnalisés 7, 8, et 9 ne sont plus pris en charge et ne peuvent plus être utilisés.

Upstart

Dans Red Hat Enterprise Linux 6, init provenant du paquetage sysvinit a été remplacé par Upstart, un système d'initialisation basé sur événements. Ce système gère le lancement des tâches et services lors du démarrage, les arrête lors de la fermeture du système, et les supervise lorsque le système est en cours d'exécution. Pour obtenir plus d'informations sur Upstart, reportez-vous à la page man init(8).

Les processus sont connus par Upstart en tant que jobs, et sont définis par des fichiers dans le répertoire /etc/init. Upstart est très bien documenté sur les pages man. Un aperçu des commandes se trouve dans init(8) et la syntaxe des jobs est décrite dans init(5).
Dans Red Hat Enterprise Linux 6, Upstart propose les changements de comportement suivants :
  • Le fichier /etc/inittab est obsolète, et est maintenant uniquement utilisé pour définir le niveau d'exécution par défaut via la ligne initdefault. Les autres configurations sont effectuée via les jobs upstart dans le répertoire /etc/init.
  • Le nombre de consoles tty actives est maintenant définit par la variable ACTIVE_CONSOLES dans /etc/sysconfig/init, qui est lu par le job /etc/init/start-ttys.conf. La valeur par défaut est ACTIVE_CONSOLES=/dev/tty[1-6], qui lance un getty sur tty1 jusqu'à tty6.
  • Un getty sériel est encore configuré automatiquement si la console sérielle est la console primaire du système. Dans de précédentes versions, ceci était effectué par kudzu, qui modifiait /etc/inittab. Dans Red Hat Enterprise Linux 6, la configuration de la console primaire sérielle est gérée par /etc/init/serial.conf.
  • Pour configurer un getty exécuté sur une console sérielle qui n'est pas celle par défaut, vous devrez maintenant écrire un job Upstart au lieu de modifier /etc/inittab. Par exemple, si un getty sur ttyS1 est souhaité, le fichier job suivant (/etc/init/serial-ttyS1.conf) devrait fonctionner :
    # This service maintains a getty on /dev/ttyS1.
    
    start on stopped rc RUNLEVEL=[2345]
    stop on starting runlevel [016]
    
    respawn
    exec /sbin/agetty /dev/ttyS1 115200 vt100-nav
    
Comme dans les versions précédentes, vous devriez toujours vous assurer que ttyS1 se trouve dans /etc/securetty si vous souhaitez autoriser les connexions root sur ce getty.
En raison de l'évolution vers Upstart, l'utilisation de /etc/shutdown.allow pour définir qui peut éteindre la machine n'est plus supporté.

4.3. IPTables/Firewalls

IPTables inclut un module de cible SECMARK. Ceci est utilisé pour définir la valeur de marquage de sécurité associée au paquet pour une utilisation par des sous-systèmes de sécurité tels que SELinux. IPTables n'est valide que dans la « mangle table ». Reportez-vous à l'exemple d'utilisation suivant :
iptables -t mangle -A INPUT -p tcp --dport 80 -j SECMARK --selctx \ system_u:object_r:httpd_packet_t:s0

4.4. Server HTTP Apache

Ci-dessous figure une liste des modifications les plus importantes apportées au serveur HTTP Apache lors de la migration vers Red Hat Enterprise Linux 6 :
  • Les modules mod_file_cache, mod_mem_cache et mod_imagemap ne sont plus pris en charge.
  • L'option Charset=UTF-8 a été ajoutée à la directive par défaut IndexOptions. Si des listes des répertoires avec un jeu de caractères non UTF-8 sont requises (comme celles produites par mod_autoindex), cette option devra être modifiée.
  • Le cache de session de distribution distcache n'est plus pris en charge dans mod_ssl.
  • L'emplacement par défaut du fichier de l'ID de processus (pid) est passé de /var/run à /var/run/httpd.
  • COmme le développement en amont a cessé, le paquetage mod_python n'est plus inclus. Red Hat Enterprise Linux 6 fournit une alternative, mod_wsgi, qui prend en charge les scripts Python via l'interface WSGI.

4.5. PHP

Les modifications apportées à PHP sont répertoriées ci-dessous :
  • PHP a été mis à niveau à la version 5.3. Des problèmes de compatibilité peuvent requérir que des scripts soient mis à jour. Pour obtenir plus de détails, reportez-vous aux URL suivants :
  • Les modifications suivantes ont été apportées à la configuration par défaut (/etc/php.ini) :
    • error_reporting est maintenant paramétré sur E_ALL & ~E_DEPRECATED (précédemment E_ALL)
    • short_open_tag est maintenant paramétré sur Off (précédemment On)
    • variables_order est maintenant paramétré sur GPCS (précédemment EGPCS)
    • enable_dl est maintenant paramétré sur Off (précédemment On)
  • Les extensions mime_magic, dbase et ncurses ne sont plus distribuées.

4.6. BIND

La configuration de BIND a subie quelques modifications majeures :
  • Configuration ACL par défaut - dans Red Hat Enterprise Linux 5, la configuration ACL par défaut autorisait les requêtes et offrait une récursion pour tous les hôtes. Par défaut dans Red Hat Enterprise Linux 6, tous les hôtes peuvent effectuer des requêtes de données faisant autorité mais seuls les hôtes d'un réseau local peuvent effectuer des requêtes récursives.
  • Nouvelle option allow-query-cache - l'option allow-recursion a été rendue obsolète en faveur de cette option. Elle est utilisée pour contrôler l'accès aux caches du serveur, qui incluent les données ne faisant pas autorité (comme les recherches récursives et les indices de nom de serveur racine).
  • Gestion de l'environnement Chroot - le script bind-chroot-admin, qui était utilisé pour créer des symlinks depuis un environnement non-chroot vers un environnement chroot, est maintenant obsolète et n'existe plus. Au lieu de cela, la configuration peut maintenant être directement gérée dans un environnement non-chroot et les scripts init montent automatiquement les fichiers nécessaires à l'environnement chroot pendant le démarrage named dans le cas où les fichiers ne seraient pas déjà présents dans le chroot.
  • Permissions du répertoire /var/named - le répertoire /var/named N,est plus inscriptible. Tous les fichiers de zones qui nécessitent d'être inscriptibles (comme les zones DNS dynamiques, DDNS) doivent être placés dans le nouveau répertoire inscriptible : /var/named/dynamic.
  • L'option dnssec [yes|no] n'existe plus - les options globales dnssec [yes|no] ont été divisées en deux nouvelles options : dnssec-enable et dnssec-validation. L'option dnssec-enable active le support DNSSEC. L'option dnssec-validation active la validation DNSSEC . Remarquez que définir dnssec-enable sur "no" sur un serveur récursif signifiw qu'il ne pourra pas être utilisé comme redirecteur par un autre serveur effectuant une validation DNSSEC. Ces deux options sont réglées sur "yes" par défaut.
  • Il n'est plus nécessaire de spécifier l'état de controls dans /etc/named.conf si vous utilisez l'utilitaire de gestion rndc. Le service named autorise automatiquement les connexions de contrôle via le périphérique de bouclage (loopback device) et named et rndc utilisent la même clé secrète générée lors de l'installation (située dans /etc/rndc.key).
Dans une installation par défaut, BIND est installé avec la validation DNSSEC activée et utilise le registre DLV ISC. Ceci signifie que tous les domaines signés (tel que gov., se., cz.) possédant leur clé dans le registre DLV ISC seront validés par chiffrement sur le serveur récursif. Si, dû à des tentatives d'empoisonnement du cache, la validation échoue, alors l'utilisateur final ne se verra pas remettre ces données forgées/usurpées. Le déploiement DNSSEC est une fonction qui est maintenant largement implémentée, est une étape importante pour rendre l'internet plus sécurisé pour ses utilisateurs, et est entièrement pris en charge dans Red Hat Enterprise Linux 6. Comme mentionné auparavant, la validation DNSSEC est contrôlée avec l'option dnssec-validation dans /etc/named.conf.

4.7. NTP

Le protocole NTP ( (de l'anglais, « Network Time Protocol », ou protocole d'heure réseau) est utilisé afin de synchroniser les horloges de systèmes informatiques sur un réseau. Dans Red Hat Enterprise Linux 6, le fichier de configuration par défaut, /etc/ntp.conf, contient maintenant les lignes suivantes comme commentaires :
#server 127.127.1.0 # local clock
#fudge 127.127.1.0 stratum 10
Cette configuration signifie que ntpd ne distribuera que des informations horaires aux clients réseau s'il est spécifiquement synchronisé à un serveur NTP ou à une horloge de référence. Pour que ntpd puisse offrir ces informations même lorsqu'il n'est aps synchronisé, les deux lignes ne doivent plus être des commentaires.
Aussi, lorsque ntpd est démarré avec l'option -x (dans OPTIONS sous le fichier /etc/sysconfig/ntpd), ou si des serveurs sont spécifiés dans /etc/ntp/step-tickers, alors le service n'exécutera plus la commande ntpdate avant le démarrage. Il existe maintenant un service ntpdate séparé qui peut être activé indépendamment du service ntpd. Ce service ntpdate est désactivé par défaut et ne doit être utilisé que dans le cas où d'autres services requièrent l'heure correcte avant de démarrer, ou lorsque celui-ci ne fonctionne plus correctement après des modifications apportées à l'horloge par ntpd.
Vous pouvez rencontrer des problèmes lors de l'exécution de ce service avec la configuration NetworkManager par défaut. Il peut se révéler nécessaire de devoir ajouter NETWORKWAIT=1 à /etc/sysconfig/network, comme décrit dans le guide de déploiement de Red Hat Enterprise Linux.

4.8. Kerberos

Dans Red Hat Enterprise Linux 6, les clients et serveurs Kerberos (y compris les KDC), par défaut, n'utiliseront pas de clés pour les chiffrements des-cbc-crc, des-cbc-md4, des-cbc-md5, des-cbc-raw, des3-cbc-raw, des-hmac-sha1, et arcfour-hmac-exp. Par défaut, les clients ne seront pas en mesure de s'authentifier face aux services possédant des clés de ce type.
La plupart des services peuvent avoir un nouvel ensemble de clés (y compris pour une utilisation avec des chiffrements plus importants) ajouté à leurs « keytabs » et ce sans délai ; les clés du service d'octroi de tickets peut aussi être mis à jour vers un ensemble incluant des clés pour une utilisation avec des chiffrements plus importants, à l'aide de la commande de kadmin cpw -keepold.
Comme solution de contournement, les systèmes nécessitant de continuer à utiliser des chiffrements plus faibles requièrent que l'option allow_weak_cryptosoit incluse dans la section libdefaults du fichier /etc/krb5.conf. Cette variable est définie sur false par défaut, et l'authentification échouera si cette option n'est pas activée :
[libdefaults]
allow_weak_crypto = yes
De plus, le support pour Kerberos IV, en tant que bibliothèque disponible partagée et en tant que mécanisme d'authentification supporté pour les applications, a été supprimé. Un nouveau support ajouté pour les politiques de verrouillage requiert une modification du format de vidage de la base de données. Les KDC-maîtres qui nécessitent de vider des bases de données sous un format que les KDC plus anciens peuvent consommer devraient exécuter la commande dump de kdb5_util avec l'option -r13.

4.9. Mail

4.9.1. Sendmail

Dans certaines versions de Red Hat Enterprise Linux 5, le sendmail MTA (de l'anglais, « Mail Transport Agent ») acceptait les connexions réseau des hôtes externes par défaut. Dans Red Hat Enterprise Linux 6, sendmail n'accepte par défaut que les connexions du système local (localhost). Pour autoriser sendmail à agir en tant que serveur pour des hôtes distants, procédez à l'une des étapes suivante :
  • Modifiez /etc/mail/sendmail.mc puis changez la ligne DAEMON_OPTIONS pour aussi pouvoir écouter les périphériques réseau
  • Mettez la ligne DAEMON_OPTIONS de /etc/mail/sendmail.mc en commentaire.
Pour appliquer l'un de ces changements, installez le paquetage sendmail-cf et regénérez /etc/mail/sendmail.cf en exécutant les commandes suivantes :
su -c 'yum install sendmail-cf'
su -c 'make -C /etc/mail'

4.9.2. Exim

Exim a été supprimé de Red Hat Enterprise Linux 6. Postfix est maintenant le MTA par défaut et recommandé.

4.9.3. Dovecot

Configuration Dovecot

La configuration pour Dovecot 2.x a changé. Le fichier de configuration maître /etc/dovecot.conf se trouve dans /etc/dovecot/dovecot.conf et d'autres parties de la configuration Dovecot se trouvent dans /etc/dovecot/conf.d/*.conf. La majorité de la configuration est la même et est compatible avec cette nouvelle version ; cependant, vous pouvez tester votre configuration et répertorier les options que vous avez renommé, supprimé, ou modifié dans cette nouvelle version avec la commande suivante :

doveconf [-n] -c /old/dovecot.conf

4.10. MySQL®

DBD Driver

Le pilote DBD MySQL possède une double licence et les problèmes liés à la licence ont été résolus. Le paquetage apr-util-mysql en résultant est maintenant inclut dans les référentiels de logiciels de Red Hat Enterprise Linux 6.

4.11. PostgreSQL

Mise à jour de bases de données

Si vous effectuez une mise à niveau depuis une installation existante de Red Hat Enterprise Linux 5 dans laquelle PostgreSQL 8.4 (paquetages postgresql84-*) était utilisé, les paquetages PostgreSQL de Red Hat Enterprise 6 opéreront en tant que remplacement.

Cependant, si vous effectuez une mise à niveau depuis une installation de Red Hat Enterprise Linux 5 dans laquelle PostgreSQL 8.4 (paquetages postgresql84-*) ou une de ses versions ultérieures était utilisé et que vous possédez un contenu de base de données devant être préservé, vous devrez suivre la procédure de vidage et de rechargement à cause des modifications du format des données : http://www.postgresql.org/docs/8.4/interactive/install-upgrading.html. Assurez-vous de bien effectuer l'étape de vidage avant de procéder à la mise à niveau vers Red Hat Enterprise Linux 6.
Autres changements

Reportez-vous à l'URL suivant pour tout problème de compatibilité d'application probablement lié à la transition de PostgreSQL 8.1 à 8.4 : http://wiki.postgresql.org/wiki/WhatsNew84

4.12. Squid

Squid a été mis à jour à la version 3.1 et offre maintenant un support IPv6 natif. Le fichier de configuration /etc/squid/squid.conf a été réduit de manière significative ; les options de configuration pour Squid 3.1 ont changé et ne sont pas entièrement compatibles à l'envers avec certaines versions plus anciennes. Pour des détails complets concernant la configuration et autres changements, veuillez vous reportes aux notes de publication de Squid 3.1 : http://www.squid-cache.org/Versions/v3/3.1/RELEASENOTES.html.
Squid offre la possibilité d'authentifier des utilisateurs via les assistants ncsa_auth et pam_auth. Les permissions de ces assistants ont changé dans Red Hat Enterprise Linux 6. Comme des privilèges plus importants étaient requis pour accéder aux fichiers du système nécessaires à l'authentification, les précédentes versions autorisaient l'indicateur setuid pour ncsa_auth and pam_auth. Maintenant, dans Red Hat Enterprise Linux 6, Squid n'a plus besoin du paramètres de l'indicateur setuid pour ces assistants. Ce changement a été effectuéà cause des risques de sécurité présents lors de l'exécution des indicateurs setuid. Une fonction normale a pu être maintenue sans le paramétrage de ces indicateurs.

4.13. Bluetooth

Service Bluetooth sur demande

Afin de prendre en charge les périphériques Bluetooth, le service d'arrière-plan a été lancé par défaut dans des versions ultérieures de Red Hat Enterprise Linux. Dans cette version, le service Bluetooth est lancé sur demande lorsque nécessaire et s'arrête automatiquement 30 secondes après que l'utilisation du périphérique se soit arrêtée. Ceci réduit de manière générale le temps de démarrage initial et la consommation des ressources.

4.14. Cron

Vixie cron et Cronie

Red Hat Enterprise Linux 6 inclut le paquetage cronie pour remplacer vixie-cron. La différence principale entre ces deux paquetages est la régularité (quotidienne, hebdomadaire, mensuelle) des tâches. Cronie utilise le fichier /etc/anacrontab, qui par défaut ressemble à ce qui suit :

# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45

# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22

# period in days   delay in minutes   job-identifier   			command

1			5		cron.daily	nice run-parts	/etc/cron.daily
7			25		cron.weekly	nice run-parts	/etc/cron.weekly
@monthly		45		cron.monthly	nice run-parts	/etc/cron.monthly
Ces tâches régulières seront exécutées une fois par jour à une intervalle de temps 03:00-22:00, y compris un délai aléatoire. Par exemple, cron.daily aura un délai forcé de 5 minutes plus un délai aléatoire de 0 à 45 minutes. Vous pouvez aussi exécuter des tâches sans délai, entre 4 et 5 :
RANDOM_DELAY=0 # or don't use this option at all

START_HOURS_RANGE=4-5

# period in days   delay in minutes   job-identifier   			command
1			0		cron.daily	nice run-parts	/etc/cron.daily
7			0		cron.weekly	nice run-parts	/etc/cron.weekly
@monthly		0		cron.monthly	nice run-parts	/etc/cron.monthly
Les fonctionnalités de cronie incluent :
  • Délai aléatoire pour lancer la tâche dans /etc/anacrontab.
  • L'intervalle de temps des tâches normales peut être défini dans /etc/anacrontab.
  • Chaque table cron peut posséder son propre fuseau horaire défini avec la variable CRON_TZ.
  • Par défaut, le démon cron effectue une vérification des modification des tables avec inotify.
Pour plus de détails sur cronie et cronie-anacron, veuillez vous reporter au guide de déploiement Red Hat Enterprise Linux.

4.15. Journalisation

L'option dateext est maintenant activée par défaut dans /etc/logrotate.conf. Cette option archive les anciennes versions des fichiers de journalisation en ajoutant une extension représentant la date (sous le format AAAAMMJJ). Auparavant, un numéro était ajouté aux fichiers.

Chapitre 5. Outils de ligne de commande

Cette section décrit les modifications du comportement des outils de ligne de commande dans Red Hat Enterprise Linux 6.

5.1. Grep

Le comportement de la commande grep a changé en ce qui concerne les recherches de chaînes majuscules et minuscules. L'utilisation de recherches d'intervalles sous le format [a-z] dépend de la variable LC_COLLATE.
Vous pouvez définir LC_COLLATE=C afin qu'il préserve son ancien comportement et de manière à obtenir des résultats corrects lors des recherches d'intervalles avec cette méthode ; cependant, dans Red Hat Enterprise Linux 6, il est recommandé d'effectuer des recherches d'intervalles à l'aide du format [[:lower:]],[[:upper:]].
Ce changement peut affecter la sortie de manière significative, les scripts et processus devraient ainsi être examinés afin de continuer à obtenir des résultats corrects.

5.2. Sed

La commande sed avec l'option -i vous permet de supprimer le contenu d'un fichier lecture-seule et vous laissera supprimer d'autres fichiers protégés. Les permissions d'un fichier définissent les actions autorisées, tandis que les permissions d'un répertoire définissent les actions autorisées à être conduites sur la liste des fichiers de ce répertoire. Pour cette raison, sed ne vous laissera pas utiliser -i sur un fichier inscriptible se trouvant dans un répertoire en lecture-seule, sed cassera les liens, physiques ou symboliques, lorsque l'option -i est utilisée sur un tel fichier.

5.3. Pcre

Le paquetage pcre a été mis à jour à la version 7.8. Il inclut les modifications de comportement suivantes :
  • La vérification UTF-8 référence maintenant RFC 3629 au lieu de RFC 2279. Ceci la rend plus restrictive dans le choix des chaînes acceptées. Par exemple, la valeur ordinale des caractères UTF-8 est maintenant limitée à 0x0010FFFF :
    $ echo -ne "\x00\x11\xff\xff" | recode UCS-4-BE..UTF8 | pcregrep --utf-8 '.'
    pcregrep: pcre_exec() error -10 while matching this line:
    
    Veuillez vous reporter au RFC pour plus de détails : http://tools.ietf.org/html/rfc3629#section-12.
  • Les modèles enregistrés qui ont été compilés par des versions précédentes de PCRE doivent être recompilées. Ceci affecte les applications qui sérialisent des expressions PCRE pré-compilées vers une mémoire externe (par exemple, un fichier) et qui les chargent plus tard. Ceci est effectué pour des raisons liées à la performance, par exemple pour les filtres spam de grande taille.

5.4. Shells

L'emplacement des fichiers binaires shell n'est plus le même. Par exemple, les binaires bash et ksh ne se trouvent plus dans /usr/bin. Ils sont maintenant placés dans /bin. Les scripts devront être mis à jour afin de connaître le nouvel emplacement des binaires.

5.5. Nautilus

Le paquetage nautilus-open-terminal fournit une option en clic droit Ouvrir un terminal pour ouvrir une fenêtre de terminal dans le répertoire actuel. Précédemment, lorsque cette option était choisie depuis le Bureau, l'emplacement de la fenêtre du nouveau terminal était par défaut le répertoire d'accueil de l'utilisateur. Cependant, dans Red Hat Enterprise Linux 6, le comportement par défaut fait que le terminal s'ouvre dans le répertoire du Bureau (c'est-à-dire ~/Desktop/). Pour activer l'ancien comportement, utilisez la commande suivante pour paramétrer le bouléen GConf desktop_opens_home_dir sur « True » :
gconftool-2 -s /aps/nautilus-open-terminal/desktop_opens_dir --type=bool true

Chapitre 6. Bureau

  • Dans Red Hat Enterprise Linux 6, la console GUI a été déplacée de tty7 à tty1.
Configuration GDM

Un certain nombre de paramètres GDM sont maintenant gérés avec Gconf.

L'application de bienvenue par défaut de GDM est nommée « simple Greeter » et est configurée via GConf. Les valeurs par défaut sont stockées dans GConf dans le fichier gdm-simple-greeter.schemas. Utilisez gconftool2 ou gconf-editor pour modifier ces valeurs. Les options suivantes existent pour Greeter :
  • /apps/gdm/simple-greeter/banner_message_enable
    false (boolean)
    Contrôle si le message de la bannière de texte est affiché.
  • /apps/gdm/simple-greeter/banner_message_text
    NULL (string)
    Spécifie le message de la bannière de texte à afficher sur la fenêtre de bienvenue.
  • /apps/gdm/simple-greeter/logo_icon_name
    computer (string)
    Définit le nom de l'icône du thème à utiliser pour le logo de bienvenue.
  • /apps/gdm/simple-greeter/disable_restart_buttons
    false (boolean)
    Contrôle s'il faut afficher les boutons de redémarrage dans la fenêtre de connexion.
  • /apps/gdm/simple-greeter/wm_use_compiz
    false (booleans)
    Contrôle si compiz est utilisé en tant que gestionnaire de fenêtres au lieu de metacity.
Les plugins peuvent aussi être désactivés à l'aide de GConf. Par exemple, si vous souhaitez désactiver le plugin de son, annulez la clé suivante : /apps/gdm/simple-greeter/settings-manager-plugins/sound/active.

Chapitre 7. Sécurité et authentification

Ce chapitre couvre les changements de comportement de la sécurité et l'authentification, y compris SELinux, SSSD, LDAP, les checksums, et PAM.

7.1. SELinux

Le démon sshd est maintenant un service confiné.

7.2. SSSD

Le démon SSSD (de l'anglais, « System Security Services Daemon ») offre accès aux mécanismes d'identité et d'authentification distants, aussi dénommés fournisseurs. Il permet à ces fournisseurs d'être connectés en tant que serveurs SSSD, faisant abstraction de l'identité locale et réseau et des sources d'authentification, et permettant à tout type de fournisseur de données d'identité d'être connecté. Un domaine est une base de données contenant des informations sur l'utilisateur, qui peut servir de source pour les informations sur l'identité d'un fournisseur. De multiples fournisseurs d'identité sont pris en charge, permettant à deux serveurs d'identité, ou plus, d'agir en tant qu'espaces de noms d'utilisateurs séparés. Les informations rassemblées sont disponibles à toutes les applications de serveur frontal avec les interfaces PAM et NSS.
SSSD est exécuté en tant qu'ensemble de services, indépendamment des applications qui l'utilisent. Ainsi, ces applications n'ont plus besoin de créer leurs propres connexions à des domaines distants, ou même de savoir lequel (lesquels) est (sont) utilisé(s). La mise en cache locale robuste des informations d'identité et d'adhérence à un (des) groupe(s) permet d'effectuer des opérations peu importe d'où provient cette identité (par exemple, LDAP, NIS, IPA, DB, Samba, etc.), elle offre une performance améliorée, et permet à l'authentification d'être effectuée même lors d'opérations hors-ligne, et lorsque l'authentification en ligne est indisponible. SSSD permet aussi l'utilisation de multiples fournisseurs de même type (par exemple avec de multiples fournisseurs LDAP), ainsi qu'aux requêtes d'identité de domaines qualifiés d'être résolues par ces différents fournisseurs. De plus amples détails se trouvent dans le guide de déploiement Red Hat Enterprise Linux 6.

7.3. LDAP

OpenLDAP

La configuration requise pour le service OpenLDAP a changée dans Red Hat Enterprise Linux 6. Dans les versions précédentes, slapd était configuré via le fichier /etc/openldap/slapd.conf. La configuration slapd dans Red Hat Enterprise Linux 6 est maintenant stockée dans un répertoire LDAP spécial (/etc/openldap/slapd.d/) avec un schéma pré-défini et un DIT (arbre d'informations d'Annuaire, de l'anglais, « Directory Information Tree »). Plus de détails sur ce schéma de configuration peuvent être trouvés sur openldap.org. La section suivante détaille un exemple sur la manière de convertir l'ancien fichier de configuration afin qu'il fonctionne avec le nouveau répertoire :

7.3.1. Convertir une configuration slapd

Cet exemple suppose que le fichier à convertir depuis l'ancienne configuration slapd est placé dans /etc/openldap/slapd.conf et que le nouveau répertoire pour la configuration OpenLDAP se trouve dans /etc/openldap/slapd.d/.
  • Supprimez le contenu du nouveau répertoire /etc/openldap/slapd.d/ :
     # rm -rf /etc/openldap/slapd.d/* 
  • Exécutez slaptest afin de vérifier la validité du fichier de configuration et pour spécifier le nouveau répertoire de configuration :
     slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d 
  • Configurer les permissions sur le nouveau répertoire :
     chown -R ldap:ldap /etc/openldap/slapd.d 
     chmod -R 000 /etc/openldap/slapd.d 
     chmod -R u+rwX /etc/openldap/slapd.d 
  • Une fois qu'il est confirmé que le service fonctionne sur le nouveau répertoire de configuration, supprimez l'ancien fichier de configuration :
     rm -rf /etc/openldap/slapd.conf 

7.4. Checksums

Red Hat Enterprise Linux utilise maintenant l'algorithme condensé SHA-256 pour la vérification et l'authentification des données dans davantage d'emplacements qu'avant, mettant à niveau les algorithmes de plus faible chiffrement SHA-1 et MD5.

7.5. PAM (Modules d'authentification enfichables, en anglais « Pluggable Authentication Modules »)

La configuration commune des services PAM se trouve dans le fichier /etc/pam.d/system-auth-ac.
Les modules d'authentification sont maintenant aussi écrits dans des fichiers de configuration PAM supplémentaires : /etc/pam.d/password-auth-ac, etc/pam.d/smartcard-auth-ac et /etc/pam.d/fingerprint-auth-ac.
Le module PAM pour sshd et pour d'autres services distants, tels que ftpd, incluent maintenant le fichier /etc/pam.d/password-auth dans Red Hat Enterprise Linux 6 au lieu de /etc/pam.d/system-auth.

7.6. Utilisateurs système

Le seuil des numéros UID/GID assignés de manière statique (défini par le paquetage setup dans le fichier /usr/share/doc/setup-*/uidgid) a augmenté de 100 (dans Red Hat Enterprise Linux 3, 4, et 5) à 200 dans Red Hat Enterprise Linux 6. Ce changement peut affecter les systèmes possédant de 100 à 200 UID/GID assignés de manière statique ou dynamique, et provoquer des échecs lors des installations et de l'exécution de certaines applications.
L'allocation d'UID/GID assignés de manière dynamique varie de 499 à la baisse dans Red Hat Enterprise Linux 6. Pour la création d'utilisateurs statiques sans réserves, appliquée par le paquetage setup, il est recommandé d'utiliser une aire d'UID/GID de 300 et plus.

Chapitre 8. Noyau

8.1. Noyau

L'outil dracut a remplacé l'utilisation de mkinitrd. Le fichier /etc/modprobe.conf n'est aussi plus utilisé par défaut dans la gestion des modules du noyau, il peut cependant toujours être utilisé si manuellement créé. Reportez-vous à ce qui suit pour un exemple d'utilisation de l'outil dracut :
# mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-old.img
# dracut --force /boot/initramfs-$(uname -r).img $(uname -r)

Chapitre 9. Changements de paquetages et de pilotes

La liste des paquetages et pilotes du système inclus subit des changements réguliers dans les publications de Red Hat Enterprise Linux. Ceci est dû à un certain nombre de raisons : les paquetages et pilotes sont ajoutés ou mis à jour dans le système d'exploitation afin de fournir de nouvelles fonctionnalités, ou les paquetages et pilotes peuvent représenter du matériel vieux et sont supprimés. Le projet en amont pour les paquetages et pilotes peut ne plus être maintenu, ou les paquetages et pilotes spécifiques au matériel ne sont plus pris en charge par un fournisseur de matériel et sont donc supprimés.
Ce chapitre répertorie les paquetages pilotes nouveaux et mis à jour dans Red Hat Enterprise Linux 6, ainsi que ceux qui sont obsolètes et ont été supprimés.

9.1. Changements d'outils de configuration du système

system-config-bind

L'outil system-config-bind est obsolète et a été supprimé sans être remplacé. Dans Red Hat Enterprise Linux 6, il est recommandé de modifier la configuration du serveur de nom manuellement via le fichier named.conf. Faisant partie du paquetage bind dans /usr/share/doc/bind-x.y.z, la documentation complète de BIND est installée. Il existe aussi des exemples de configuration, ceux-ci peuvent être trouvés dans le répertoire /usr/share/doc/bind-x.y.z/sample. Cependant, l'outil system-config-bind des versions précédentes génère une configuration BIND standard. Ainsi, selon votre environnement, il est possible de migrer vers la version de BIND trouvée dans Red Hat Enterprise Linux 6 en déplaçant les fichiers de configuration précédents vers l'emplacement correct et en effectuant suffisamment de tests.

system-config-boot

L'outil system-config-boot permet la configuration graphique du chargeur de démarrage GRUB. Dans Red Hat Enterprise Linux 6, il a été rendu obsolète et supprimé sans être remplacé. La configuration de GRUB par défaut est suffisante pour de nombreux utilisateurs. Toutefois, si des modifications manuelles sont requises, la configuration du démarrage peut être accédée et modifiée à partir du fichier grub.conf, se trouvant dans le répertoire /boot/grub. La documentation complète de la configuration de GRUB se trouve sur la page d'accueil de GRUB : http://www.gnu.org/software/grub/.

system-config-cluster

L'outil system-config-cluster est obsolète et a été supprimé sans être remplacé. L'utilisation de ricci et de luci (du projet Conga) est recommandée.

system-config-display

L'outil system-config-display a été remplacé par les outils de configuration XRandr comme on peut l'observer sur les bureaux pris en charge : GNOME et KDE. Il n'y a pas de fichier de configuration explicite (xorg.conf) dans l'installation du serveur X par défaut car la gestion de l'affichage est maintenant réalisée dynamiquement via l'une des options de menu suivantes :

GNOME : SystèmePréférencesAffichage
KDE: Paramètres du systèmeAdministration de l'ordinateurAffichage
Remarque : l'utilitaire de la ligne de commande (xrandr) peut aussi être utilisé pour la configuration de l'affichage. Pour obtenir plus de détails, voir la commande xrandr --help ou lisez la page du manuel via la commande man xrandr.
system-config-httpd

L'outil system-config-httpd est obsolète et a été supprimé sans être remplacé. Les utilisateurs devraient configurer les serveurs web manuellement. La configuration peut être effectuée dans le répertoire /etc/httpd. Le fichier de configuration principal se trouve dans /etc/httpd/conf/httpd.conf. Ce fichier est bien documenté et comporte des commentaires détaillés dans le fichier pour la plupart des configurations de serveurs.Cependant, si requis, la documentation du serveur web Apache complète est fournie dans le paquetage httpd-manual.

system-config-lvm

L'outil system-config-lvm est obsolète. Les utilisateurs devraient effectuer la gestion des volumes logiques via les outils gnome-disk-util ou lvm.

system-config-netboot

L'outil system-config-netboot est obsolète et a été supprimé sans être remplacé. L'utilisation de Red Hat Satellite est recommandée.

system-config-network

L'outil system-config-network a été remplacé par NetworkManager - un outil de configuration de réseau moderne et puissant. NetworkManager-applet (nm-applet) est installé par défaut dans les deux environnements de bureau pris en charge et peut être trouvé dans la zone de la barre d’état système. Voir la page d'accueil de NetworkManager pour obtenir plus d'informations : http://projects.gnome.org/NetworkManager/.

system-config-nfs

L'outil system-config-nfs est obsolète et a été supprimé sans être remplacé. Les utilisateurs devraient paramétrer une configuration de serveur NFS manuellement.

system-config-rootpassword

L'outil system-config-rootpassword a été remplacé par l'outil system-config-users - un puissant outil de configuration et de gestion d'utilisateurs. Le mot de passe root peut être défini dans l'outil system-config-users en décochant la case de l'option "Hide system users and groups" dans la boîte de dialogue des préférences. L'utilisateur root (ou super-utilisateur) sera maintenant affiché dans la liste principale, et le mot de passe peut être modifié comme pour n'importe quel autre utilisateur.

system-config-samba

L'outil system-config-samba est obsolète et a été supprimé sans être remplacé. Les utilisateurs devraient paramétrer la configuration du serveur SMB manuellement.

system-config-securitylevel

L'outil system-config-securitylevel a été remplacé. Les utilisateurs devraient donc plutôt utiliser l'outil system-config-firewall.

system-config-soundcard

L'outil system-config-soundcard a été supprimé. La détection et la configuration de la carte son s'effectue automatiquement.

system-config-switchmail

L'outil system-config-switchmail est obsolète et a été supprimé sans être remplacé. Postfix est le MTA (Mail Transfer Agent) préféré et par défaut dans Red Hat Enterprise Linux 6. Si vous utilisez un autre MTA, il devra être configuré manuellement en fonction de ses fichiers et techniques de configuration.

9.2. Bash (Bourne-Again Shell)

Red Hat Enterprise Linux 6 inclut la version 4.1 de Bash en tant que shell par défaut. Cette section décrit les problèmes de compatibilité que cette version présente par rapport aux versions précédentes.
  • Bash-4.0 et ses versions plus récentes autorisent maintenant les constructions de substitution de processus à être passés en restant inchangées à travers l'expansion d'accolades. Ainsi, toute expansion de contenu devra être spécifiée séparément, et chaque substitution de processus devra être saisie séparément.
  • Bash-4.0 et ses versions plus récentes autorisent maintenant les interruptions de l'attente intégrée par SIGCHLD, comme Posix le spécifie, ainsi l'interruption SIGCHLD n'est plus invoquée une fois par enfant sortant si vous utilisez `wait' pour attendre tous les enfants.
  • Puisque Bash-4.0 et ses versions plus récentes suivent maintenant les règles Posix pour trouver les délimiteurs de fin d'une substitution de commande $(), il ne se comportera pas comme ses anciennes versions le faisaient, mais il trouvera davantage d'erreurs de syntaxe et d'analyse avant de générer un subshell pour évaluer la substitution de commande.
  • Le code de fin programmable utilise le même ensemble de caractères délimitant que readline lorsqu'il décompose la ligne de commande en mots plutôt que l'ensemble des métacaractères shells ; ainsi, la fin programmable et readline sont plus consistants.
  • Lorsque le délai d'attente de la lecture intégrée expire, il tente d'assigner n'importe quelle entrée de lecture aux variables spécifiées, ce qui cause aux variables d'être paramétrées sur une chaîne vide s'il n'y a pas eu assez d'entrée. Les versions précédentes annulaient la lecture des caractères.
  • Dans Bash-4.0 et ses versions plus récentes, lorsque l'une des commandes dans un pipeline est supprimé (killed) par un SIGINT lors de l'exécution d'une liste de commandes, le shell agit comme s'il avait reçu l'interruption.
  • Bash-4.0 et ses versions plus récentes modifient la gestion de l'option set -e de manière à ce que le shell se ferme si un pipeline échoue (et non pas seulement si la dernière commande dans le pipeline échouant est une simple commande). Ceci est contraire à ce qui est spécifié par Posix. Des traveaux sont en cours de réalisation pour mettre à jour cette portion du standard ; Le comportement de Bash-4.0 tente de capturer le consensus au moment de la publication.
  • Bash-4.0 et ses versions plus récentes corrige un bogue de mode Posix qui faisait que . (source) cherchait l'argument du nom de fichier dans le répertoire actuel, même si "." ne se trouve pas dans le PATH (chemin) du système. Dans ce cas, Posix dira que le shell ne devrait pas rechercher dans la variable PWD.
  • Bash-4.1 utilise la locale actuelle lors de la comparaison de chaînes utilisant des opérateurs sur la commande [[. Ceci peut être remplacé par le comportement précédent en paramétrant l'une des options shopt compatNN.
Expressions régulières

En plus des points qui ont déjà été répertoriés, citer l'argument de schéma sur l'expression régulière correspondant à l'opérateur conditionnel =~ peut causer à la correspondance regexp d'arrêter de fonctionner. Ceci se produit sur toutes les architectures. Dans les versions de bash antérieures à 3.2, les effets résultant de la citation de l'argument d'expression régulière sur l'opérateur =~ de la commande[[ n'était pas spécifié. L'effet pratique était qu'une double citation de l'argument du schéma nécessitait des barres obliques inverses pour citer les caractères de schémas spéciaux, qui interféraient avec les processus de barres obliques inverses effectués par l'expansion de mots à double citation et qui étaient inconsistants avec la manière dont l'opérateur de correspondance de schémas shell == traitait les caractères cités.

Dans la version 3.2 de bash, le shell a été modifié pour citer de manière interne des caractères dans des arguments de chaîne avec des guillemets simples ou doubles pour l'opérateur =~, qui supprime la signification spéciale des caractères qui pourraient être importants au traitement des expressions régulières (`.', `[', `\', `(', `), `*', `+', `?', `{', `|', `^' et `$') et les force à correspondre de manière littérale. Ceci est consistant avec la manière dont l'opérateur de correspondance de schémas == traite les portions citées de son argument de schéma.
Depuis que le traitement des arguments de citation de chaînes a été modifié, des problèmes sont apparus, le principal problème étant celui de l'espace blanc dans les arguments de schéma et la différence de traitement des chaînes citées entre bash 3.1 et bash 3.2. Ces deux problèmes peuvent être résolus à l'aide d'une variable shell pour conserver le schéma. Puisque la séparation des mots n'est pas effectuée lorsque les variables shell sont étendues à toutes les opérandes de la commande [[, cela vous permettra de citer des schémas comme vous le souhaitez lorsque vous assignez la variable, puis d'étendre les valeurs sur une chaîne unique pouvant contenir de l'espace blanc. Le premier problème peut être résolu en utilisant des barres obliques inversées ou tout autre mécanisme de citation pour éviter l'espace blanc dans les schémas.
Bash 4.0 présente le concept de niveau de compatibilité, contrôlé par plusieurs options sur le shopt intégré. Si l'option compat31 est activée, bash reviendra au comportement de la version 3.1 par rapport aux citations du côté droit de l'opérateur =~.

9.3. Autres changements de paquetages

Paquetages mis à jour

Le tableau suivant répertorie les paquetages mis à jour dans Red Hat Enterprise Linux 6 et offre une description des modifications les plus importantes.

Tableau 9.1. Paquetages mis à jour

Paquetages mis à jour Description
OProfile OProfile a été mis à jour à la version 0.9.5. Cette nouvelle version inclut la prise en charge des processeurs i7 et Intel Atom, de la gamme de processeurs 11h d'AMD, et de la fonctionnalité IBS (de l'anglais « Instruction Based Sampling ») de la gamme 10h d'AMD.
quota, edquota, setquota Acceptent maintenant un nom ou un ID d'utilisateur comme argument. Si l'argument est un numéro, il sera considéré comme un ID d'utilisateur, sinon il sera traduit en ID automatiquement. Soyez conscient que cela peut causer un problème si le nom d'utilisateur est uniquement composé de chiffres. Le paquetage quota a été mis à jour. L'argument -x, qui forçait le nom d'utilisateur à identifier la traduction dans des utilitaires tels que quota, edquota et setquota a été supprimé. Cette fonctionnalité est maintenant fournie par l'option --always-resolve.
module-init-tools /etc/modprobe.conf n'existe pas par défaut. Peut toujours être utilisé si créé manuellement.
Paquetages abandonnés

Le tableau suivant répertorie les paquetages abandonnés (supprimés) dans Red Hat Enterprise Linux 6 ainsi que leurs remplacements ou alternatives.

Tableau 9.2. Paquetages abandonnés

Paquetage abandonné Remplacé par
aspell hunspell. aspell est uniquement fourni en tant que dépendance de construction. Les applications nécessitant d'utiliser un vérificateur d'orthographe doivent utiliser hunspell.
beecrypt NSS/OpenSSL
crash-spu-commands Aucun. Les paquetages spécifiques aux cellules ne sont plus inclus.
dhcpv6/dhcpv6-client Les binaires dhcp/dhclient possèdent maintenant des capacités IPv6 intégrées.
elfspe2 Aucun. Les paquetages spécifiques aux cellules ne sont plus inclus.
exim Postfix
gnbd À la place, il est recommandé d'utiliser iSCSI.
gnome-vfs gvfs
ipsec-tools Openswan
kmod-gnbd À la place, il est recommandé d'utiliser iSCSI.
lam openmpi
libspe2 Aucun. Les paquetages spécifiques aux cellules ne sont plus inclus.
libspe2-devel Aucun. Les paquetages spécifiques aux cellules ne sont plus inclus.
linuxwacom xorg-x11-drv-wacom
mod_python mod_wsgi, qui utilise l'interface WSGI, peut être utilisé comme alternative pour les scripts Python.
mkinitrd dracut
nss_ldap nss-pam-ldapd, pam_ldap
openmotif-2.2 openmotif-2.3
spu-tools Aucun. Les paquetages spécifiques aux cellules ne sont plus inclus.
switchdesk La gestion de session effectuée par les deux gestionnaires de session pris en charge : GDM et KDE.
syslog rsyslog
SysVinit upstart
vixie-cron cronie
Paquetages obsolètes

  • qt3
  • GFS1
  • gcj - inclut dans Red Hat Enterprise Linux 6 pour des raisons liées à la performance, il est cependant improbable que gcj soit inclut dans de futures versions.

9.4. Changements de pilotes

Cette section décrit les changements de pilotes dans Red Hat Enterprise Linux 6. Remarquez que tous les pilotes sont maintenant chargés sur initramfs par défaut.
Pilotes abandonnés

  • aic7xxx_old
  • atp870u
  • cpqarray
  • DAC960
  • dc395x
  • gdth
  • hfs
  • hfsplus
  • megaraid
  • net/tokenring/
  • paride
  • qla1280
  • sound/core/oss
  • sound/drivers/opl3/*sound/drivers/opl3/*
  • sound/pci/nm256

Pilotes obsolètes

  • aacraid
  • aic7xxx
  • i2o
  • ips
  • megaraid_mbox
  • mptlan
  • mptfc
  • sym53c8xx

Composants du noyau abandonnés

  • NBD - Network Block Device (périphériques blocs réseau) supplantés par iSCSI dans Red Hat Enterprise Linux 6.
  • HFS - prise en charge du système de fichiers Apple abandonné dans Red Hat Enterprise Linux 6.
  • Tux - accélérateur de serveur web abandonné dans Red Hat Enterprise Linux 6.
  • Noyau x86 non-PAE - Les anciennes versions de Red Hat Enterprise Linux contenaient de multiples noyaux pour l'architecture i686 : un noyau avec et un noyau sans PAE. Le matériel non-PAE ne s'est pas vendu en grands volumes depuis de nombreuses années. Ainsi, dans Red Hat Enterprise Linux 6, il n'y aura qu'un seul noyau, qui inclut PAE.
  • Le planificateur d'E/S Anticipatory I/O scheduler est obsolète et n'est pas présent dans Red Hat Enterprise Linux 6. Il est remplacé par le planificateur d'E/S CFQ (de l'anglais « Completely Fair Queueing »), qui est le planificateur d'E/S dans le noyau Linux depuis 2006. Nous encourageons nos clients utilisant le planificateur d'E/S Anticipatory I/O scheduler à tester les charges de travail avec CFQ et à soumettre des rapports de bogues pour tout problème lié à la performance. Tandis que le but est de réussir à faire fonctionner CFQ aussi bien que le planificateur Anticipatory I/O scheduler avec toutes les charges de travail testées, Red Hat ne peut garantir qu'il n'y aura pas de valeurs hors normes.

9.5. Changements de bibliothèques

Les bibliothèques 32-bit ne sont pas installées par défaut sur Red Hat Enterprise Linux 6. Vous pouvez changer ce comportement en paramétrant multilib_policy=all dans /etc/yum.conf, ce qui appliquera la politique multilib sur la totalité du système.

Annexe A. Historique des révisions

Historique des versions
Version 6.1-39.402Fri Oct 25 2013Rüdiger Landmann
Rebuild with Publican 4.0.0
Version 6.1-39.32012-07-18Anthony Towns
Rebuild for Publican 3.0
Version 6.1-39Wed May 18 2011Scott Radvan
Révision pour la version 6.1.

Note légale

Copyright © 2011 Red Hat, Inc.
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.