Skip to main content

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

Создание загрузочной среды Windows в Linux без использования флешки (Июнь 2025)

Создание загрузочной среды Windows в Linux без использования флешки (Июнь 2025)
Anonim

Существует два типа ссылок, которые вы можете создать в Linux:

  • Жесткие ссылки
  • Символические ссылки

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

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

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

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

Представьте, что вы родились с именем Роберт. Другие люди могут знать вас как Робби, Боба, Бобби или Роба. Каждый человек будет говорить об одном и том же человеке.

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

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

Жесткие ссылки обеспечивают эффективный способ организации файлов. Самый простой способ описать это - это старый эпизод «Улица Сезам».

Берт сказал Эрни, чтобы убрать все свои вещи, и поэтому Эрни задал ему задачу. Прежде всего, он решил убрать все красные вещи. «Пожарная машина красная». Поэтому Эрни убирает огонь.

Затем Эрни решает убрать все игрушки с колесами. У пожарного двигателя есть колеса. Итак, Эрни убрал пожарную машину.

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

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

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

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

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

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

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

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

ln путь / в / файл / путь / в / hard / link

Например, на изображении выше у нас есть музыкальная папка Alice Cooper под названием Trash в пути / home / gary / Music / Alice Cooper / Trash. В этой папке есть 10 песен, один из которых является классическим ядом.

Теперь Poison - это рок-трек, поэтому мы создали папку под названием Rock под музыкальной папкой и создали жесткую ссылку на Poison, набрав следующий файл:

ln "01 - Poison.mp3" "~ / Музыка / рок / Poison.mp3"

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

Как рассказать о разнице между жесткой связью и символической ссылкой

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

ls -lt

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

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

Столбцы:

  • -rw-r - r-- = разрешения
  • 1 = количество ссылок
  • gary = group
  • gary = владелец
  • 1000 = размер файла
  • 18 декабря = дата
  • 21:52 = время
  • poison.mp3 = имя_файла

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

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

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

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

-rw-r - r-- 1 gary gary 1000 Dec 18 21:52 poison.mp3 -> poison.mp3

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

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

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

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

ls -i

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

1234567 имя_файла

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

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

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