Символическая ссылка, также известная как символическая ссылка или программная ссылка, представляет собой файл особого типа, указывающий на другой файл или каталог.
В этом руководстве вы узнаете, как использовать 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 www-php 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
Чтобы перезаписать путь назначения символической ссылки, используйте параметр -f
( --force
).
ln -sf my_file.txt my_link.txt
Удаление символических ссылок
Чтобы удалить/удалить символические ссылки , используйте команду unlink
или rm
.
Синтаксис unlink
очень прост:
unlink symlink_to_remove
Удаление символической ссылки с помощью rm
команды аналогично удалению файла:
rm symlink_to_remove
Независимо от того, какую команду вы используете, при удалении символической ссылки не добавляйте /
косую черту в конце ее имени.
Если вы удалите или переместите исходный файл в другое место, символический файл останется висящим (сломанным) и должен быть удален.
0 комментариев