La FAQ est divisée en trois documents. La FAQ générale propose des liens vers toutes les questions et les réponses. La FAQ LFS est une sélection des questions les plus fréquemment posées concernant LFS et la FAQ BLFS est une sélection des questions les plus fréquentes et spécifiques à BLFS.
FAQ générale
Informations générales à propos de ces FAQ
- Pourquoi cette FAQ ?
- Qu'est ce que LFS ?
- Qu'est ce que BLFS ?
- Comment puis-je contribuer à cette FAQ ?
Instructions sur l'assistance
- Je débute sur Linux ou LFS et j'ai besoin d'aide
- Quel est le meilleur endroit pour trouver de l'aide ?
- Quelle liste de diffusion pour quel sujet ?
- Comment dois-je m'adresser à la communauté LFS ?
Bugs fréquemment remontés
- Les commandes « ln -s » du livre sont fausses.
- /bin/foo est une copie de /bin/bar.
- Puis-je utiliser une version plus récente que celle du livre ?
- Il y a une nouvelle version du paquet Foo.
- La touche Del ne fonctionne pas.
- Le système s'éteint après que fsck soit sorti en erreur !
- Où sont les archives des paquets de lfs ou les scripts wget ?
- Comment puis-je trouver un paquet ou une commande ?
- Comment faire pour mettre à jour mon système LFS/BLFS ?
La FAQ LFS :
Améliorations fréquemment demandées
- Pourquoi ne pas utiliser LILO plutôt que GRUB ?
- Pourquoi ne pas inclure la FAQ au livre ?
- Pourquoi est-ce que Vim est dans le livre ?
- Pourquoi est-ce que la version HJL de Binutils n'est pas dans le livre ?
- Pourquoi n'y a-t'il pas de gestionnaire de paquets dans le livre ?
- Comment provoquer l'arrêt électrique de la machine à la sortie du système ?
Pendant la lecture et la construction de LFS
- Quel distribution dois-je utiliser pour commencer ?
- Comment compiler le noyau ou configurer un module ?
- Est-ce que c'est mal, les avertissements de compilation de Gcc ?
- Dois-je conserver les sources après l'installation ?
- Comment puis-je procéder à cette toute petite installation dont parle le livre ?
- Existe-t'il des informations sur la façon de construire LFS sur d'autres architectures ?
- Comment faire une compilation croisée avec LFS ?
- Qu'est qu'un fichier texte au format DOS ?
- Le système n'a plus de ptys. Demandez à votre administrateur d'en créer d'autres.
Erreurs de compilation usuelles.
- J'ai utilisé un patch provenant de GNU pour faire des mises à jour. C'est bon ?
- Utilisation des paramètres d'optimisation (paramétrage des CFLAGS)
- Pourquoi est-ce que configure se fige sur « checking for signed size_t type... » ?
- Je n'ai pas effacé l'arborescence des sources après mon dernier essai. Faut-il le faire ?
- J'obtiens le message « /dev/null: Permission denied »
- signal 11 (internal error: Segmentation fault)
- No such file or directory
- bash: ./configure: No such file or directory
- ./configure: bad interpreter: Permission denied
- configure n'arrive pas à déterminer le type de mon hôte.
- checking whether we are using GNU C... no
Erreurs spécifiques à certains paquets
- Glibc: "... it is normal to compile GNU libc with the `linuxthreads' add-on..."
- Glibc sort en erreur et évoque BEGIN et END.
- La compilation de Glibc sort en erreur à cause de l'absence du fichier d'entête nss.h
- Ncurses: le préprocesseur C++ "/lib/cpp" échoue lors de la vérification de conformité
Problèmes de configuration et de démarrage
- Kernel panic: VFS: unable to mount root fs
- init: Id "1" respawning too fast: disabled for 5 minutes
- J'obtiens des erreurs à propos de net-pf-?.
- modprobe: Can't locate module char-major-10-135
- modprobe: Can't locate module /dev/rtc
- eth0: unknown interface
- spurious 8259A interrupt: IRQ14
- Pourquoi est-ce que less (et par conséquent man) affiche <AD> au lieu des tirets ?
FAQ de BLFS :
Questions d'ordre général sur BLFS
Problèmes de compilation
- J'obtiens des erreurs quand je construis un paquet qui requiert GTK+, mais j'ai bien installé GTK+ 2.x.
- undefined reference to `deflate'
- X11/Xlib.h: No such file or directory
- Toute erreur survenant lors de la compilation d'un élément de Gnome
- XFree86: Makefile.proto:32: *** missing separator
Problème de configuration
Informations générales à propos de ces FAQ
- Pourquoi cette FAQ ?
-
La FAQ essaye de répondre aux questions avant qu'elles soient posées. Ça vous évite le souci de poser les questions et parfois, celui de rencontrer le problème.
Cela réduit le trafic et améliore le ratio signal/bruit, même si cela n'est qu'un effet de bord bien utile.
Comme la FAQ n'est pas l'emplacement naturel où chercher l'information, on ne devrait y ajouter que ce qui ne peut pas aller dans la documentation adéquate. Il sera parfois nécessaire d'ajouter à la documentation un pointeur vers cette information.
- Qu'est ce que LFS ?
-
LFS signifie Linux From Scratch et c'est un projet qui a pour but de vous apprendre le fonctionnement interne de Linux en vous faisant construire un système Linux par le téléchargement, la compilation et l'installation des paquets.
Vous pouvez aussi aller lire l'introduction à LFS.
- Qu'est ce que BLFS ?
-
LFS est un système très basique, qui contraste beaucoup avec les distributions traditionnelles. La raison est la suivante : LFS n'est pas prévu pour créer un système à votre guise. Il est prévu pour être juste suffisant pour vous permettre de créer un système à votre guise. Ce n'est pas une fin, c'est un commencement. Quand vous en avez terminé avec LFS, vous venez seulement de commencer à bâtir votre système.
Ça peut être un problème si vous débutez avec les systèmes Unix et voulez une installation bureautique classique avec X et un navigateur internet sans savoir de quels paquets vous avez besoin. C'est pour cela qu'il existe Beyond Linux From Scratch, ou BLFS.
- Contribuer à cette FAQ.
-
Les suggestions sont plus que bienvenues. Le mainteneur de la FAQ peut être joint par courrier électronique directement ou sur la Liste de diffusion de la FAQ.
Les suggestions pertinentes comprennent l'ajout de questions fréquemment posées (avec des réponses fouillées) et la suppression des questions obsolètes.
Si vous pensez contribuer régulièrement à cette FAQ, vous devriez vous inscrire à la liste de diffusion. Toutes les suggestions, tous les ajouts (et parfois suppressions) y sont débattues. Il est possible d'appliquer des patches à la FAQ, même si les contributions au classique format texte sont également acceptées.
Tout ce qui est censé intégrer la FAQ, sans qu'il s'agisse d'une révision complète, doit être réfléchi, vérifié, approfondi ; et écrit dans un style qui se marie bien avec le contenu actuel.
Instructions sur l'assistance
- Et si je débute avec Linux ou LFS ?
-
Si vous avez lu les pages prérequis et public, vous savez que LFS vise les utilisateurs de Linux qui ont un niveau intermédiaire et avancé. Quiconque a quelques mois d'expérience sur Linux et en particulier la console devrait pouvoir monter avec succès son système LFS.
LFS semble être un bon guide pour débuter sous Linux, cependant la réalité est bien différente. Notre expérience sur les canaux d'assistance montre que LFS est difficile à appréhender, et se révèle être une expérience frustrante pour les débutants parce qu'il leur manque la compréhension des concepts de base.
Concrètement, cela signifie que les débutants devraient acquérir de l'expérience avant de commencer avec LFS. La page des prérequis liste les connaissances minimales à avoir sur Linux, et s'il vous plaît, lisez également l'astuce sur la « Pré-lecture essentielle pour vivre avec une LFS ».
Ces documents et cette FAQ sont votre petit guide de survie sous Linux. Vous allez bien vous amuser avec LFS si vous les avez lu, ce sera beaucoup plus difficile avec LFS et avec la communauté, et plus probablement avec vous-même, si vous ne les avez pas lu.
- Quel est le meilleur endroit où trouver de l'aide ?
-
Si vous n'avez pas trouvé de réponse dans cette FAQ, il y a d'autres endroits où aller chercher.
Si vous rencontrez un problème avec un passage du livre, ça ne peut pas faire de mal de revenir quelques pages en arrière. C'est surprenant avec quelle facilité certaines petites choses peuvent nous échapper.
Enfin, la lecture des pages de man et d'info vous apportera des informations pratiques sur certains sujets, si ce n'est la réponse à ce que vous cherchez. Cela vous assurera également d'en savoir assez pour ne pas vous mettre dans l'embarras si vous devez poser une question à quelqu'un.
Le Projet de Documentation de Linux propose des tutoriels et une tonne de documentation. Vous devriez y trouver quelque chose.
La page de recherche du site en anglais inclut les listes de diffusion. Beaucoup de questions y ont été débattues au moins une fois.
Pour une aide de type « assistance », IRC est souvent le meilleur outil. C'est plus rapide et ça n'encombre pas la liste de diffusion. Plus d'informations sur les canaux IRC sur la page d'aide.
Il y a quelques canaux IRC dignes d'intérêt.
- #lfs - le canal communautaire de LFS en anglais.
- #lfs-fr - le canal communautaire de LFS en français.
- #lfs-support - Support pour LFS et BLFS en anglais.
- #hlfs - Support pour le livre HLFS en anglais.
Si vous formulez une requête d'assistance, vous aurez plus de chances d'obtenir une aide amicale et compétente sur #lfs-support.
En dernier recours, on trouve les listes de diffusion. Les gens risquent de vous en vouloir si vous utilisez la mauvaise liste ou si vous postez sur plusieurs listes à la fois. Les informations sur les listes de diffusions se trouvent sur la page d'aide et indiquent quelle liste utiliser.
Souvenez-vous de fournir suffisamment d'informations quand vous postez sur la liste de diffusion. Au chapitre 1 de LFS vous trouverez des instructions pour utiliser ces listes. De plus, quelqu'un a écrit une astuce qui détaille la procédure de remontée d'erreurs.
- Quelle liste de diffusion pour quel sujet ?
-
Des informations sur toutes les listes de diffusion publiques sont disponibles sur la page en anglais des listes de diffusion. Voici quelques instructions pour déterminer quelle liste utiliser :
- Envoyez vos requêtes d'assistance sur les livres des versions stables sur lfs-support. Pour tout ce qui ne concerne pas LFS, utilisez blfs-support. Les rapports de bogues sont les bienvenus ; vous pouvez créer un ticket pour le projet adéquat ou envoyer un rapport sur la liste de diffusion lfs-dev.
- Si vous n'avez aucune difficulté à suivre le Livre LFS lui-même, n'envoyez pas de courriel à lfs-support.
- A moins que vous ne suggériez une amélioration au livre LFS lui-même, n'envoyez pas de courriel à lfs-dev.
- Seules les suggestions sur le Livre BLFS sont acceptées sur blfs-dev.
- Les choses sont un peu différentes avec blfs-support. Tout ce qui ne rentre pas dans une des listes précédentes rentre ici sauf si cela concerne le prix de la bière et les guerres GNU contre BSD.
- Le prix de la bière, les guerres GNU contre BSD ou Microsoft contre Linux sont limitées à lfs-chat. Aujourd'hui, c'est là également que les discussions sur la matériel devraient se dérouler.
Remarquez que si vous évoquez XFree86, KDE ou GNOME, vous pouvez être sûr que votre message n'est pas fait pour lfs-dev ou lfs-support.
- Et la netiquette ?
-
Voici quelques informations pratiques sur l'étiquette. Elles incluent seulement celles qui seront signalées si vous les avez omises. Ceux qui ont l'habitude des listes de diffusion de projets trouveront que les premières infos sont évidentes. Vers la fin, elles le sont un peu moins.
Les justifications de ces règles ne sont pas mentionnées mais soyez assurés que ces instructions sont bien plus que les préférences personnelles d'un individu.
Même si le texte mentionne exclusivement « les listes », le but n'est pas d'ignorer les newsgroups miroirs des listes de diffusion.
Ceci étant fait, voici quelques infos sur les comportements à adopter suivis de choses plus « mécaniques » :
Souvenez-vous qu'il est incorrect de poser des questions dont les réponses figurent dans la documentation couramment accessible comme les livres LFS ou BLFS, cette FAQ, les astuces LFS, les pages de man correspondantes, les archives des listes et les recherches Google. Tant que vous pouvez montrer que vous avez fourni un effort pour trouver une réponse et que vous ne vous sentez pas offensé par un pointeur vers la documentation, aucune personne raisonnable n'opposera d'objection à votre question.
La plupart des conflits embarrassants débutent lorsqu'un débutant pose une question dont la réponse est évidente, se fait alors critiquer (même gentiment) et se trouve publiquement offensé. Essayez, s'il vous plait, d'éviter cette situation. Le fait de diriger, sans autre explication, vers la réponse exacte dans la documentation est suffisant. Si vous ressentez le besoin de critiquer, faites le en privé, pas sur les listes. Le raisonnement est le même pour tout ce qui pourrait « s'enflammer ».
Les membres des listes viennent du monde entier, donc l'argot et les expressions idiomatiques risquent d'être mal comprises (comme en témoigne la discussion récente sur le démarrage). Les propos injurieux, relatifs à la politique, à la guerre, à la religion (même dans les signatures) risquent de contrarier quelqu'un quelque part dans le monde, alors évitez les, s'il vous plait. Enfin, on considère qu'il est plus poli de rédiger en anglais car c'est une langue que la plupart des gens connaissent avant tout autre.
Passons maintenant aux choses plus « mécaniques ».
- Ne postez pas en HTML. Si vous utilisez Yahoo, Hotmail, ou Outlook et n'avez pas désactivé le HTML, c'est qu'il est activé. Si vous utilisez un autre client de messagerie, vérifiez avant de poster. Si vous ne savez pas comment désactiver le HTML, allez lire nomime.html. Tous les courriers contenant du HTML seront redirigés vers /dev/null et n'atteindront jamais la liste. Malheureusement, le filtre HTML de Spamassassin est très strict et bloquera tous les courriers avec du HTML ou des balises de type XML. Gardez bien cela en tête si vous postez des extraits de XML sur une liste. Un contournement largement utilisé consiste à remplacer les signes supérieur < et inférieur > par des crochets [].
- Coupez les lignes à 72 caractères. Si vous ne voulez pas le faire à la main, configurez votre client de messagerie pour qu'il le fasse automatiquement à l'envoi des messages.
- Répondez sous les citations. Ce n'est pas facile avec Outlook. Il existe un greffon pour corriger Outlook, et un pour Outlook Express.
- Limitez vos signatures à quatre lignes.
- Élaguez les citations, surtout les signatures. Mais n'élaguez pas au point de rendre votre message difficile à comprendre sans consulter le message original.
- Ne cliquez pas sur « Répondre » à moins que vous ne soyez vraiment en train de répondre à un message. Utilisez les boutons « Nouveau » ou « Écrire » ou quel que soit le nom que votre logiciel de messagerie lui donne, pour poser une nouvelle question ou commencer un nouveau fil de discussion. Le bouton « Répondre » ne fait pas que remplir le champ « Sujet », il enverra votre message au mauvais endroit sauf si votre message est effectivement une réponse.
Ce qui suit n'est pas de la plus grande importance, mais ça peut être utile de le savoir. Sur les listes LFS, les gens effacent généralement le champs CC et envoient leurs réponses à la liste. Ce n'est sans doute pas une bonne idée mais cette pratique existe. Elle est due à une situation politique qui n'est pas près de changer.
La RFC 1855 « fournit un jeu d'instructions minimal concernant l'Étiquette sur la Toile (la Netiquette) et fonctionne comme un jeu d'instructions minimal à destination des individus, qu'ils soient utilisateurs ou administrateurs ».
Bogues fréquemment remontés
- Dans le livre, les commandes « ln -s » sont incorrectes.
-
Non, les commandes « ln -s » du livre sont correctes. Un lien symbolique est juste un fichier spécial qui contient le nom de fichier donné. Le nom de fichier est donc relatif au lien, pas au répertoire courant au moment de la création du lien. Essayez pour voir. Plus d'informations avec
man ln
. - /bin/foo est une copie de /bin/bar.
-
Essayez "ls -i /bin/foo /bin/bar". Les numéros d'inodes sont-ils les mêmes ? Si oui, ce ne sont pas des copies, ce sont des liens matériels.
Pour plus d'explications sur les différences entre liens symboliques et liens matériels, consultez la page de Questions/Réponses sur Linux Gazette à cette adresse : http://linuxgazette.net/105/pitcher.html.
- Puis-je utiliser une version plus récente que celle du livre ?
-
Si c'est la première fois que vous construisez LFS, ce n'est pas une bonne idée d'utiliser une version qui n'est pas dans le livre, ou qui en diffère. Les utilisateurs réguliers des canaux IRC ont un proverbe, « FBBG » (« Follow Book, Book Good »), soit « Suivez livre, livre bon ». Ils ont, avec les utilisateurs des listes, souvent aidé des débutants mécontents ayant dévié du livre pour leur première construction.
Une fois que vous avez bâti un système « au plus près du livre », vous avez une base de connaissance solide à partir de laquelle vous allez pouvoir vous lancer à cœur joie (ou endolori le plus souvent) dans diverses expériences.
- Il y a une nouvelle version du paquet Foo.
-
Si cette nouvelle version a plus d'un jour, il est probable que quelqu'un l'ait déjà testé et mentionné dans les listes de diffusion. Cherchez dans les archives avant de poster une question pour savoir si ce paquet fonctionne.
Si vous voulez annoncer la sortie d'une nouvelle version, suivez ces étapes pour éviter de faire une annonce en double.
- Vérifiez s'il y a un ticket LFS ou un ticket BLFS ouvert pour voir si elle y a été postée.
- S'il n'y a pas de ticket ouvert concernant cette sortie, annoncez-la sur la liste lfs-book (ou sur blfs-book si le paquet concerne BLFS). Et si vous voulez, testez-le et rapportez tout problème ou changement dans les instructions de compilation.
- La touche Suppr. ne fonctionne pas.
-
Lisez la page inputrc du livre LFS.
- Le système s'éteint quand fsck sort en erreur !
-
Les système Unix lancent normalement sulogin quand le fsck d'un démarrage normal sort en erreur, afin que root puisse se connecter et résoudre le problème. Comme sulogin va accepter n'importe quel mot de passe si /etc/passwd est corrompu, les développeurs de LFS ont estimé que cela représentait un risque pour la sécurité. Les scripts de démarrage de LFS éteignent donc la machine en cas d'erreur de fsck, et elle doit être démarrée avec le paramètre de noyau « init=/bin/bash » afin d'obtenir un shell root. Savoir si cela est sage ne rentre pas dans le périmètre de cette FAQ, mais si cela ne vous convient pas, changez les scripts de démarrage avant qu'il ne soit trop tard.
- Où sont les archives des paquets LFS ou les scripts wget ?
-
Les archives des paquets sont disponibles sur le dépôt de fichiers de LFS. Il y a aussi un lien vers wget-list dans le livre, vers la fin de la page d'Introduction aux paquets et correctifs.
- Comment puis-je trouver un paquet ou une commande ?
-
Consultez la page téléchargement de LFS.
- Comment puis-je mettre à jour mon système LFS/BLFS ?
-
Vous le savez probablement déjà mais LFS n'est pas un distribution au sens traditionnel du terme. Son but premier est : enseigner aux gens comment un système Linux fonctionne en interne.
Bien que cela signifie que vous aillez un grand contrôle sur votre système (« Votre distro. Vos règles. »), Il a aussi l'inconvénient d'avoir à prendre soin de la mise à jour vous-même.
Si vous avez construit un système LFS et l'avez complété pour qu'il devienne votre système principal, la meilleure chose à faire est de décider d'une stratégie de mise à niveau. Vous voulez conserver la dernière version de chaque paquet ? Alors faites attention, parce que vous allez vous faire mal. Je recommande d'être légèrement conservateur lors de la mise à niveau pour maintenir un système sain. Une règle générale qui fonctionne pour la plupart des gens est : mettre à jour seulement les paquets s'ils ont des correctifs de sécurité. Inscrivez-vous à lfs-security et LWN pour vous tenir au courant des correctifs de sécurité. Une autre règle est : ne pas mettre à jour la chaîne d'outils (gcc, glibc et binutils) à moins de reconstruire votre système entièrement. Ces paquets constituent le cœur de votre système LFS, les détruire signifie détruire la capacité de compiler des paquets ou même exécuter des fichiers binaires.
Rappelez vous que la mise à jour des paquets se fait à vos risques et périls. LFS fait très attention à présenter un ensemble stable de paquets qui sont compatibles pour aller au bout de BLFS et que vous puissiez compiler OpenOffice.Org et Java (qui sont de vrais mastodontes à compiler). Cela signifie que votre système LFS peut être un peu dépassé mais assurer la compatibilité et la stabilité. Vous pouvez comparer cela aux versions Stable et testing de Debian, bien que la version LFS stable soit généralement très récente comparée aux autres distributions.
En général il est possible de mettre à jour des paquets seuls ; ils réécriront simplement le vieux contenu. Les gestionnaires de paquets prennent soin de désinstaller les anciennes versions, et c'est clairement pratique d'avoir une sorte de gestion de paquet en place. Regardez les astuces ; il y en a plusieurs, de RPM à DEB en passant par TGZ (Slackware), Checkinstall et les utilisateurs paquets.
Un dernier commentaire : Quelles instructions devez vous utiliser pour la mise à jour d'un paquet ? En général, vous pouvez utiliser les instructions standards de LFS, bien que vous ne devez pas aveuglement penser qu'elles s'appliqueront pour tous les paquets. Pour rester informé des mises à jour et des nouvelles instructions, inscrivez vous à lfs-dev. Gardez en tête que ce n'est pas une liste de support mais une liste de développement.
FAQ anciennes et périmées
- J'ai utilisé une version qui n'est pas dans le livre. Est-ce un problème ?
-
Il y a déjà une entrée dans la FAQ qui décrit cela. Comme presque personne ne se réfère à cette entrée, elle est maintenant obsolète.
- Où est-ce ?
-
Obsolète à cause du livre BLFS.
- Où est portmap ?
-
Obsolète à cause du livre BLFS.
- Où puis-je avoir des Logos LFS ?
-
Obsolète à cause de la page Web BLFS artwork.
- Ma construction optimisée de glibc échoue dans spinlock.c
-
Nous n'incitons pas les gens à optimiser la glibc. De plus, lorsque vous utilisez des indicateurs d'optimisation (paramètres CFLAGS), il faudrait faire attention à cette question.
Merci
Cette FAQ est dédiée à tous les gens durs à la tâche sur les listes de support qui me tiennent occupés avec cette FAQ ;-).
Merci à...
- Seth W. Klein pour la création et la maintenance de cette FAQ avant moi.
- Tous les gars (et toutes les quelques filles aussi, j'aimerai qu'il y en ai plus) des listes, de qui les réponses, beaucoup des réponses viennnent.
- En particuliers ceux d'entre vous qui comprennent la question, ses symptômes et ses réponses et qui m'envoient le tout. Votre ID est immortalisée pour toujours dans le journal des modifications (enfin seulement pour la durée d'un toujours numérique, mais bon, au moins j'essaye :-))
- Tushar Teredesai, Chris Lingard, Jeremy Utley, The Cheeze et les innombrables autres personnes qui régulièrement poste des liens de FAQ sur les listes d'aide.
- Les éditeurs de BLFS dont le livre produit si délicieusement peu de questions récurrentes.