Как сделать ссылку папки linux

Содержание
  1. ИТ База знаний
  2. Полезно
  3. Навигация
  4. Серверные решения
  5. Телефония
  6. Корпоративные сети
  7. Команда Ln: как создавать символические ссылки в Linux
  8. Команда Ln для создания символических ссылок
  9. Создать символическую ссылку на каталог Linux
  10. Принудительно перезаписать символические ссылки
  11. Удаление ссылок
  12. Soft Links против Hard Links
  13. Символические ссылки (Soft Links)
  14. Жесткие ссылки (Hard Links)
  15. Как создать символическую ссылку для каталога в Linux
  16. Как создать символическую ссылку (софт-ссылку) в Linux
  17. Как создать символическую ссылку (мягкую ссылку) на файл
  18. Как создать символическую ссылку (мягкую ссылку) папки/каталога
  19. Как перезаписать символическую ссылку (мягкую ссылку) в Linux:
  20. Как удалить Symlink (Soft Link) в Linux:
  21. Заключение
  22. Символические и жесткие ссылки в Linux. Команда ln
  23. Что такое ссылка на файл в Linux
  24. Что такое символические ссылки
  25. Что такое жесткие ссылки
  26. Отличия символических ссылок от жестких
  27. Как создавать ссылки в Linux. Команда ln
  28. Создание символических ссылок
  29. Создание жестких ссылок
  30. Как удалить ссылку
  31. Создание ссылок через файловый менеджер
  32. Резюме

ИТ База знаний

Курс по Asterisk

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Команда Ln: как создавать символические ссылки в Linux

Жесткие и мягкие ссылки

4 минуты чтения

Символические ссылки используются в Linux для управления файлами и их сопоставления.

Мини — курс по виртуализации

Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена

В этом руководстве вы узнаете, как использовать команду ln для создания символических ссылок в Linux.

Команда Ln для создания символических ссылок

Чтобы использовать команду ln, откройте окно терминала и введите команду в следующем формате:

  • По умолчанию команда ln создает hard link (жесткая ссылка).
  • Используйте параметр -s , чтобы создать символическую ссылку, она же soft link.
  • Параметр -f заставит команду перезаписать уже существующий файл.
  • Source — это файл или каталог, на который делается ссылка.
  • Destination — это место для сохранения ссылки — если это поле не заполнено, символическая ссылка сохраняется в текущем рабочем каталоге.

Например, создайте символическую ссылку с помощью:

Это создает символическую ссылку link file.text , которая указывает на testfile.txt .

Чтобы проверить, создана ли символическая ссылка, используйте команду ls :

Создать символическую ссылку на каталог Linux

Символическая ссылка может относиться к каталогу. Чтобы создать символическую ссылку на каталог в Linux:

В этом примере создается символическая ссылка с именем stock_photos в домашнем каталоге

/ . Ссылка относится к каталогу stock_photos на внешнем диске external_drive .

Примечание. Если система подключена к другому компьютеру, например к корпоративной сети или удаленному серверу, символические ссылки могут быть связаны с ресурсами в этих удаленных системах.

Принудительно перезаписать символические ссылки

Вы можете получить сообщение об ошибке, как показано на изображении ниже:

Сообщение об ошибке означает, что в месте назначения уже есть файл с именем link_file.txt . Используйте параметр -f , чтобы система перезаписывала целевую ссылку:

Примечание. Использование опции -f навсегда удалит существующий файл.

Удаление ссылок

Если исходный файл будет перемещен, удален или станет недоступным (например, сервер отключится), ссылку нельзя будет использовать. Чтобы удалить символическую ссылку, используйте команду rm (remove) или unlink :

Команду ln можно использовать для создания двух разных типов ссылок:

  • Hard Links (жесткие ссылки)
  • Soft Links (символические или мягкие ссылки)

Символическая ссылка, иногда называемая мягкой ссылкой или soft link, указывает на расположение или путь к исходному файлу. Она работает как гиперссылка в Интернете.

Вот несколько важных аспектов символической ссылки:

  • Если файл символьной ссылки удаляется, исходные данные остаются.
  • Если исходный файл будет перемещен или удален, символическая ссылка работать не будет.
  • Символическая ссылка может относиться к файлу в другой файловой системе.
  • Символические ссылки часто используются для быстрого доступа к часто используемым файлам без ввода всего местоположения.
