- Команда Ln в Linux (создание символических ссылок)
- Типы ссылок
- Как использовать команду ln
- Создание символической ссылки к файлу
- Создание символических ссылок на каталог
- Замена символических ссылок
- Удаление символических ссылок
- Выводы
- Команда Ln: как создавать символические ссылки в Linux
- Команда Ln для создания символических ссылок
- Создать символическую ссылку на каталог Linux
- Принудительно перезаписать символические ссылки
- Удаление ссылок
- Soft Links против Hard Links
- Символические ссылки (Soft Links)
- Жесткие ссылки (Hard Links)
Команда Ln в Linux (создание символических ссылок)
Символическая ссылка, также известная как символическая ссылка или программная ссылка, представляет собой файл особого типа, который указывает на другой файл или каталог.
В этом руководстве мы расскажем, как использовать команду ln для создания символических ссылок.
Типы ссылок
В системах Linux / UNIX есть два типа ссылок:
- Жесткие ссылки . Вы можете рассматривать жесткую ссылку как дополнительное имя для существующего файла. Жесткие ссылки связывают два или более имен файлов с одним и тем же индексом . Вы можете создать одну или несколько жестких ссылок для одного файла. Невозможно создать жесткие ссылки для каталогов и файлов в другой файловой системе или разделе.
- Мягкие ссылки . Программная ссылка — это что-то вроде ярлыка в Windows. Это косвенный указатель на файл или каталог. В отличие от жесткой ссылки, символическая ссылка может указывать на файл или каталог в другой файловой системе или разделе.
Как использовать команду ln
ln — это утилита командной строки для создания ссылок между файлами. По умолчанию команда ln создает жесткие ссылки. Чтобы создать символическую ссылку, используйте параметр -s ( —symbolic ).
Синтаксис команды ln для создания символических ссылок следующий:
- Если заданы и 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 :
Результат будет выглядеть примерно так:
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 .
Удаление символической ссылки с помощью команды rm такое же, как и при удалении файла:
Независимо от того , какой команды вы используете, при удалении символической ссылки не добавляет / слэша в конце его названия.
Если вы удалите или переместите исходный файл в другое место, символический файл останется висящим (сломанным), и его следует удалить.
Выводы
Чтобы создать символическую ссылку в Linux, используйте команду ln с параметром -s .
Для получения дополнительной информации о команде ln посетите страницу руководства ln или введите man ln в терминале.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Команда Ln: как создавать символические ссылки в Linux
Символические ссылки используются в Linux для управления файлами и их сопоставления.
В этом руководстве вы узнаете, как использовать команду ln для создания символических ссылок в Linux.
Команда Ln для создания символических ссылок
Чтобы использовать команду ln, откройте окно терминала и введите команду в следующем формате:
- По умолчанию команда ln создает hard link (жесткая ссылка).
- Используйте параметр -s , чтобы создать символическую ссылку, она же soft link.
- Параметр -f заставит команду перезаписать уже существующий файл.
- Source — это файл или каталог, на который делается ссылка.
- Destination — это место для сохранения ссылки — если это поле не заполнено, символическая ссылка сохраняется в текущем рабочем каталоге.
Например, создайте символическую ссылку с помощью:
ln -s test_file.txt link_file.txt
Это создает символическую ссылку link file.text , которая указывает на testfile.txt .
Чтобы проверить, создана ли символическая ссылка, используйте команду ls :
Создать символическую ссылку на каталог Linux
Символическая ссылка может относиться к каталогу. Чтобы создать символическую ссылку на каталог в Linux:
ln -s /mnt/external_drive/stock_photos ~/stock_photos
В этом примере создается символическая ссылка с именем stock_photos в домашнем каталоге ~ / . Ссылка относится к каталогу stock_photos на внешнем диске external_drive .
Примечание. Если система подключена к другому компьютеру, например к корпоративной сети или удаленному серверу, символические ссылки могут быть связаны с ресурсами в этих удаленных системах.
Принудительно перезаписать символические ссылки
Вы можете получить сообщение об ошибке, как показано на изображении ниже:
Сообщение об ошибке означает, что в месте назначения уже есть файл с именем link_file.txt . Используйте параметр -f , чтобы система перезаписывала целевую ссылку:
ln -sf test_file.txt link_file.txt
Удаление ссылок
Если исходный файл будет перемещен, удален или станет недоступным (например, сервер отключится), ссылку нельзя будет использовать. Чтобы удалить символическую ссылку, используйте команду rm (remove) или unlink :
rm link_file.txt unlink link_file.txt
Soft Links против Hard Links
Команду ln можно использовать для создания двух разных типов ссылок:
Символические ссылки (Soft Links)
Символическая ссылка, иногда называемая мягкой ссылкой или soft link, указывает на расположение или путь к исходному файлу. Она работает как гиперссылка в Интернете.
Вот несколько важных аспектов символической ссылки:
- Если файл символьной ссылки удаляется, исходные данные остаются.
- Если исходный файл будет перемещен или удален, символическая ссылка работать не будет.
- Символическая ссылка может относиться к файлу в другой файловой системе.
- Символические ссылки часто используются для быстрого доступа к часто используемым файлам без ввода всего местоположения.
Жесткие ссылки (Hard Links)
Когда файл хранится на жестком диске, происходит несколько вещей:
- Данные физически записываются на диск.
- Создается справочный файл, называемый индексом, который указывает на расположение данных.
- Имя файла создается для ссылки на данные inode.
Жесткая ссылка работает путем создания другого имени файла, которое ссылается на данные inode исходного файла. На практике это похоже на создание копии файла.
Вот несколько важных аспектов жестких ссылок:
- Если исходный файл удален, к данным файла все равно можно будет получить доступ через другие жесткие ссылки.
- Если исходный файл перемещен, жесткие ссылки по-прежнему работают.
- Жесткая ссылка может относиться только к файлу в той же файловой системе.
- Если количество жестких ссылок равно нулю, индексный дескриптор и данные файла удаляются безвозвратно.