7.14. Nettoyage et sauvegarde du système temporaire

Les fichiers .la de libtool ne sont utiles que pour lier des bibliothèques statiques. Ils ne sont pas requis, et potentiellement dangereux, quand on utilise des bibliothèques dynamiques, surtout pour les systèmes de construction qui n'utilisent pas les autotools. Toujours dans le chroot, supprimez ces fichiers maintenant :

find /usr/{lib,libexec} -name \*.la -delete

Supprimez la documentation des outils temporaires, pour éviter qu'elle ne se retrouve sur le système final, et sauvez environ 35 :Mo :

rm -rf /usr/share/{info,man,doc}/*
[Note]

Note

Toutes les étapes restantes dans cette section sont optionnelles. Cependant, dès que vous commencez à installer des paquets dans Chapitre 8, les outils temporaires seront écrasés. Donc il peut être une bonne idée d'effectuer une sauvegarde des outils temporaires comme décrit plus bas. Les autres étapes ne sont requise que si vous avez vraiment très peu d'espace disque.

Les étapes suivantes sont effectuées depuis l'extérieur de l'environnement chroot. Cela signifie que vous devez quitter l'environnement chroot avant de continuer. La raison pour cela est que :

Quittez l'environnement chroot et démontez les systèmes de fichiers virtuels du noyau :

[Note]

Note

Toutes les instructions suivantes sont effectuées en root. Faites particulièrement attention aux commandes que vous utilisez car une erreur peut ici modifier votre système hôte. Soyez conscient que la variable d'environnement LFS est initialisée par défaut pour l'utilisateur lfs, mais ce n'est pas le cas pour root. Lorsque les commandes doivent être exécutées par root, assurez-vous que vous avez correctement initialisé LFS. On en a parlé dans Section 2.6, « Définir la variable $LFS ».

exit
umount $LFS/dev{/pts,}
umount $LFS/{sys,proc,run}

7.14.1. Stripping

Si la partition LFS est plutôt petite, il est bon de savoir que des éléments inutiles peuvent être enlevés. Les exécutables et les bibliothèques construites jusqu'ici contiennent un peu plus de 90 Mo de symbole de débogages inutiles.

Débarrassez les binaires de leurs symboles de débogage :

strip --strip-debug $LFS/usr/lib/*
strip --strip-unneeded $LFS/usr/{,s}bin/*
strip --strip-unneeded $LFS/tools/bin/*

Ces commandes passeront un certain nombre de fichiers en rapportant qu'elles n'ont pas pu reconnaître leur format de fichier. La plupart sont des scripts au lieu de binaires.

Prenez soin de ne PAS utiliser --strip-unneeded sur les bibliothèques. Les bibliothèques statiques seraient détruites et les paquets de la chaîne d'outils devraient être de nouveau reconstruits.

Maintenant, vous devriez avoir au moins 5 Go d'espace libre sur la partition chroot qui peut être utilisé pour construire et installer Glibc et GCC dans la prochaine phase. Si vous pouvez construire et installer Glibc, vous pouvez construire et installer le reste aussi. Vous pouvez vérifier l'espace libre avec la commande df -h $LFS.

7.14.2. Backup

Maintenant que les outils essentiels ont été créés, il est temps de réfléchir à faire une sauvegarde. Lorsque tous les tests passent correctement dasn les paquets construits précédemment, vos outils temporaires sont dans un bon état et peuvent être sauvegardés pour être utilisés plus tard. Si vous avez une erreur fatale dans le chapitres suivants, cela permet de tout supprimer et de recommencer (en étant plus prudent). Malheureusement, tous les outils temporaires seront supprimés. Pour éviter de passer du temps à refaire quelque chose qui a déjà été construit, préparez une sauvegarde.

Assurez-vous d'avoir au moins 600 Mo d'espace libre (les archives de sources seront incluses dans l'archive de sauvegarde) dans le répertoire personnel de l'utilisateur root.

Créez l'archive de sauvegarde en lançant la commande suivante :

cd $LFS &&
tar -cJpf $HOME/lfs-temp-tools-10.0-systemd.tar.xz .

Remplacez $HOME par un répertoire de votre choix si vous ne voulez pas avoir la sauvegarde dans le répertoire personnel de root.

7.14.3. Restore

Au cas où vous fassiez une erreur et deviez recommencer de zéro, vous pouvez utiliser cette archive pour restaurer les outils temporaires et gagner du temps lors de la correction. Comme les sources se trouvent dans $LFS, elles sont incluses dans l'archive de sauvegarde aussi, donc elles n'ont pas besoin d'être re-téléchargées. Après avoir vérifié que $LFS est correctement initialisée, restaurez la sauvegarde en exécutant les commandes suivantes: :

cd $LFS &&
rm -rf ./* &&
tar -xpf $HOME/lfs-temp-tools-10.0-systemd.tar.xz

De nouveau, vérifiez que l'environnement en correctement paramétré et continuez à construire le reste du système.

[Important]

Important

Si vous avez quitté l'environnement chroot pour vous débarrasser des symboles de débogage, créer une sauvegarde ou redémarrer une construction depuis une sauvegarde, rappelez-vous de monter les systèmes de fichiers virtuels du noyau comme décrit dans Section 7.3, « Préparer les systèmes de fichiers virtuels du noyau » et de re-rentrer dans l'environnement chroot (voir Section 7.4, « Entrer dans l'environnement chroot ») avant de continuer.