Читайте также:  Как сбросить пароль входа mac os

Когда файл хранится на жестком диске, происходит несколько вещей:

  • Данные физически записываются на диск.
  • Создается справочный файл, называемый индексом, который указывает на расположение данных.
  • Имя файла создается для ссылки на данные inode.

Жесткая ссылка работает путем создания другого имени файла, которое ссылается на данные inode исходного файла. На практике это похоже на создание копии файла.

Вот несколько важных аспектов жестких ссылок:

  • Если исходный файл удален, к данным файла все равно можно будет получить доступ через другие жесткие ссылки.
  • Если исходный файл перемещен, жесткие ссылки по-прежнему работают.
  • Жесткая ссылка может относиться только к файлу в той же файловой системе.
  • Если количество жестких ссылок равно нулю, индексный дескриптор и данные файла удаляются безвозвратно.

Мини — курс по виртуализации

Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена

Источник

Как создать символическую ссылку для каталога в Linux

Главное меню » Linux » Как создать символическую ссылку для каталога в Linux

Жесткие ссылки: Жесткие ссылки – это ссылки, которые отражают или копируют исходный файл. Жесткие ссылки имеют одинаковые номера inode.

Программные ссылки: Мягкие ссылки – это простые ссылки, указывающие на исходный файл. Вы можете получить доступ к исходному файлу с помощью программных ссылок. Программные ссылки могут указывать на файл или папку в любом разделе и иметь разные номера inode.

Изучение создания символической ссылки в Linux – отличный способ улучшить работу с терминалом Linux. Итак, давайте изучим шаги, необходимые для создания программных ссылок в Linux.

Как создать символическую ссылку (софт-ссылку) в Linux

Чтобы создать символическую ссылку или мягкую ссылку, мы используем команду ln. Ниже приведен синтаксис для создания символической ссылки:

В первом аргументе после опции «-s» вы укажете путь к файлу папки, для которой вы хотите создать символическую ссылку. Во втором аргументе передайте имя, которое вы хотите присвоить этой символической ссылке. Чтобы проверить созданные ссылки, используйте следующую команду:

Чтобы проверить номера inode, используйте команду, указанную ниже:

Как создать символическую ссылку (мягкую ссылку) на файл

Создать мягкую ссылку на файл просто; используйте синтаксис, указанный ниже:

Важно отметить, что если вы не укажете «[символическое имя]», то команда создаст символическую ссылку по имени исходного файла. Давайте разберемся в этом на примере.

Мы создали каталог «my_folder», содержащий текстовый файл «my_doc.txt». Теперь, чтобы создать символическую ссылку на файл «my_doc.txt», мы будем использовать:

Чтобы проверить это, используйте:

Как видно из вышеприведенного вывода, «my_document» указывает на файл «my_folder/my_doc.txt». И символическая ссылка, и исходный файл будут иметь разные номера inode. Чтобы проверить используемые номера inode:

Жесткие ссылки всегда будут иметь одинаковые номера inode. Для проверки мы создали жесткую ссылку на файл «my_doc.txt» и назвал его «my_document_2»:

Из вывода видно, что исходный файл и жесткая ссылка имеют одинаковые номера inode.

Как создать символическую ссылку (мягкую ссылку) папки/каталога

Создание мягкой ссылки или символической ссылки на каталог очень похоже на создание символической ссылки на файл. Например, мы создаем символическую ссылку на каталог «my_folder», используя:

Приведенная выше команда создаст папку с символической ссылкой в ​​текущем каталоге. Чтобы проверить это, используйте:

Теперь проверьте номера inode:

Как перезаписать символическую ссылку (мягкую ссылку) в Linux:

Если вы попытаетесь обновить символическую ссылку с тем же именем, которое уже существует, вы получите сообщение об ошибке:

Нам нужно будет использовать принудительный флаг «-f», чтобы перезаписать новый путь к существующей символической ссылке.

Во многих случаях вам необходимо удалить ненужные символические ссылки из вашей системы. Чтобы удалить символическую ссылку, мы используем команду «unlink», синтаксис которой приведен ниже:

