Как использовать жесткие ссылки для связывания файлов в Linux

click fraud protection

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

А жесткая ссылка - это тот же файл, на который он ссылается, но с другим именем.

Зачем использовать жесткие ссылки?

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

  • Фотографии красных вещей
  • Фотографии автомобилей
  • Фотографии экстренных служб

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

Жесткая ссылка вообще не занимает места. Таким образом, вы можете хранить одно и то же видео в разных категориях (например, по году, жанру, составу ролей, режиссерам), не затрагивая место на диске.

Как создать жесткую ссылку

Создайте жесткую ссылку, используя следующий синтаксис:

ln путь / к / файлу / пути / к / жесткому / ссылке. 

Это хороший способ организовать музыку.

Как отличить жесткую ссылку от символической

Вы можете определить, есть ли у файла жесткая ссылка, используя ls команда:

ls -lt. 

Стандартный файл без ссылок будет выглядеть так:

-rw-r - r-- 1 gary gary 1000 Dec 18 21:52 яд.mp3. 

Столбцы следующие:

  • -rw-r - r-- = разрешения
  • 1 = количество ссылок
  • Гэри = группа
  • Гэри = владелец
  • 1000 = размер файла
  • 18 декабря = дата
  • 21:52 = время
  • яд.mp3 = имя файла

Если бы это была жесткая ссылка, результат выглядел бы следующим образом:

-rw-r - r-- 2 gary gary 1000 Dec 18 21:52 яд.mp3. 

Обратите внимание, что в столбце количества ссылок отображается 2. Каждый раз, когда создается жесткая ссылка, это число будет увеличиваться.

Символьная ссылка будет выглядеть следующим образом:

-rw-r - r-- 1 гэри гэри 1000 дек 18 21:52 яд.mp3 -> яд.mp3. 

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

Как найти все жесткие ссылки на файл

значения inode в Linux

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

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

ls -i. 

Вывод для одного файла будет следующим:

1234567 имя файла. 

К найти жесткие ссылки на файл, вам просто нужно выполнить поиск всех файлов с одним и тем же индексом (например, 1234567).

Вы можете сделать это с помощью следующей команды:

найти ~ / -xdev -inum 1234567.