Jump to content

[resolu]Commande ln


Recommended Posts

Bonsoir,

Il y a quelque chose que je comprend pas.

J'ai voulu supprimer un lien "ln -s libpng.so.3.1.2.6 libpng.so.2" afin de le recréer en absolu.

Pour le supprimer j'ai supposé qu'il fallait faire :

[root@localhost lib]# rm libpng.so.2

rm: détruire lien symbolique `libpng.so.2'? y

Je débute donc je ne sais vraiment la marche à suivre.

Maintenant, je ne vois plus dans le répertoire /lib, le fichier "libpng.so.3.1.2.6"

Par contre, si je fais :

[root@localhost /]# find / -name 'libpng*' -print

/home/diablotin/libpng3-1.2.6-1mdk.i586.rpm

/usr/share/doc/libpng3-1.2.6

/usr/share/doc/libpng3-1.2.6/libpng.txt

/usr/lib/libpng.so.3

/usr/lib/libpng.so.3.1.2.6

/usr/lib/libpng12.so.0

/usr/lib/libpng12.so.0.1.2.6

/libpng.so.2

Je vois bien là mon fichier "/usr/lib/libpng.so.3.1.2.6", et mon lien que j'ai voulu supprimer ce retrouve à la racine de mon DD (libpng.so.2@). Ce dernier clignote en rouge.

Pourquoi, n'apparait-il pas dans le répertoire /lib alors que je le retrouve en faisant un find ?

Merci d'éclairer ma lanterne.

Ashen.

Link to comment
Share on other sites

C'est ka différence entre un lien dynamique et un lien hard. le lien dynamique peut etre supprimé sans suprimé le fichier pointé, car il est juste pointé. Le lien hard, comme tu viens de l'apprendre a tes dépends, concerne la meme adresse mémoire que le fichier d'origine, et sa suppresion entraine la suppression du fichier pointé initialement par le lien.

C'est pour cela qu'a moins de vraiment etre sur de ce que l'on fait, il faut toujours utiliser des liens dynamiques ( ln -s ).

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...