Ce chapitre inclut une liste de paquets devant être téléchargés pour construire un système Linux de base. Les numéros de versions affichés correspondent aux versions des logiciels qui sont connues pour fonctionner, et ce livre est basé sur leur utilisation. Nous déconseillons fortement l’utilisation de versions différentes. En effet, les commandes de construction d’une version pourraient ne pas fonctionner sur une version différente, à moins que cette version différente ne soit mentionné dans un errata ou une information de sécurité. Les versions plus récentes pourraient aussi avoir des problèmes nécessitant des contournements. Ces derniers seront développés et stabilisés dans la version de développement du livre.
Pour certains paquets, l'archive de version et l'instantané du dépôt (Git ou SVN) pour cette version peuvent être publiés avec des noms similaires. Une archive de version contient des fichiers générés (par exemple, un script configure généré par autoconf) en plus du contenu de l'instantané du dépôt. Le livre utilise les archives de version chaque fois que cela est possible. Utiliser des instantanés de dépôt au lieu des archives de version spécifiées dans le livre causera des problèmes.
Il se peut que les emplacements de téléchargement ne soient pas toujours accessibles. Si un emplacement de téléchargement a changé depuis la publication de ce livre, Google (https://www.google.com/) offre un moteur de recherche utile pour la plupart des paquets. Si cette recherche est infructueuse, essayez un des autres moyens de téléchargement disponible sur https://www.linuxfromscratch.org/lfs/mirrors.html#files.
Les paquets et les correctifs téléchargés doivent être stockés à un
emplacement où ils seront facilement disponibles pendant toute la
construction. Un répertoire fonctionnel est aussi requis pour
déballer les sources et pour les construire. Vous pouvez utiliser le
répertoire $LFS/sources
à la fois comme
emplacement de stockage pour les archives tar et les correctifs, mais
aussi comme répertoire fonctionnel. En utilisant ce répertoire, les
éléments requis seront situés sur la partition LFS et seront
disponibles à toutes les étapes du processus de construction.
Pour créer ce répertoire, lancez, en tant qu'utilisateur, la commande
root
, avant de commencer la session
de téléchargement :
mkdir -v $LFS/sources
Donnez le droit d'écriture et le droit sticky sur ce répertoire. « Sticky » signifie que même si de nombreux utilisateurs peuvent écrire sur un répertoire, seul le propriétaire du fichier peut supprimer ce fichier à l'intérieur du répertoire sticky. La commande suivante activera les droits d'écriture et sticky :
chmod -v a+wt $LFS/sources
Il y a plusieurs moyen d'obtenir tous les paquets nécessaires et les correctifs requis pour construire LFS :
Vous pouvez télécharger les fichiers individuellement comme décrit dans les deux prochaines sections.
Pour les versions stables du livre, une archive de tous les fichiers nécessaires est disponible au téléchargement sur l'un des miroirs de LFS listés sur https://www.linuxfromscratch.org/mirrors.html#files.
Vous pouvez télécharger les fichiers avec wget et un wget-list comme décrit ci-dessous.
Pour télécharger tous les paquets et les correctifs en utilisant wget-list comme entrée pour la commande wget, utilisez :
wget --input-file=wget-list-systemd --continue --directory-prefix=$LFS/sources
En outre, à partir de LFS-7.0, un fichier séparé, md5sums, peut être utilisé pour vérifier que
tous les paquets sont disponibles avant de continuer. Mettez ce
fichier dans $LFS/sources
et
lancez :
pushd $LFS/sources md5sum -c md5sums popd
Vous pouvez utiliser cette vérification après avoir récupéré les fichiers nécessaires avec une des méthodes proposées plus haut.
Si vous téléchargez les paquets et les correctifs en tant
qu’utilisateur non-root
, ces fichiers
appartiendront à l’utilisateur. Le système de fichiers identifie le
propriétaire par son UID et l’UID d’un utilisateur normal dans la
distribution hôte n’est pas attribué dans LFS. Dans ce cas, le
propriétaire par défaut des fichiers sera un UID sans nom dans le
système LFS final. Si vous n’attribuez pas le même UID à votre
utilisateur dans le système LFS, changez dès maintenant les
propriétaires de ces fichiers à root
afin d’éviter le problème suivant :
chown root:root $LFS/sources/*