Показать полную графическую версию : [решено] Соединения, символические и жесткие ссылки
aka_smile
25-08-2012, 04:04
Morpheus
Не понимаю почему вы говорите что mklink не подходит.
С помощью этой команды я несколько месяцев назад на работе сделал эту ссылку только на другой каталог и каждый раз изменения появлялись в нужной конечной папке.
Далее вы говорите папки "solo9" быть не должно. Дак ведь ее и нет. Конечная целевая папка посмотрите - "Solo9-programData-w7"
Morpheus
25-08-2012, 07:58
aka_smile, вы хотите получить копию, но mklink её не делает. Физически файлы будут храниться в одном месте (Solo9-programData-w7), в другом (solo9) лишь ссылка на это самое место.
Вы правда не видите разницы?
Если нужна ссылка, папки solo9 быть не должно, а Solo9-programData-w7 наоборот.
aka_smile
25-08-2012, 10:49
Morpheus, конечно мне нужна не ссылка, а полная копия папки, это мне надо курить junction?
aka_smile, полную копию папки невозможно сделать средствами системы. Можно лишь создать целевую папку, а в ней жесткие ссылки на каждый файл в исходной папке.
Morpheus
25-08-2012, 14:00
aka_smile, ещё раз: "junction" и прочие ссылки не подходят.
Спрашивайте в скриптах, здесь нужно автоматизировать отслеживание изменений и т.д. »
RasKolbas
27-09-2012, 13:12
Под Windows 7 никаких проблем не было.
А вот на другом компьютере сейчас Windows XP, файловая система NTFS. Пытаюсь создать символическую ссылку в FAR 2 через alt-F6. В диалоге есть выбор:
Жесткая ссылка
Связь каталогов
Символическая ссылка
Символическая ссылка (файл)
Символическая ссылка (каталог)
Выбираю любой из пунктов. Создаётся файл неотличимый от файла, но открыть его я не могу, говорит "Доступ к этому файлу из системы отсутствует. Ошибка открытия файла"
RasKolbas, создать символическую ссылку посредством Far Manager можно. Но использовать её операционная система, версией ниже Vista'ы, не сумеет.
Real Root
18-11-2012, 22:30
3 вопроса по жестким ссылкам.
1) На просторах нета нередко рекомендуют применять NTFS сжатие к папке WinSxS. Собственно порос - если применить сжатие, то что произойдет с фалами, которые имеют хардлинки в других местах? Т.е. мы знаем что notepad.exe живет еще и в C:\Windows\System32. Получит ли он тоже сжатый атрибут (и будет ли он при этом сжатым физически)?
К чему вопрос: если прменять сжатие NTFS - скорость работы с такой папкой падает в 5-10 раз, так что само собой к системным файлам лучше это не применять. А если сжатие коснется только самих хардлинокв - то ничего страшного - напрямую проги в winsxs не обращаются.
2) Второй вопрос: Есть проги (желательно консольные), способные удалять определенный файл, вместе со всеми ссылками. Вот зачем: Папка WinSxS - это и хранилище и библиотек разных версий, и DllCache, и еще и хранилище драйверов устройств. Я бы хотел удалить из системы драйвера принтеров, т.к. совершенно точно с данной систмой никогда не будут использоваться принтеры. Сами драйверы лежат в DriverStore (с именами в prn*) . Да вот беда, их удаление - не освободит ни капли места, т.к. все эти файлы имеют "зеркала" (жесткие ссылки) в нашу любимую WinSxS. Короче говоря было бы замечательно найти прогу/утилиту чтоб удаляла файл и все ссылки на него. Конечно скрипт можно написать, чтоб анализировал ввод fsutil - но что-то уж влом совсем таким путем идти. Может чего готовое есть?
3) Для собсвтенноручно созданного junction, для полной их идентичности с системными, нужно удалять право чтения содержимого папки для пользователя "Все". Иначе, если в папке есть ссылка на саму себя, размер этой папки будет около гига (истинный 30 Мб). Через проводник это сделать легко. Вопрос - как это сделать через icacls?
Применение команды icacls "MyLink" /deny Все:RD запрещает вообще проход по этому линку (junktion). Тогда как быть?
1. Real Root, hardlink — это одно место и несколько записей в каталогах. Потому, будучи применённым к любому из hardlink'ов файла, другие hardlink'и получат тот же атрибут, поскольку файл, на который они ссылаются, будет одним и тем же.
2. Удалить все сразу — мне не попадалось. Посмотреть ссылки можно посредством Far Manager'а; найти ссылки указанного файла — +плагин «NTFS File Information». Кроме того, посмотреть жёсткие ссылки файла можно при помощи утилиты «Hlscan.exe» (Hlscan.exe: Hard link display tool) из комплекта Microsoft Windows 2000 Resource Kit.
Real Root
19-11-2012, 08:47
Посмотреть ссылки можно посредством Far Manager'а; найти ссылки указанного файла — +плагин «NTFS File Information». »
Гораздо проще при задачах автоматизации через fsutil hardlink
Real Root, посмотрел. Да, в новых ОС:
Fsutil hardlink
Creates a hard link between an existing file and a new file.
Syntax
…
fsutil hardlink list <Filename>
Parameters
list: Lists the hardlinks to Filename.
This parameter applies to: Windows Server® 2008 R2 and Windows® 7.
…
появилась такая возможность. Изначально (http://forum.oszone.net/post-2027942.html#post2027942) я смотрел на своей, более старой ОС — там такой возможности не было, потому я и не упоминал по «fsutil».
Real Root
19-11-2012, 11:02
1. Real Root, hardlink — это одно место и несколько записей в каталогах. Потому, будучи применённым к любому из hardlink'ов файла, другие hardlink'и получат тот же атрибут, поскольку файл, на который они ссылаются, будет одним и тем же. »
И хотел поинтересоваться - вы в этом уверенны?
У меня вопрос то возник не на пустом месте.
Дело вот в чем:
Создаем файл C:\1.txt, забьем его на всякий случай данными. Теперь создаем жесткую ссылку fsutil hardlink create c:\2.txt c:\1.txt.
Эти 2 файла хоть и хардлинки, но атрибуты у каждого свои. Т.е. один может быть скрытым и системным, а второй при этом останется обычным. Тоже самое касается и сжатия - применим сжатие для 2.txt - файл станет синим в проводнике. А файл 1.txt останется обычным.
Тут возможно 2 варианта - 1) Файл 1.txt стал все-таки сжатым, хоть этого и не видно в проводнике. 2) Только сам хардлинк 2.txt стал сжатым. При этом, сжатие к содержимому файла будет примененно только в случае если все ссылки на файл станут сжатыми.
Так что тут не все так очевидно.
Кстати, если у вас ОС WinXP или 5,1-подобная, то можете это попробовтаь прямо в ней.
А файл 1.txt останется обычным. »
Нажмите F5 дабы обновить окно Проводника.
Кстати, если у вас ОС WinXP или 5,1-подобная, то можете это попробовтаь прямо в ней. »
Пробовал сразу. Когда писал (http://forum.oszone.net/post-2027942.html#post2027942). Попробовал ещё раз, уже на другой машине. Результат аналогичен Вашему: получились отдельные сущности. Как получилось первый раз по-другому — вопрос.
Ещё раз update: попробовал третий раз, на этой же самой «другой» машине. Теперь и F5 снова работает, и атрибут выставляется у всех hardlink'ов одновременно. В общем, как-то плавающе срабатывает… Real Root, у меня сложилось впечатление, что нужно некоторое время, прежде чем будет обновлён данный атрибут для всех hardlink'ов файла.
Real Root
19-11-2012, 13:07
Ещё раз update: попробовал третий раз, на этой же самой «другой» машине. Теперь и F5 снова работает, и атрибут выставляется у всех hardlink'ов одновременно. В общем, как-то плавающе срабатывает… Real Root, у меня сложилось впечатление, что нужно некоторое время, прежде чем будет обновлён данный атрибут для всех hardlink'ов файла. »
ГЫ :)
Точно! По прошествии пары часов оба файла стали синими.
P.S> Для работы с жесткими ссылками очень удобной оказалась утилитаDuplicate & Same File Searcher. В текущей версии есть баг в х64 системах. Багрепорт был отпарвлен автору программы. К концу недели он обещал новую версию с решением всех проблем и добавленным функционалом. (Сейчас на почту он выслал мне бетку - если там все ОК, то через пару дней бцдет релиз).
Сжатие распространяется на все файлы, связанные жесткими ссылками. Я это уже объяснял, причем применительно именно к winsxs http://forum.oszone.net/post-1843091.html#post1843091
Точно! По прошествии пары часов оба файла стали синими. »
Гмм… Я подразумевал пару-тройку секунд.
Real Root
19-11-2012, 16:40
Я подразумевал пару-тройку секунд. »
Я совершенно точно ждал около минуты, т.к. заодно решил порядок в папке навести :) Возможно, синим он стал и через 2 минуты, но 2 часа я туда не заглядывал.
Есть ли возможность сделать так, чтобы можно было создавать символические ссылки без привилегий администратора?
WindowsNT
24-11-2012, 21:33
Group Policy -> User Rights -> Create Symbolic Links
WindowsNT, не то, чтобы это особо помогло, возможно я просто не там изменяю, но вроде больше таких параметров я не нашёл
http://i.imgur.com/25l1p.png (http://imgur.com/25l1p)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.