Назад | Перейти на главную страницу

Есть ли способ создать «отслеживаемую» ссылку (~ жесткую ссылку) на папку в Windows (в частности, в Windows XP)?

Предположим, что есть:

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

Есть ли способ создать «ссылку» на папку, чтобы при перемещении папки ссылка «отслеживала» местоположение этой папки и продолжала работать после операции перемещения?

Если нет, то почему это невозможно.

Вы можете использовать junction.exe из Пакет SysInternals для создания жестких ссылок на каталоги в XP.

Создание жестких ссылок на файлы может быть выполнено изначально с помощью утилита fsutils (командная строка).

Однако то, о чем вы просите, не существует в NTFS. Я нашел приличное изложение Реализации жестких ссылок, точек соединения и мягких ссылок NTFS, но что касается того, о чем вы спрашиваете, точки соединения - это версия жестких ссылок файлов в каталогах / папках в NTFS. И, в отличие от жестких ссылок, они не будут обновляться, если их цель будет перемещена или удалена. Что касается того, почему это так, потому что именно так Microsoft решила реализовать точки соединения в своей файловой системе.

Согласно комментарию Майкла Хэмптона, я немного погуглил о жестких ссылках каталогов, и хотя я не смог сразу найти ничего от Microsoft, что касается настоящих жестких ссылок, создающих циклы в структуре каталогов, я нашел кое-что из Unix и Linux .SE с хорошим объяснением проблемы, а основы такие же, так что, возможно, стоит прочитать.