4

Есть много ответов о том, почему полезны жесткие ссылки, точки соединения и символические ссылки.

Я понимаю, что точки соединения поддерживаются начиная с Vista и описываются как "жесткие ссылки на каталоги" (хотя они являются символическими ссылками на каталоги и никоим образом не напоминают жесткие ссылки на каталоги). Я прав в этом?

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

Я понимаю, что символические ссылки на каталоги существуют только в Windows для обеспечения совместимости / совместимости с файловыми системами UNIX.

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

Но есть ли другие важные области применения, которые я пропускаю?

1 ответ1

3

На самом деле, переходы существуют с Windows 2000; это символические ссылки, которые появились в Vista. (Строго говоря, они появились в XP, но ntfs.sys не раскрывал эту функциональность до Vista.) Ни соединения, ни символические ссылки не похожи на жесткие ссылки; оба из них представлены как разные объекты файловой системы, а жесткие ссылки - это разные имена одного и того же файлового объекта. Этот последний факт можно проверить, заметив, что списки ACL для всех жестких ссылок файла всегда одинаковы.

Я не думаю, что символические ссылки существуют только для совместимости с Linux/Unix. Символьные ссылки на папки более универсальны, чем переходы:

  • Симлинки могут указывать на относительные пути. Хоть mklink /j ..\..\relative\stuff будет успешным, получающееся соединение фактически использует результирующий абсолютный путь. (Смотрите вывод dir /a .)
  • Симлинки могут указывать на удаленные тома или пути UNC. Соединения не могут.

Жесткие ссылки на каталоги теоретически возможны, но если их разрешить, откроется червь - каталоги смогут буквально содержать себя. Многие приложения, которые рекурсивно проверяют файловую систему, сломались бы, потому что не было бы никакого способа отличить цикл от действительно глубокого и странно названного дерева. (С символическими ссылками и переходами записи различимы.) Приложению придется ткнуть в бухгалтерию NTFS, и в основном никто не делает. Жесткие ссылки на каталог также открыли бы возможность наличия в каталоге двух (или более!) Каталогов. настоящие родители. Короче говоря, нарушение нециклической модели структуры каталогов создает множество сложностей. Дальнейшее чтение: этот вопрос по Unix и Linux (я знаю разные ОС, но применимы те же соображения).

Я думаю, что вы выяснили широкое использование символических ссылок и соединений. Еще одно распространенное использование в Windows - это монтирование диска в качестве каталога на существующем диске. (См. Раздел « Изменение буквы диска и пути к нему» ).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .