3 votes

Comment savoir si un répertoire est référencé par un lien symbolique ?

Existe-t-il une commande que je pourrais exécuter pour savoir si un répertoire est référencé par un lien symbolique quelque part sur la machine ?

ie :

pwd =>  /home/user/source/

vdir 
lrwxrwxrwx 1 user group   24 2011-04-08 10:59 Symlink -> /home/user/source/Test
drwxr-xr-x 2 user group 4096 2011-04-08 10:59 Test

En utilisant cet exemple, je veux savoir où trouver Symlink car il fait référence à Test.

J'utilise Ubuntu 10.04.

1voto

Evgeny Points 1387

Vous devez rechercher les liens mous dans l'ensemble du système de fichiers, puis les résoudre et voir s'ils pointent vers le même emplacement. N'essayez pas de faire une comparaison textuelle de la destination du lien, car cela pourrait passer par un autre lien matériel ou logiciel ; vous devez probablement comparer les inodes.

1voto

janhink Points 126

Tu pourrais peut-être essayer quelque chose comme :

sudo find / -lname /path/to/your/file

Mais attention, certains liens peuvent être définis avec des chemins relatifs.

Ou vous pouvez lister tous les liens symboliques et rechercher votre fichier en utilisant :

sudo find / -type l | grep /path/to/your/file

(le "l" dans "-type l" n'est pas le chiffre un mais L)

Mais chaque méthode présente des inconvénients. Peut-être que quelqu'un connaît mieux ?

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X