¿Qué es un error "no se pudo crear un enlace simbólico: el archivo existe"?

60

Estoy tratando de crear un enlace simbólico en mi directorio de inicio a directorios y archivos en mi partición de datos. He intentado:

~/Documents$ ln -sv ~/Documents/saga /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc

para crear un enlace simbólico nombrado sagaen mi Documentsdirectorio en mi homecarpeta. La salida del terminal es:

ln: failed to create symbolic link ‘/media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc’: File exists

Estaba revisando el contenido de ~/Documentsls -a, no hay nada más que .y ... En general, mi homecarpeta está vacía, es solo una nueva instalación del sistema.

maria
fuente
Gracias. Parece que mi pregunta no es muy útil. ¿Debo eliminarlo? O puede convertir su comentario en la respuesta para que pueda aceptarlo como resuelto :)
maria
3
Su pregunta tiene un puntaje de cuatro, por lo que aparentemente la comunidad decidió que es útil. Además, incluso si lo intentara, no podría eliminar la pregunta, ya que tiene una respuesta con una puntuación de 1 o más.
11684
Recibí mi respuesta a esta pregunta desde aquí (en este foro): askubuntu.com/questions/379647/…
wayneeusa

Respuestas:

46

Este es un error clásico ... es al revés:

ln -s Existing-file New-name 

entonces en tu caso

ln -sv /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc ~/Documents/saga 

Deberia trabajar. Nota sin embargo:

  1. si ~/Documents/sagaexiste y no es un directorio, también tendrá el error;

  2. si ~/Documents/sagaexiste y es un directorio, el enlace simbólico será ~/Documents/saga/saga..doc(¿está seguro del doble punto?)

  3. si ~/Documents/sagano existe, su enlace simbólico lo será ~/Documents/saga(tal como está, sin extensión).

Rmano
fuente
12
Recuerde siempre que el orden de los parámetros es el mismocp
Hagen von Eitzen
... como se discutió aquí en Super User.
G-Man dice 'Restablecer a Monica' el
2
Mi nemotécnica para esto es "qué dónde", por ejemplo, vincular qué dónde, mover qué dónde ...
MicrosoftFree
1
Incluso hay cp -s.
deltab
18

Tengo el mismo mensaje de error
al redirigir

ln -s /usr/bin/nodejs /usr/bin/node

desde node.js v0.10.25
a node.js v4.2.3,
así que miro man ln y uso

[OPTION] 
-f, --force
          remove existing destination files

Este es el trabajo que esperaba.

Alexander Glulkhovtsev
fuente
1
en realidad no recibo su respuesta / punto, ¿cuál es el guión completo que utilizó? Creo que tenemos el mismo problema
Arco
1
Creo lo que sugiere agregar --force a su comando ln ln -sv ~ / Documents / saga /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc --force
DropHit
Entonces eso sería ln -sf...
Pathros
16

Cuando @Rmano respondió en su respuesta, los argumentos estaban en el orden incorrecto. Cometí el mismo error con bastante frecuencia también. Así encontré un

Manera infalible de crear enlaces simbólicos

Primero vaya al directorio donde desea crear el enlace

cd ~/Documents/saga

Luego cree el enlace con un solo argumento .

ln -s /very/long/path/to/target/Downloads/saga..doc

Esto creará un enlace al directorio actual con el mismo nombre que el objetivo.

MadMike
fuente
0

Podría no estar relacionado.
Para mí el enlace estaba muerto. Apuntando a una carpeta no existente. Al intentar reemplazarlo, fallaría con este mensaje. ^ Entonces un simple rm linkNamefue suficiente.

AdrianH
fuente
0

Solo para agregar nueva información, puede eliminar el enlace simbólico actual y luego volver a crear el enlace simbólico.

rm  ~/Documents/saga

Luego, vuelva a crear el enlace simbólico:

ln -sv /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc ~/Documents/saga

Espero que esto ayude a cualquiera que todavía se enfrente al error 'el archivo existe'.

Andre Suchitra
fuente