61 votes

Comment supprimer ou remplacer un lien symbolique déjà créé ?

Je travaille sur mon projet en utilisant le simulateur de réseau 2. Je l'ai installé et tout va bien. J'ai tenté de créer un lien symbolique entre cette installation et l'application /usr/bin afin de pouvoir invoquer le logiciel en exécutant ns à partir de la ligne de commande. En fait, j'ai lancé :

sudo ln -s /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns

qui a généré le résultat suivant :

ln: creating symbolic link '/usr/bin/ns': File exists


Comment puis-je supprimer le lien symbolique déjà créé ou puis-je le remplacer par d'autres commandes ?

73voto

jomohke Points 720

ln a -f qui 'force' la création d'un lien symbolique, qu'il existe ou non.

sudo ln -sf /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns

39voto

Alotor Points 3438
sudo rm -r /usr/bin/ns

sudo ln -s /home/vinaychalluru/ns-allinone-2.34/ns-2.34/ns /usr/bin/ns

29voto

conny Points 4475

J'ai essayé ln -sf tout en remplaçant mais ça n'a pas fonctionné pour moi, mais en faisant ln -sfn directory link_name comme root travaillé.

3voto

Rob Conery Points 10930

Pour ajouter à toutes les réponses ci-dessus, un lien symbolique peut être traité comme un fichier ordinaire dans de nombreux cas (le lien, pas la cible).

rm sur un lien symbolique le supprimera. Si le lien est détenu par root, vous aurez besoin de sudo.

Vous devez être capable de rm /usr/bin/ns ou plutôt sudo rm /usr/bin/ns n'oubliez pas la propriété.

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