Давайте удалим символические ссылки, которые мы создали в приведенных выше примерах. Чтобы отключить символическую ссылку файла, используйте:

И чтобы отключить символическую ссылку каталога:

Мы также можем использовать команду «rm» для удаления символических ссылок.

Читайте также:  Windows batch file all files in directory

Преимущество «rm» перед «unlink» состоит в том, что вы можете удалить несколько символических ссылок с помощью команды «rm», что невозможно с помощью команды «unlink».

Обратите внимание, что независимо от того, используете ли вы команду «unlink» или «rm», не используйте завершающую косую черту «/», даже если это каталог.

Заключение

Символические ссылки – это более простой способ получить доступ к файлам вашей системы из разных мест. Эта статья представляет собой подробное руководство по созданию символических ссылок на файл или каталог и их удалению. Удалите символические ссылки, если исходный файл больше не существует.

Понимание и освоение терминала Linux очень важно для любого новичка. Мы надеемся, что этот пост помог вам изучить новую утилиту и улучшить свои навыки.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Символические и жесткие ссылки в Linux. Команда ln


Что такое символические и жесткие ссылки в Linux. Чем они отличаются. Как создавать ссылки. Использование команды ln.

Что такое ссылка на файл в Linux

Ссылка на файл в Linux — это указатель на файл. Если проводить аналогию с Windows, то ссылки чем-то похожи на ярлыки. То есть вы создаете ссылку, которая указывает на какой-либо файл или директорию, и можете разместить эту ссылку в другом каталоге. Обращаясь к такой ссылке, вы будете обращаться к настоящему файлу или каталогу.

Ссылки в Linux бывают двух типов: символические и жесткие. Не смотря на то, что оба типа называются ссылками, они имеют существенные отличия друг от друга. Поэтому очень важно понимать, как создавать и использовать тот или иной тип ссылок.

Что такое символические ссылки

Символическая ссылка (symbolic link) — это специальный файл, который является ссылкой на другой файл или каталог (их еще называют целевым файлом, целевым каталогом).

Символические ссылки также называют символьными, мягкими ссылками (soft links) или сим-ссылками (sym-link).

Важно понимать, что символическая ссылка не содержит в себе внутри копии самого файла, на которую она указывает. Она является всего лишь указателем на файл. Не смотря на это, символическая ссылка обладает собственными правами доступа, так как сама является небольшим файлом, который содержит путь до целевого файла.

Возвращаясь к аналогии с ярлыками в Windows, символические ссылки это своего рода ярлыки на файлы. Можно создавать несколько символических ссылок на один файл и эти ссылки могут иметь разные имена.

Связь между символической ссылкой и файлом, на который она указывает, является «мягкой». Если удалить символическую ссылку, то файл, на который она указывает, не удаляется.

Если удалить файл, на который указывает ссылка, то сама ссылка не обновляется и остается на диске. При этом она указывает на уже несуществующий файл. Аналогично, если переименовать или переместить целевой файл, то ссылка не обновляется автоматически.

При создании символических ссылок можно указывать относительный путь до целевого файла. В таком случае ссылка считает, что относительный путь указан относительно каталога, в котором создана сама ссылка (но не относительно каталога, из которого она была создана).

Схематично отношение между файлом, символической ссылкой и данными, которые хранятся в файле, можно показать следующим образом:

Что такое жесткие ссылки

Жесткая ссылка (hard link) является своего рода синонимом для существующего файла. Когда вы создаете жесткую ссылку, создается дополнительный указатель на существующий файл, но не копия файла.

Жесткие ссылки выглядят в файловой структуре как еще один файл. Если вы создаете жесткую ссылку в том же каталоге, где находится целевой файл, то они должны иметь разные имена. Жесткая ссылка на файл должна находится в той же файловой системе, где и другие жесткие ссылки на этот файл.

В Linux каждый файл имеет уникальный идентификатор — индексный дескриптор (inode). Это число, которое однозначно идентифицирует файл в файловой системе. Жесткая ссылка и файл, для которой она создавалась имеют одинаковые inode. Поэтому жесткая ссылка имеет те же права доступа, владельца и время последней модификации, что и целевой файл. Различаются только имена файлов. Фактически жесткая ссылка это еще одно имя для файла.

Читайте также:  Move linux to another disk

