Символическая ссылка, также известная как symlink или soft link, представляет собой особый тип файла, который указывает на другой файл или каталог.
В этой статье мы расскажем, как использовать команду ln для создания символических ссылок.
В системах Linux/UNIX существует два типа ссылок:
Утилита ln
для создания связей между файлами. По умолчанию команда ln
создает жесткие ссылки. Для создания символических ссылок используйте параметр -s
( --symbolic
).
Синтаксис команды ln
выглядит следующим образом :
ln [OPTIONS] FILE LINK
Чтобы создать символическую ссылку в Linux, откройте свой терминал и введите:
ln -s source_file symbolic_link
Замените имя source_file
существующего файла, для которого вы хотите создать символическую ссылку, и с именем symbolic_link
символической ссылки.
Параметр symbolic_link
является необязательным. Если вы не укажете символическую ссылку, команда ln создаст новую ссылку в вашем текущем каталоге.
В следующем примере мы создаем символическую ссылку, названную my_link.txt
в файл с именем my_file.txt
:
ln -s my_file.txt my_link.txt
Чтобы убедиться, что символическая ссылка была создана, используйте команду ls
:
ls -l my_link.txt
Результат будет выглядеть примерно так:
lrwxrwxrwx 1 linuxize users 4 Nov 2 23:03 my_link.txt -> my_file.txt
Символ l
— это флаг типа файла, представляющий символическую ссылку. Символ ->
показывает файл символическая ссылка указывает.
Команда создания символической ссылки на каталог такая же, как при создании символической ссылки на файл. Укажите имя каталога как параметр firs и символическую ссылку в качестве второго параметра.
Например, если вы хотите создать символическую ссылку из каталога /mnt/my_drive/movies
в каталог ~/my_movies
, который вы запустили:
ln -s /mnt/my_drive/movies ~/my_movies
Если вы попытаетесь создать символическую ссылку, которая уже существует, команда ln выведет сообщение об ошибке.
ln -s my_file.txt my_link.txt
ln: failed to create symbolic link 'my_link.txt': File exists
Чтобы переписать путь назначения символической ссылки, используйте опцию -f
( --force
).
ln -sf my_file.txt my_link.txt
Вы можете удалить существующую символическую ссылку с помощью команды unlink
или rm
.
Синтаксис команды unlink
очень прост:
unlink symlink_to_remove
Удаление символической ссылки с помощью команды rm
аналогично удалению файла:
rm symlink_to_remove
Вы должны использовать утилиту unlink
для удаления символической ссылки.
Если вы удалите или переместите исходный файл в другое место, символический файл останется нерабочим. Вы должны удалить его, потому что он больше не будет работать.
К настоящему времени у вас должно быть хорошее представление о том, как использовать команду ln в Linux и как создавать символические ссылки.