Секреты NTFS. Жесткие ссылки
АрхивСистемаОказывается, создавать жесткие ссылки (Hard Links) на файлы могут не только владельцы UNIX-подобных операционных систем, но и пользователи Windows. Расскажем, как ими манипулировать и зачем это нужно.
Пользователи операционных систем Microsoft Windows знакомы с таким понятием, как ярлыки. Однако, в файловой системе NTFS есть нечто большее - жесткие ссылки (Hard Links). Если в случае с простыми ярлыками указатель на файл есть только один (в одном каталоге), а по разным директориям могут быть разбросаны ссылки на него (ярлыки), то в случае с Hard Link на файл делаются абсолютно равноправные указатели в разных каталогах, указывающие на один и тот же объект.
При работе с жесткими ссылками следует знать, что:
- жесткие ссылки могут быть только на NTFS-разделе, и связаны могут быть только файлы, находящиеся на одном разделе;
- привязанный файл можно перемещать в каталоги этого же логического диска - связь не прервется (она нарушится только при перемещении на другой логический диск);
- любой из файлов, связанных жесткой ссылкой, можно переименовывать - они могут иметь разные имена;
- внешне (в отличие от простых ярлыков) нет никаких признаков того, что файл имеет жесткую связь;
- связанных воедино файлов может быть сколько угодно, и изменение любого из них немедленно применится и ко всем остальным;
- все связанные файлы абсолютно равноправны;
- при удалении связанных файлов удален будет только конкретный выбранный файл, а остальные останутся (их тоже по отдельности можно удалить);
- Hard Link делается для файлов, для директорий существует другое средство - Junction Points (о нем мы расскажем в нашем следующем материале).
Несмотря на то, что жесткие ссылки существуют уже почти десять лет, программ для работы с ними оказалось немного. Итак.
Hard Link Magic. Программа, специально написанная исключительно для создания жестких ссылок. Интерфейс интуитивно понятный. Помимо основного окна программы, она еще встраивает в контекстное меню проводника пункт "Create Hard Link".
Xplorer2. Файловый менеджер, умеющий помимо всего прочего создавать Hard Links. Жесткая ссылка создается так: стандартно помещаем файл в буфер обмена как для копирования, а потом в контекстном меню выбираем "Paste Special -> Hard Link".
PropertyEditor. Встраивается в виде дополнительной вкладки в панель "Свойства". В разделе "PropEdit -> FS -> Links" можно создать жесткую ссылку для выбранного файла. Также тут можно посмотреть есть ли уже у этого файла жесткие ссылки (если значение Links более 1, значит есть). Может работать и с символьными ссылками (Junction Points).
Hlscan: Hard link display tool. Родная утилита от компании Microsoft для обнаружения связанных жесткими ссылками файлов. Работает в командной консоли.
Xln: File System Link creation utility. Утилита, позволяющая из командной строки создать жесткую ссылку или обыкновенный ярлык.
Практическое применение Hard Links может быть весьма разнообразным. Например, для примитивного шпионажа: можно создать где-то жесткую ссылку на файл, а когда жертва удалит свой файл, у вас останется его копия.