absolinux

Aller à la page : 1 2 3 suivante

Sujet : Problème /bin/sed: No such file or directory LFS Version 6.6
posté par haroal 13 messages     le  26-04-2010  à  19:49citer
Bonjour,
Comme dit dans le titre, j'ai un problème avec Sed : étant débutant, j'ai fait exactement comme dans le LFS version 6.6 (arborescence, commandes, ...etc) et tout c'est déroulé sans problème jusqu'au chapitre 6.7.
En effet, dès que j'ai lancé la commande : [I]make mrproper[/I] pour les Headers Linux, la console m'a retourné :
[I]/bin/sh: /bin/sed: No such file or directory
Makefile:535: /sources/linux-2.6.33.2/arch//Makefile: No such file or directory
make: *** No rule to make target `/sources/linux-2.6.33.2/arch//Makefile'.  Stop.[/I]
Après quelques tests, j'en ai conclus que je ne peux pas accéder à sed depuis l'environnement chroot, mais je peux le faire depuis le root ou un utilisateur quelconque.
Comment faire pour avoir accès à Sed depuis l'environnement chroot et ainsi compiler les Headers Linux afin de continuer l'aventure LSF ? =)

Je suis sous Ubuntu 9.10 Karmic Koala sur une machine 32bits. La version du noyau linux que j'utilise pour le LFS est la dernière, à savoir la 2.6.33.2.
Merci d'avance pour votre réponse.

haroal
posté par Texou 271 messages     le  26-04-2010  à  19:55citer
Salut,

Déjà une chose essentielle, ne fais aucune commande du chapitre 6 indiquées après le chroot dans ton hôte. Si la commande intervient après le chroot, il faut la faire dans l'environnement construit au chapitre 5.

Pour sed, le mieux est en chroot de retester en tapant la commande sed sans argument voir si elle retourne la même erreur. Puis, moi je ferais un:
find / -name "sed"
(depuis le chroot)

ou sinon, depuis ton hôte:
find /tools -name "sed"

Si ces 2 commandes donnent aucun résultat, tu peux essayer, depuis le hôte et en tant qu'utilisateur lfs, d'installer sed comme indiqué au chap5. Il se peut que tu l'aies oublié au passage.

Voilou. Tiens nous au courant.

_______________________

Texou
Coadministrateur du projet absolinux
Président de l'association traduc.org
Coordinateur du projet Linux From Scratch
Coordinateur au sein du projet Trad GNU de l'April
Animateur suppléant du groupe de travail Accessibilité de l'April
posté par haroal 13 messages     le  26-04-2010  à  21:35citer
D'abord merci d'avoir répondu aussi rapidement.

J'ai testé ce que tu m'as dit : j'ai tapé la commande sed en chroot, elle m'a retourné [I]bash: /bin/sed: No such file or directory[/I]. Je l'ai ensuite testé avec mon système hôte ( le sed installé lors du chapitre 5 ) et ça m'a renvoyé la page d'accueil habituelle avec la documentation. Donc le sed marche sur mon système hôte, mais ne marche pas en chroot alors que j'utilise le même !

J'ai ensuite essayé [I]find / -name "sed"[/I] dans le chroot et ça m'a renvoyé [I]/bin/sed    /tools/bin/sed[/I] (j'avais essayé de résoudre le problème en mettant un lien symbolique dans /bin, alors que ce n'était pas écrit dans le LSF, mais ça n'avait pas marché).

Je penses qu'il y a un truc avec le chroot, mais je ne vois pas lequel puisque le sed installé marche, mais ne semble pas vouloir être lancer.

Merci encore.
Haroal

PS : J'ai réinstallé le sed plusieurs fois (toujours dans les mêmes conditions que lors du chapitre 5), mais il ne marche toujours pas en chroot.
    Je viens de remarquer qu'avec la commande [I]find /tools -name "sed"[/I], tu me fais chercher sed dans le répertoire /tools, mais il ne s'y trouve pas puisqu'il est installé dans /tools/bin. Erreur de ma part ou non ?
posté par Texou 271 messages     le  26-04-2010  à  22:11citer
haroal a dit :
J'ai testé ce que tu m'as dit : j'ai tapé la commande sed en chroot, elle m'a retourné [I]bash: /bin/sed: No such file or directory[/I]. Je l'ai ensuite testé avec mon système hôte ( le sed installé lors du chapitre 5 ) et ça m'a renvoyé la page d'accueil habituelle avec la documentation. Donc le sed marche sur mon système hôte, mais ne marche pas en chroot alors que j'utilise le même !

Non justement. Là il y a vraiment quelque chose qui t'échappe. Quand tu lances le sed depuis ton hôte, ce n'est pas celui du chap5 qui s'exécute, mais celui de ta ubuntu. Donc qu'il marche dans ton hôte ne prouve absolument rien.

haroal a dit :
J'ai ensuite essayé [I]find / -name "sed"[/I] dans le chroot et ça m'a renvoyé [I]/bin/sed    /tools/bin/sed[/I] (j'avais essayé de résoudre le problème en mettant un lien symbolique dans /bin, alors que ce n'était pas écrit dans le LSF, mais ça n'avait pas marché).

Intéressant ça. Que te renvoie: file /bin/sed exécuté depuis chroot? Quelle commande de chroot tu tapes exactement pour te chrooter?

haroal a dit :
Je penses qu'il y a un truc avec le chroot, mais je ne vois pas lequel puisque le sed installé marche, mais ne semble pas vouloir être lancer.

Non cela n'est pas sûr que le sed installé marche (cf. mes explications plus haut).


haroal a dit :
Merci encore.

De rien

haroal a dit :


PS : J'ai réinstallé le sed plusieurs fois (toujours dans les mêmes conditions que lors du chapitre 5), mais il ne marche toujours pas en chroot.

Ok. On verra selon les résultats de tes réponses. Dans quelles conditions t'installe (ou réinstalle) le sed chap5?

haroal a dit :
    Je viens de remarquer qu'avec la commande [I]find /tools -name "sed"[/I], tu me fais chercher sed dans le répertoire /tools, mais il ne s'y trouve pas puisqu'il est installé dans /tools/bin. Erreur de ma part ou non ?

Erreur oui, je ne te fais pas chercher dans /tools, je fais démarrer la recherche à tools. Donc il ne cherche que dans tools mais explore tous les sous-répertoires du dossier tools, donc du système temporaire. Et il n'est pas question qu'il explore hors de tools justement.

a++

_______________________

Texou
Coadministrateur du projet absolinux
Président de l'association traduc.org
Coordinateur du projet Linux From Scratch
Coordinateur au sein du projet Trad GNU de l'April
Animateur suppléant du groupe de travail Accessibilité de l'April
posté par haroal 13 messages     le  26-04-2010  à  22:31citer
D'abord, lorsque je dit que j'ai utilisé le même sed, c'est que je l'ai voulu : j'ai été dans /tools/bin et j'ai lancé sed avec la commande [I]./sed[/I]. Dans tous les cas, saches que tous les "sed" (celui du LFS et celui du système hôte) marchent : j'ai vérifié =)

Ensuite, j'ai essayé la commande que tu m'avais demandé : [I]file /bin/sed[/I] qui m'a renvoyé : dans le chroot [I]bash: file: command not found[/I] et dans le système hôte [I]/bin/sed: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped[/I].
Pour me chrooter, j'utilise la commande écrite dans le LFS 6.6 à savoir [I]chroot "$LFS" /tools/bin/env -i HOME=/root TERM="$TERM" PS1='\u:\w\$ ' PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin /tools/bin/bash --login +h[/I].

J'installe le sed en étant logué en tant que lfs depuis mon système hôte, comme tout le monde fait lors de l'installation de sed au chapitre 5.

Enfin, merci de m'avoir corrigé sur mon erreur : j'avais pas très bien compris la commande find =)

Merci d'accorder autant de ton temps à me répondre.
Haroal


posté par Texou 271 messages     le  26-04-2010  à  22:38citer
ok on avance. Toujours en chroot, ça marche si tu tapes /bin/sed (le chemin complet donc)? et que dit echo $PATH
Et tant qu'on y est, que dit /bin/file (le chemin complet vers file). Ca s'exécute?

a++ :)

_______________________

Texou
Coadministrateur du projet absolinux
Président de l'association traduc.org
Coordinateur du projet Linux From Scratch
Coordinateur au sein du projet Trad GNU de l'April
Animateur suppléant du groupe de travail Accessibilité de l'April
posté par haroal 13 messages     le  26-04-2010  à  22:45citer
Alors :
        [I]/bin/sed[/I] donne toujours [I]bash: /bin/sed: No such file or directory[/I];
        [I]echo $PATH[/I] me donne [I]/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin[/I];
        [I]/bin/file[/I] me donne [I]bash: /bin/file: No such file or directory[/I], mais je pense pas qu'il doive être installé dans l'environnement chroot là où j'en suis, si ? Parceque là il n'est même pas dans le dossier /bin du chroot.
posté par Texou 271 messages     le  26-04-2010  à  22:50citer
Bon faisons le point. Qu'on soit bien d'accord: si depuis l'hôte tu fais ls /tools/bin/sed, il le voit. Si tu fais ls /bin/sed depuis chroot là il le voit plus. Le résumé convient-il? Si oui, fais ls en chroot, et ls /bin pour voir.

a+
_______________________

Texou
Coadministrateur du projet absolinux
Président de l'association traduc.org
Coordinateur du projet Linux From Scratch
Coordinateur au sein du projet Trad GNU de l'April
Animateur suppléant du groupe de travail Accessibilité de l'April
posté par haroal 13 messages     le  26-04-2010  à  23:01citer
Alors, non : le chroot voit, peut déplacer, copier le fichier /bin/sed (lien symbolique vers le programme /tools/bin/sed) ains que voir, déplacer, copier le fichier /tools/bin/sed. Le seul problème est que lorsque je suis dans le chroot, je ne peux plus utiliser ni /bin/sed, ni /tools/bin/sed ce qui m'empêche d'utiliser , entre autre, [I]make mrproper[/I] lors de l'installation des en-têtes Linux.
Pourtant, lorsque je suis connecté en root ou en utilisateur lfs, je peux lancer le lien /bin/sed et le programme /tools/bin/sed : c'est cela qui m'intrigue.

J'espère avoir été suffisamment claire.

PS : les ls fonctionnent et affiche bien le fichier /bin/sed et /tools/bin/sed. Je peux également les voir en utilisant l'interface graphique.
    De plus, j'ai vérifié, les droits sont bons et les fichiers sont bien exécutables.
posté par Texou 271 messages     le  26-04-2010  à  23:07citer
Mais quand t'es chrooté, ls /bin/sed et /bin/file marchent?


_______________________

Texou
Coadministrateur du projet absolinux
Président de l'association traduc.org
Coordinateur du projet Linux From Scratch
Coordinateur au sein du projet Trad GNU de l'April
Animateur suppléant du groupe de travail Accessibilité de l'April


Aller à la page : 1 2 3 suivante