OldGentooWiki:Migration vers Baselayout2

De Gentoo-Quebec.

(Redirigé depuis Migration vers Baselayout2)

Go-previous.png Index entretien et sauvegardes


Gentoo-quebec+Funtoo-quebec.png

Migration vers Baselayout 2.0


Sommaire

Contexte

Tout d'abord, pour bien comprendre en quoi consiste cette migration, nous devons savoir qu'est-ce que c'est au juste Baselayout.

Baselayout c'est en fait le système de configuration des fichiers de base, soit tout ce qui se retrouve dans /etc, /etc/init.d et /etc/conf.d en gros. C'est dans ces répertoires qu'on va configurer notre Gentoo pour qu'elle démarre bien.

En plus des fichiers de configuration, Baselayout est responsable du démarrage votre Gentoo et le tout est géré par le System V.

Lorsque vous utilisez la commande rc-update, vous modifiez un paramètre de configuration dans Baselayout et celui-ci va prendre en compte votre modification.

La nouvelle version de Baselayout change beaucoup de fichiers de configuration en plus de migrer le System V vers OpenRc, soit une version plus performante de System V.

Mise en garde

Tout d'abord, lorsque vous ferez la mise à jour suivante :

Gnome-dev-computer.png
# emerge -auDNv world

et que vous allez voir apparaître Baselayout 2.0, vous devez faire très attention. Alors on vous conseille fortement de faire un Stage 5 ou tout autre type de sauvegarde de votre système avant de mettre à jour votre système.

Warning 64.png
Attention !
En cas de démarrage sans faire la migration, vous allez casser votre installation.

Migration vers Baselayout 2.0

Voici l'ensemble des étapes à réaliser pour passer à Baselayout 2.0

Exécution de la mise à jour

Gnome-dev-computer.png
# emerge --sync
# emerge -auDNv world
# dispatch-conf
# revdep-rebuild

Par la suite, vérifiez que toutes vos configurations sont correctes.

Vérification de la migration

Voici ce qu'il faut vérifier pour s'assurer que le système démarrera au prochain «boot».

Vérification du fichier /etc/rc.conf

Le contenu du fichier /etc/conf.d/rc loge maintenant dans le fichier /etc/rc.conf. Vérifiez par exemple que la variable RC_PLUG_SERVICES est encore là si vous l'utilisiez déjà dans l'ancien fichier de configuration.

Exemple de code : RC_PLUG_SERVICES dans /etc/rc.conf

RC_PLUG_SERVICES="!net.wlan0 !net.eth0"


Vérification du fichier /etc/conf.d/modules

Le fichier /etc/modules.autoload.d/kernel-2.6 devient /etc/conf.d/modules.

Modification des services au démarrage

Avec OpenRC, le gestionnaire de démarrage, vous devez obligatoirement avoir les services suivants :

  • root_procfs
  • mtab
  • fsck
  • swap
  • root
  • udev

Exécutez la commande rc-update pour vous en assurer.

Gnome-dev-computer.png
# rc-update show

Vous obtiendrez une liste semblable à celle-ci.

Exemple de code : rc-update show

hostname |         boot                 
                  xdm | default                      
                devfs |                       sysinit
             net.eth0 | default                      
            killprocs |              shutdown        
                cupsd | default                      
               procfs |         boot                 
                 mtab |         boot                 
            savecache |              shutdown        
                 hald | default                      
              keymaps |         boot                 
              modules |         boot                 
            alsasound |         boot                 
           udev-mount |                       sysinit
             bootmisc |         boot                 
                dmesg |                       sysinit
                 fsck |         boot                 
       udev-postmount |         boot                 
            udev-save |              shutdown        
              hwclock |         boot                 
                 root |         boot                 
        device-mapper |         boot                 
              urandom |         boot                 
             netmount | default                      
                 dbus | default                      
                 swap |         boot                 
               sysctl |         boot                 
           localmount |         boot                 
                local | default                      
             mount-ro |              shutdown        
            syslog-ng | default                      
         termencoding |         boot                 
               net.lo |         boot                 
                udevd |                       sysinit
           vixie-cron | default


Si les services obligatoires mentionnés précédemment ne figurent pas dans la liste produite par rc-update show, veillez les activer.

Gnome-dev-computer.png
# rc-update add root boot
# rc-update add procfs boot
# rc-update add mtab boot
# rc-update add fsck boot
# rc-update add swap boot
# rc-update add udev sysinit


Création des liens symboliques pour le réseau

Les liens réseaux sont disparus durant la migration. Vous devez donc refaire le fichier /etc/init.d/net.* pour que le réseau refonctionne si et seulement si vous n'utilisez pas NetworkManager ou KnetworkManager qui gèrent automatiquement les connexionx au réseau.

Warning 64.png
Attention !
À faire seulement si vous utilisez la méthode manuelle
Gnome-dev-computer.png
# cd /etc/init.d
# ln -sfn net.lo net.eth0
# ln -sfn net.lo net.wlan0


Remplacez eth0 par eth1 si vous avez deux interfaces réseaux et remplacez wlan0 par ath0 si vous avez une carte Wifi Atheros.

Vérification du fichier /etc/conf.d/net

La configuration du fichier /etc/conf.d/net a changé. On n'a plus besoin des parenthèses ouvrante et fermante lorsqu'on passe en paramètre une adresse IP statique.

Vérification du fichier /etc/conf.d/hwclock

Le fichier /etc/conf.d/clock devient /etc/conf.d/hwclock. Assurez-vous que la variable CLOCK contient la valeur local ou utc. Ajoutez le service hwclock au démarrage.

Gnome-dev-computer.png
# rc-update add hwclock boot

Vérification du fichier /etc/timezone

La variable TIMEZONE du fichier /etc/conf.d/clock est maintenant rendue dans le fichier /etc/timezone. Assurez-vous que votre fuseau horaire est bien défini dans ce nouveau fichier.

Fichier : /etc/timezone
# Fuseau horaire

timezone="America/Montreal"

Vérification du fichier /etc/env.d/90xsession

La variable Xsession autrefois dans /etc/rc.conf est maintenant dans le fichier /etc/env.d/90session. Vérifiez bien que ce fichier contient la variable avec la valeur correspondant à votre interface graphique.

Fichier : /etc/env.d/90xsession
XSESSION="Xfce4"

Vérification du fichier /etc/env.d/99editor

La variable EDITOR du fichier /etc/rc.conf est maintenant rendue dans le fichier /etc/env.d/99editor. En supposant que votre éditeur de texte par défaut soit nano, le fichier /etc/env.d/99editor se lit ainsi.

Fichier : /etc/env.d/99editor
EDITOR="/bin/nano"

Activation des logs au démarrage

Maintenant vous avez accès au log de démarrage automatique. Le tout réside dans /var/log/rc.log à la condition d'avoir la variante rc_logger initialisée à Yes dans le fichier /etc/rc.conf.

Fichier : /etc/rc.conf Variable rc_logger activée
# rc_logger launches a logging daemon to log the entire rc process to
# /var/log/rc.log
# NOTE: Linux systems require the devfs service to be started before
# logging can take place and as such cannot log the sysinit runlevel.
rc_logger="YES"

Mise à jour de l'environnement

Vous devez prendre en compte les nouveaux paramètres.

Gnome-dev-computer.png
# env-update && source /etc/profile

Redémarrage

Redémarrez votre ordinateur «and pray God» que tout marche !

Conclusion

Pour votre information, cette migration va être spectaculaire. On peut optimiser le démarrage et selon plusieurs personnes on peut réduire le temps de démarrage de 10 à 50 secondes selon le cas.


Outils personnels