Перейти к основному содержанию

Символические и жёсткие ссылки в Linux

Linux

Есть два вида ссылок в Linuх: символические и жёсткие. Ссылки — это особенность файловой системы Linux, которая позволяет размещать один и тот же файл в нескольких директориях.

Типы ссылок сильно отличаются друг от друга и используются для разных целей.

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

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

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

Создать символическую ссылку можно командой:

ln -s /backup/source/ /opt/prog/mylink

Где /backup/source/ — папка, которая должна существовать и на которую нужно ссылаться.

А /opt/prog/mylink — создаваемая ссылка, не должна существовать на момент выполнения команды.

Жёсткая ссылка

Все жёсткие ссылки — это отдельные файлы, но ведут к одному участку жёсткого диска, где расположены данные файла. Файл можно перемещать между каталогами, все ссылки останутся рабочими.

  • Работает только в пределах одной файловой системы.
  • Нельзя ссылаться на каталоги.
  • Ссылка имеет те же права доступа и номер inode, что и исходный файл. При изменении разрешений файла изменятся права ссылки.
  • Можно перемещать и переименовывать и даже удалять файл без вреда для ссылки.

Создать жёсткую ссылку можно командой:

ln -P /backup/source/file1.txt /opt/prog/mylink/file2.txt

Где /backup/source/file1.txt - файл, на который нужно ссылаться.

А /opt/prog/mylink/file2.txt - создаваемая жёсткая ссылка, не должна существовать на момент выполнения команды.

В общем виде

ln опции файл_источник файл_ссылки

  • -d разрешить создавать жесткие ссылки для директорий суперпользователю.
  • -f удалять существующие ссылки.
  • -i спрашивать нужно ли удалять существующие ссылки.
  • -P создать жесткую ссылку.
  • -r создать символическую ссылку с относительным путем к файлу.
  • -s создать символическую ссылку.

Ссылки

Символические и жёсткие ссылки в Windows

Теги

 

Похожие материалы

Установка UniFi Controller на Ubuntu Server

Для управления Wi-Fi точками доступа требуется установить на сервер UniFi Controller. Контроллер помогает конфигурировать точки доступа, настраивать бесшовный роуминг и обновлять прошивки точек. Для дома или небольшого офиса - то что надо. Дёшево и сердито. Ubuntu Server может быть виртуальным.

Seafile — FSCK восстановление и экспорт библиотек

Seafile хранит данные в своём собственном формате. Однако, сами данные размещаются в файловой системе, например, ext4 или NTFS. После сбоя электропитания, при жёсткой перезагрузке или при ошибках RAID контроллера возможно повреждение данных в хранилище. Дистрибутив Seafile содержит утилиту seaf-fsck, которая поможет исправить повреждения.

Теги