Твърди и символични (символични) връзки в Windows

Ако някога ви се е налагало да разглеждате местоположенията на файлове на обикновени програми за Windows, тогава може би сте забелязали една странност. Някои файлове с приложения се дублират и няколко пъти. Например в 64-битов Windows 8.1 се откриват най-много 6 notepad.exe изпълними файлове на Notepad, разположени в различни директории на системния дял. Защо се нуждаем от толкова странно дублиране?

И е необходимо да се осигури съвместимост с приложения на трети страни, които използват Notepad за някои от техните нужди. Причината е проста - в различни програми предписаният път до Notepad може да се различава и за да премахнат проблемите, разработчиците на Microsoft решиха да поставят notepad.exe на няколко места. Същото се отнася и за редица други редовни приложения, например WordPad.

Твърди връзки или твърда връзка

Всъщност дублирането изобщо не е необходимо. Това, което виждате и определяте като истински файл, всъщност може да се окаже Hard Link - специален вид връзка, използвана за формиране на пътища до някой файл. Такива връзки се наричат ​​твърди връзки. Любопитно е, че файл в NTFS може да има до 1023 твърди връзки и всички те ще изглеждат като точното му копие, с изключение на името и размера му. Подобно на преките пътища, твърдите връзки могат да имат различни имена.

Но тяхното съдържание и атрибути са общи и ако ги промените в една такава връзка, промените ще засегнат всички други връзки, дори и тези, които са били изтрити в кошчето. Що се отнася до размера на твърдите връзки, това е само една поява. Тъй като практически няма тегло, връзките от този тип се определят от Explorer като файлове с реално тегло, което понякога причинява на потребителите много въпроси и трудности при ръчно почистване на редица системни директории, същите Winsxs. Hard Link има своите ограничения. Така че можете да създавате твърди връзки само към файлове и само в рамките на един том.

За щастие рядко срещаните потребители срещат твърди връзки, защото в противен случай това може да доведе до объркване и сериозни проблеми. Няма да описваме всички характеристики на поведението на твърди връзки, тъй като това би отнело твърде много време. Вместо това ви предлагаме сами да създадете Hard Link и да експериментирате с тях. Ето един пример. Създайте прост текстов файл file1.txt на работния плот и напишете нещо в него. Сега отворете командния ред и създайте няколко твърди връзки към него с имената file2.txt и file2.txt. Ето така:

cd% userprofile% \ desktop

fsutil твърда връзка създава file2.txt file1.txt

fsutil твърда връзка създава file3.txt file1.txt

Обърнете внимание, че след командата create, първо идва името на твърдата връзка и след това името на оригиналния файл. Можете също да създадете твърди връзки към други твърди връзки. Като цяло, забавлявайте се. Сигурен съм, че ще намерите много интересни неща за себе си..

Символни връзки или символна връзка

За разлика от твърдите връзки, символните връзки или Symbolic Link имат по-голяма гъвкавост. Те са предназначени за удобна организация на обекти на файловата система, както и за оптимизиране на производителността на приложението на SSD дискове. Връзки от този тип могат да бъдат създадени както за файлове, така и за директории, включително мрежови; те общуват между обеми, използвайки относителни пътища. Принципът на работа на символна връзка наподобява обикновен етикет.

Използването на Symbolic Link може да има смисъл, ако трябва да получите достъп до един файл от различни места. Символичните връзки се създават с командата mklink:

mklink D: \ file2.txt% userprofile% \ desktop \ file1.txt

Първият след командата е пътят към символната връзка, вторият е пътят към оригиналния файл. Ако трябва да създадете символна връзка за директорията, се използва същата команда mklink, но с ключа \ d.

mklink \ d D: \ folder2% userprofile% \ desktop \ folder1

Външно символните връзки почти не се различават от обикновените преки пътища, с изключение на маркирането на символната връзка в свойствата на файла или датата на създаване вместо пътя към оригинала в директорията. Освен това, ако изтриете оригинала и след това се опитате да следвате символна връзка, той просто няма да се отвори, докато когато се опитате да отворите прекъснат пряк път, се появява съобщение, което показва, че оригиналният файл е недостъпен. Но най-важната разлика от преките пътища е, че когато работите със символни връзки, Windows все пак ще приеме, че работите с оригиналния обект.

Това е всичко засега. Следващия път ще разгледаме как се използват символните връзки с по-конкретни примери и в същото време ще разберем кои помощни програми се използват с твърди и символични връзки.

Приятен ден!