
Символическая ссылка, также известная как символическая ссылка или мягкая ссылка, — это особый тип файла, указывающий на другой файл или каталог. Символические ссылки обычно используются для создания ярлыков или псевдонимов для файлов или каталогов в файловой системе.
В этом руководстве мы рассмотрим, как использовать команду ln для создания символических ссылок.
Типы ссылок
В системах Linux/UNIX существует два типа ссылок:
- Жёсткие ссылки . Жёсткую ссылку можно представить как дополнительное имя для существующего файла. Жёсткие ссылки связывают два или более имени файлов с одним и тем же индексным дескриптором . Жёсткие ссылки можно создавать только для каталогов и файлов, расположенных в одной файловой системе или разделе. Один файл может иметь одну или несколько жёстких ссылок.
- Мягкие ссылки . Символическая ссылка, также называемая мягкой ссылкой, — это тип файла, который служит ссылкой на другой файл или каталог в файловой системе. Она сравнима с ярлыком в операционной системе Windows, поскольку позволяет получить доступ к файлу или каталогу из другого места без создания его копии. Символические ссылки полезны для организации файлов, а также для упрощения доступа к часто используемым файлам и каталогам. В отличие от жёсткой ссылки, символическая ссылка может указывать на файл или каталог в другом разделе или файловой системе.
Как использовать команду ln
ln — это утилита командной строки для создания ссылок между файлами. По умолчанию команда ln создаёт жёсткие ссылки. Чтобы создать символическую ссылку, используйте опцию -s ( --symbolic ).
Синтаксис команды ln для создания символических ссылок следующий:
ln -s [ OPTIONS ] FILE LINK
- Если указаны и
FILE, иLINK,lnсоздаст ссылку из файла, указанного в качестве первого аргумента (FILE), на файл, указанный в качестве второго аргумента (LINK). - Если в качестве аргумента указан только один файл или второй аргумент — точка (
.),lnсоздаст ссылку на этот файл в текущем рабочем каталоге . Имя символической ссылки будет совпадать с именем файла, на который она указывает.
По умолчанию в случае успеха ln не выводит никаких данных и возвращает ноль.
Создание символической ссылки на файл
Чтобы создать символическую ссылку на заданный файл, откройте терминал и введите:
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 — это флаг типа файла, представляющий символическую ссылку. Символ -> указывает на файл, на который указывает символическая ссылка.
Создание символических ссылок на каталог
Команда создания символической ссылки на каталог аналогична команде создания символической ссылки на файл. В качестве первого параметра укажите имя каталога, а в качестве второго — символическую ссылку.
Например, если вы хотите создать символическую ссылку из каталога /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
Независимо от того, какую команду вы используете, при удалении символической ссылки не добавляйте косую черту / в конце ее имени.
Если вы удалите или переместите исходный файл в другое место, символический файл останется неактивным (поврежденным) и его следует удалить.
Заключение
Чтобы создать символическую ссылку в Linux, используйте команду ln с опцией -s .
Для получения дополнительной информации о команде ln посетите страницу руководства ln или введите man ln в терминале.
Если у вас есть вопросы или пожелания, не стесняйтесь оставлять комментарии.
Связанные руководства