![Что означает ошибка «не удалось создать символическую ссылку: файл существует»?](https://rvso.com/image/1048323/%D0%A7%D1%82%D0%BE%20%D0%BE%D0%B7%D0%BD%D0%B0%D1%87%D0%B0%D0%B5%D1%82%20%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0%20%C2%AB%D0%BD%D0%B5%20%D1%83%D0%B4%D0%B0%D0%BB%D0%BE%D1%81%D1%8C%20%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D1%82%D1%8C%20%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E%20%D1%81%D1%81%D1%8B%D0%BB%D0%BA%D1%83%3A%20%D1%84%D0%B0%D0%B9%D0%BB%20%D1%81%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D1%83%D0%B5%D1%82%C2%BB%3F.png)
Я пытаюсь создать символическую ссылку в моем домашнем каталоге на каталоги и файлы на моем разделе данных. Я пробовал:
~/Documents$ ln -sv ~/Documents/saga /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc
для создания символической ссылки с именем saga
в моем Documents
каталоге в моей home
папке. Вывод терминала:
ln: failed to create symbolic link ‘/media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc’: File exists
Я проверял содержимое ~/Documents
с помощью ls -a, там ничего нет, кроме .
и ..
. В общем, моя home
папка пуста, это просто новая установка системы.
решение1
Это классическая ошибка... все наоборот:
ln -s Existing-file New-name
так что в вашем случае
ln -sv /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc ~/Documents/saga
Должно работать. Обратите внимание:
если
~/Documents/saga
существует и не является каталогом, вы также получите ошибку;если
~/Documents/saga
существует и является каталогом, то символическая ссылка будет~/Documents/saga/saga..doc
(вы уверены насчет двойной точки?)если
~/Documents/saga
не существует, ваша символическая ссылка будет~/Documents/saga
(как есть, без расширения).
решение2
У меня такое же сообщение об ошибке
при перенаправлении
ln -s /usr/bin/nodejs /usr/bin/node
с node.js v0.10.25
до node.js v4.2.3,
поэтому я смотрю man ln
и использую
[OPTION]
-f, --force
remove existing destination files
Это работа, как я и ожидал.
решение3
Как ответил @Rmano в своемотвечатьаргументы были в неправильном порядке. Я тоже делал эту ошибку довольно часто. Таким образом, я нашел
Надежный способ создания символических ссылок
Сначала перейдите в каталог, где вы хотите создать ссылку.
cd ~/Documents/saga
Затем создайте ссылку с помощьюодин аргумент.
ln -s /very/long/path/to/target/Downloads/saga..doc
Это создаст ссылку на текущий каталог с тем же именем, что и у цели.
решение4
Может быть не по теме.
Для меня ссылка была мертвой. Указывала на несуществующую папку. При попытке заменить ее она терпела неудачу с этим сообщением. ^ Так что простого rm linkName
было достаточно.