Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Linux.debian : problème avec le /lib

Posté par marsu1983 () le 02 mai 2008

Bonjour,



Voila par mégarde j'ai lancer une commande fatale mv /lib /home/.... Je n'ai pas fait attention et du coup j'ai bougé l'emplacement de toutes les librairies et je n'ai plus accès à mes commandes de base ype cp, mv etc ...pour rétablir mon dossier (les commandes ne trouvent plus les librairies nécessaires :(). Si je ferme ma console ssh je ne pourrai plus la rouvrir et du coup je cherche une solution.



Est il possible de redéfinir par une variable l'emplacement du /lib pour dire a mes commande système de ne plus aller chercher les lib dans /lib mais dans le répertoire ou j'ai par mégarde déplace les fichiers.

J'ai vu la variable $LD_LIBRARY_PATH mais en changeant, cela ne résout pas mon problème.



Quelqu'un peut il m'aider ?



Merci d'avance

> Lire le message (19 commentaires, moyenne: 1,7).  

Vous avez demandé le commentaire #927785.

livecd

Posté par Farvardin (page perso, ) le 02/05/2008 à 19:14. (lien). Évalué à 2.

à mon avis tu devrais essayer avec un livecd. Mais vu que tu parles de console ssh, je présume que tu es à distance.
Tu peux essayer avec un lien symbolique (genre ln -s /home/lib /lib ) mais je ne sais pas si cela fonctionnera aussi.
Il y a également busybox, si c'est installé tu peux tenter le coup, mais pareil, cela utilise des appels à des bibl. dans /lib

--
Tous ensemble contre l'esclavitude des logiciels privateurs !
  • [^]Re: livecd

    Posté par marsu1983 () le 02/05/2008 à 19:21. (lien). Évalué à 1.

    Oui je suis à distance j'ai bien pensé avec avec un livecd type Ubuntu mais ca me fait me déplacer ce que je voudrai éviter mais si a priori il n'y pas de solutions comme dit le proverbe "quand on a pas de tetes on a des jambes " dommage :(
    Mais si quelqu'un voit une soluce j suis preneur :)

    • [^]Re: livecd

      Posté par Christophe --- () le 02/05/2008 à 19:24. (lien). Évalué à 2.

      Bonjour,

      Tu peux essayer la méthode suivante:

      export LD_LIBRARY_PATH=le_nouveau_chemin

      Ensuite, le mv réparateur devrait passer...

    [^]Re: livecd

    Posté par Farvardin (page perso, ) le 02/05/2008 à 19:23. (lien). Évalué à 2.

    pour le LD_LIBRARY_PATH je présume que tu as fait correctement l'exportation ? Sinon la syntaxe devrait être (en bash) :

    export LD_LIBRARY_PATH=/home/lib

    --
    Tous ensemble contre l'esclavitude des logiciels privateurs !
    • [^]Re: livecd

      Posté par marsu1983 () le 02/05/2008 à 19:25. (lien). Évalué à 1.

      oui c'est ce que j'ai fait

      [^]Re: livecd

      Posté par marsu1983 () le 02/05/2008 à 19:28. (lien). Évalué à 1.

      Oui c'est bien ce que je fais et quand je fais un echo de la variable, elle s'affiche bien avec la nouvelle valeur

      [^]Re: livecd

      Posté par Mildred (Jabber id, page perso, ) le 02/05/2008 à 21:14. (lien). Évalué à 2.

      tu peux essayer de voir les autres variables d'environnement dans man ld-linux.so

      Mais je trouve ça bizarre que LD_LIBRARY_PATH ne marche pas.

      Je suppose que su ou sudo doivent supprimer ces variables (pour des raisons de sécurité). Et ld-linux.so ne les prend pas en compte si le binaire est suid ou sgid. mais je doute que ce soit le cas pour mv.

      Tu peux peut être essayer de faire:

      LD_PRELOAD=/home/.../lib/{libc.so,libacl.so,libattr.so} mv /home/.../lib /

      Et vérifie en utilisant cd et echo * que le dossier lib est lien la ou tu penses. Car si ça se trouve tu avait un dossier lib dans ton homedir, et du coup il aurait déplacé le tout dans ~/lib/lib