Жесткие ссылки нельзя создавать для директорий.

Жесткая ссылка не может указывать на несуществующий файл.

Жесткие ссылки появились раньше, чем символические, но сейчас уже устаревают. В повседневной работе жесткие ссылки используются редко.

Схематично отношение между исходным файлом, жесткой ссылкой и данными можно показать следующей схемой:

Отличия символических ссылок от жестких

Кратко подведем итог, написанного выше.

Символическая ссылка:

  • Указывает на целевой файл или каталог. Фактически является небольшим файлом, содержащим путь до целевого файла.
  • Не содержит внутри себя содержимого самого файла. Содержит путь к целевому файлу.
  • Имеет собственные права доступа, которые не распространяются на целевой файл.
  • Удаление / переименование / перемещение целевого файла не обновляет автоматически ссылку. Ссылка начинает указывать на несуществующий файл, становится неработающей.
  • Изменение прав доступа у целевого файла не обновляет права доступа у ссылки.
  • Может быть создана для директории.
  • Ссылка и целевой файл имеют разные файловые индексы (inode) в файловой системе.
  • Может указывать на несуществующий файл.
  • Символическая ссылка может использовать относительный путь до целевого файла.

Жесткая ссылка:

  • Является своего рода еще одним именем на файл.
  • Не может указывать на директорию.
  • Нельзя создавать жесткие ссылки между файлами разных файловых систем.
  • Не может указывать на несуществующий файл.
  • Жесткая ссылка и файл, для которого она создавалась, имеют одинаковые индексы (inode) в файловой системе.

Как создавать ссылки в Linux. Команда ln

Для создания ссылок в Linux используется команда ln (от слова link).

Синтаксис команды ln :

Обычно используется только одна опция -s . Полный список опций можно получить, выполнив команду man ln.

Создание символических ссылок

Чтобы создать символическую ссылку, нужно выполнить команду ln с опцией -s :

Например, создадим в текущем каталоге символическую ссылку с именем mylink на файл /home/pingvinus/myfile :

Выполнив команду ls -li , можно увидеть, что ссылка myfile указывает на файл /home/pingvinus/myfile

Обратите внимание, что ссылка и целевой файл имеют разные inode (792300 и 787622. См. число в начале строки).

Если теперь удалить целевой файл, а затем попробовать просмотреть его содержимое, используя ссылку, то получим сообщение о том, что файл не найден:

Пример создания и использования символьной ссылки (при создании ссылки используется относительный путь до целевого файла, если такую ссылку переместить, то она будет невалидна):

Создание жестких ссылок

Чтобы создать жесткую ссылку нужно использовать команду ln без опции -s .

Например, создадим жесткую ссылку с именем hardlinktofile на файл myfile.txt :

Выведем список файлов:

Можно заметить, что hardlinktofile и myfile.txt имеют одинаковый inode=787622, так как являются фактически разными именами для одного файла (inode которого 787622).

Также видно, что на данный inode имеется 2 ссылки (см. цифру 2 в 3-м столбце). Если мы удалим исходный файл, то количество ссылок на него уменьшается на 1, то есть на самом деле файл не удаляется, так как на него больше, чем 1 ссылка. И мы по прежнему можем работать с файлом по имени hardlinktofile.

Обратите внимание, что после выполнения команды rm, количество ссылок на файл стало равно 1.

Пример создания и использования жесткой ссылки:

Как удалить ссылку

Ссылки, как и обычные файлы, можно удалять, используя команду rm :

Создание ссылок через файловый менеджер

Некоторые графические файловые менеджеры поддерживают создание символических ссылок. Чтобы создать символическую ссылку в таком файловом менеджере, достаточно кликнуть правой кнопкой мыши по файлу и выбрать в меню пункт Создать ссылку ( Create Link , Make Link ).

Ссылка создается в том же каталоге, где находится целевой файл. После создания ссылку можно переместить в другой каталог.

Резюме

Ссылки — это удобный инструмент при работе с файлами в Linux. Мы рассмотрели два вида ссылок, которые существуют в Linux. Рассмотрели отличия символических ссылок от жестких. Для создания ссылок используется команда ln . При повседневной работе обычно используются символические ссылки, в то время как жесткие ссылки используются редко.

Источник

Оцените статью