Символическая ссылка (симлинк, символьная ссылка, Symbolic link) это специальный файл на файловой системе, которые сам не содержит данных, а является по сути ярлыком, указывающим на какой-то другой объект (файл или папку). При обращении к симлику операционная система считает, что это оригинальный файл (папка) и работает с ними совершенно прозрачно.
Символические ссылки используются в Windows довольно часто для системных файлов и каталогов. Пользователь может их применять, когда нужно перенести часть “тяжелых” файлов на другой диск, но чтобы Windows считала, что файлы все еще находятся в исходном каталоге (например в ситуациях, когда нужно экономить место на SSD, перенеся некоторые каталоги на более медленный и емкий SSD, не нарушая работоспособности программ). Можно использовать симлинки на SMB файловом сервере, когда каталоги с разных LUN должны быть доступны через одну точку входа.
В Windows есть три типа файловых ссылок для NTFS томов: жесткие, мягкие (симлинки), точки соединения (Junction point).
- Hard Links (жесткие ссылки) – могут указывать только на локальный файл, но не на папку. Такой файл – это ссылка на другой файла на этом же диске без фактического дублирования самого файла. У него отображается такой же размер и свойства, как у целевого файла (но реальное место на диске он не занимает);
- Junction Points (Directory Hard Link, точка соединения) – могут указывать только на папку (на этом же или на другом разделе);
- Symbolic Links (мягкая ссылка, симлинк) – могут указывать на локальный файл, папку и сетевой каталог на удаленном компьютере (UNC), поддерживаются относительные пути.
В подавляющем большинстве случаев вам будет достаточно функционала symbolic link, как наиболее универсального средства создания ссылки на любой объект.
Как создать символическую ссылку в Windows?
Для создания символических и жестких ссылок в Windows можно использовать встроенную утилиты mklink или PowerShell.
Синтаксис у утилиты
mklink
простой. Чтобы создать символическую ссылку на файл, нужно указать имя ссылки и целевой объект, на который она должна указывать. Можно указать тип ссылки:
/D
— символьная (мягкая) ссылка на каталог,
/H
— жесткая ссылка,
/J
– точка соединения (Junction point).
Чтобы использовать mklinkдля создания символических ссылок нужно запустить командную строку с правами администратора. Иначе при запуске команды появится ошибка “
You do not have sufficient privilege to perform this operation
”.
Если вам нужно разрешить создавать символические ссылки обычным пользователям, нужно добавить группу пользователей в параметр групповой политики Create Symbolic Links (Computer configuration -> Window Settings -> Security settings -> User Rights Assignment в редакторе GPO). По умолчанию в этой политике добавлена только локальная группа «Administrators». Обновите локальные политики после изменения параметра: gpupdate /force
Создадим в каталоге C:PS символическую ссылку на файл notepad.exe:
mklink C:PSnote.exe c:WindowsSystem32notepad.exe
Должно появится сообщение:
symbolic link created for C:PSnote.exe <<===>> c:WindowsSystem32notepad.exe
Теперь для запуска процесса notepad.exe можно использовать символическую ссылку note.exe.
Теперь создадим в этом каталоге симлинк на другой каталог на этом же диcке:
mklink /D “C:PSDownloads” “C:UsersuserDownloads”
Теперь при переходе в каталог C:PSDownloads вы будете видеть содержимое каталога, на который он ссылается.
Выведем содержимое каталога C:PS:
Dir c:ps
Как вы видите, в атрибутах некоторых файлов указано, что это symlink/simlinkd. Также указан объект, на который они ссылаются. В Windows File Explorer симлинки отображаются с иконками ярлыков, а в их свойствах можно посмотреть целевой объект на который они ссылаются.
Также можно создать символически ссылки в Windows 10 с помощью PowerShell (в этом примере я использую относительные пути, чтобы создать символическую ссылку):
New-Item -ItemType SymbolicLink -Path ".testtmpfiles" -Target "..tmpfiles"
Можно создать символическую ссылку на сетевую папку на удаленном компьютере/сервере. Адрес сетевой папки нужно указывать в формате UNC. Следующий пример создаст симлинк на сетевой каталог на сервере:
mklink /D c:psshare \mskfs01Share
Например, подключим административную шару C$ с удаленного компьютера по IP адресу:
mklink /D c:remotePCserver1 \192.168.31.15С$
Если при доступе к сетевой папке через симлинк, вы получили ошибку
The symbolic link cannot be followed because its type is disabled
проверьте разрешенные способы использования символических ссылок на вашем компьютере:
fsutil behavior query SymlinkEvaluation
Local to local symbolic links are enabled. Local to remote symbolic links are enabled. Remote to local symbolic links are disabled. Remote to remote symbolic links are disabled.
Чтобы включить использование символических ссылок на удаленные ресурсы, выполните команды:
fsutil behavior set SymlinkEvaluation R2R:1
fsutil behavior set SymlinkEvaluation R2L:1
Вы можете работать с символическими ссылками, как с обычными объектами файловой системы, можно переименовать, переносить или удалить их. Система автоматически изменит настройки таких симлинков, чтобы они указывали на верные целевые объекты.
Для удаления симлинков используются обычные команды, как и для удаления файлов:
Del c:psnote.exe
RD c:psdownloads
Как найти и вывести все символические ссылки на диске?
В Windows нет простых инструментов для просмотра и управления всеми симлинками на диске.
Вы можете вывести список всех символических ссылок на диске с помощью команды:
dir /AL /S C: | find "SYMLINK"
-
/A
– вывести файлы с атрибутом L (симлинк); -
/S
–выполнить команду рекурсивно для всех вложенных каталогов; -
C:
— укажите имя диска, на котором нужно найти все символические ссылки (если вы не хотите сканировать весь диск, укажите путь к нужному каталогу)
Также можно вывести список всех символических ссылок на диске с помощью PowerShell. Для этого нужно просканировать все каталоги и найти NTFS объекты с атрибутом ReparsePoint:
Get-ChildItem -Path C: -Force -Recurse -ErrorAction 'silentlycontinue' | Where { $_.Attributes -match "ReparsePoint"}

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Жесткие ссылки (HardLink)
Жесткие ссылки представляют собой дополнительную запись в файловой таблице раздела для существующего файла. Таким образом жесткая ссылка ничем не отличается от исходного файла, но файл при этом не копируется физически и остается на диске в единственном экземпляре. При изменении файла по любой из жестких ссылок, остальные обновляются автоматически (что логично, так как файл один).
Мы можем переименовывать, копировать, перемещать (в пределах логического тома) ссылки — размер занимаемого места при этом не изменится. При удалении ссылок файл продолжает существовать до тех пор, пока не будет удалена последняя жесткая ссылка на него. Фактически отличить, где находится оригинальный файл, а где жесткая ссылка невозможно, по сути, файл на разделе это и есть жесткая ссылка.
Жесткая ссылка может существовать только в пределах логического тома, поддерживается файловыми системами NTFS и ReFS начиная со сборки 19536.
Для создания жесткой ссылки можно воспользоваться утилитой mklink:
mklink /H C:Folder1LinkFileName C:FolderFileName
Где ключ /H предписывает создать именно жесткую ссылку, далее следует путь к новому файлу и целевому файлу, на который мы делаем ссылку. Путь можно указывать как абсолютные, так и относительные, в имени создаваемого файла не забывайте указывать расширение.
Ссылки можно создавать и при помощи PowerShell, для этого воспользуйтесь командой:
New-Item -ItemType HardLink -Path C:Folder1LinkFileName -Target C:FolderFileName
Команда другая, но принцип тот же самый: -ItemType — тип создаваемой ссылки, в нашем случае жесткая ссылка, -Path — путь к создаваемому файлу ссылки, -Target — файл на который мы делаем ссылку.
Можно ли сделать жесткую ссылку на директорию? Нет, только на файлы.
Вроде бы все понятно, но если внимательный читатель заглянет в свойства папки с жесткой ссылкой, то он увидит, что ее размер равен исходному файлу, если сделаем в ней еще одну жесткую ссылку — двум исходным файлам. Как так? Не стоит переживать, все нормально. Для операционной системы жесткая ссылка ничем не отличается от обычного файла и при подсчете свободного места учитывается размер каждой ссылки, но на самом деле на диске хранится единственная копия. В этом можно убедиться, если одновременно с созданием жестких ссылок контролировать свободное место на диске.
При желании мы можем провернуть даже такой фокус:
Какой вывод можно сделать из того, что мы увидели и где нам могут пригодиться жесткие ссылки? Прежде всего для предоставления пользователям доступа к объемным архивам, образам или инсталляционным пакетам. Скажем у вас есть файловый сервер и несколько отделов, каждому из которых нужно предоставить доступ к одному и тому же большому файлу. При этом вы можете не бояться, что кто-то удалит файл, он удалит его только у себя в директории, для остальных пользователей он останется доступен.
Но при этом надо очень внимательно относиться к вопросу одновременного редактирования файла, так как он существует в единственном экземпляре, но доступен по множеству ссылок в этом сценарии могут возникнуть самые разные коллизии.
Точки соединения (Junction)
Очень старая технология, поддерживаемая еще начиная с Windows 2000, позволяет сделать один из каталогов псевдонимом другого каталога. Чем-то напоминает символические ссылки, но в крайне упрощенном варианте. В качестве цели можно использовать только локальные папки, но при этом нет ограничения по размещению их на одном томе. Т.е. целевая папка может находиться на диске C:, а точка соединения для нее на диске D: и все будет работать. Точки соединения поддерживаются файловыми системами NTFS и ReFS.
Для создания точки соединения можно использовать mklink:
mklink /J D:LinkFolder C:Folder
Ключ /J указывает на создание точки соединения, далее следует папка каталога-псевдонима и папка целевого каталога. При любом изменении целевого каталога (перемещение, переименование, удаление) точка соединения перестает работать.
Обратите внимание, что данная папка в проводнике отображается как ярлык, а выводе команды dir как точка соединения.
Это же действие в PowerShell:
New-Item -ItemType Junction -Path D:LinkFolder -Target C:Folder
Комментировать здесь особо нечего, краткость не входит в число добродетелей PowerShell, но не оставляет места догадкам, все просто и понятно.
Зачем сейчас нужны точки соединения? После появления в NT 6.0 настоящих символических ссылок не нужны, но вы можете встретиться с ними как в устаревших системах, так и в современных, где они могут присутствовать в виде наследия. Поэтому знать о них и уметь с ними работать современному администратору надо.
Символические ссылки (SymbolicLink)
Пожалуй, самый популярный вид связи, позволяет создавать множество псевдонимов для файлов или каталогов размещая их на любых поддерживаемых локальных файловых системах. В качестве цели могут быть использованы как локальные, так и сетевые объекты. При создании символической ссылки можно использовать как абсолютные, так и относительные пути. Но в последнем случае вы не можете перемещать ссылку — она перестанет работать. Символические ссылки поддерживаются начиная с NT 6.0 (Vista и Server 2008) и работают с файловыми системами NTFS и ReFS.
Для создания символических ссылок можно использовать mklink, без параметров она создает симлинк для файла:
mklink C:Folder1LinkFileName C:FolderFileName
При создании ссылки не забываем указать расширения для файла. Как и в случае с точкой соединения символическая ссылка отображается в виде ярлыка и обозначается в выводе команды dir:
Для создания символической ссылки на директорию добавьте ключ /D:
mklink /D D:LinkFolder C:Folder
В PowerShell все проще, тип объекта будет определен автоматически:
New-Item -ItemType SymbolicLink -Path C:Folder1LinkFileName -Target C:FolderFileName
Если в качестве цели указан файл — будет создана ссылка на файл, каталог — ссылка на каталог.
При переименовании, перемещении или удалении исходного файла или каталога все символические ссылки работать перестанут:
При копировании символической ссылки за пределы локального тома будет скопирован исходный файл, даже если целевой том поддерживает работу со ссылками, но это не мешает создать новую ссылку на другом томе.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Как создавать и удалять симлинки


Используемые термины: Симлинк, Windows, Linux.
Работы с символьными ссылками в Windows ведутся из командной строки.
Синтаксис
mklink <имя создаваемого симлинка> <на что ведет симлинк>
Симлинк на файл
mklink C:UsersdmoskDesktopcmd.exe C:Windowssystem32cmd.exe
* в данном примере на рабочем столе пользователя dmosk будет создан симлинк на файл cmd.exe.
Симлинк на директорию
mklink /D «C:UsersdmoskDesktopСетевая папка» \dmosk.localshare
* в примере создается симлинк на сетевую папку \dmosk.localshare
** так как в названии папки есть пробел, путь заключен в кавычки.
Для создания ссылки на папку доступен также ключ /J. Созданная таким образом ссылка будет по некоторым особенностям напоминать жесткую ссылку.
Удалить симлинк
В Windows его можно удалить в проводнике, как обычный файл или папку.
Или использовать командную строку.
Для папки:
rmdir «C:UsersdmoskDesktopСетевая папка»
Для файла:
del C:UsersdmoskDesktopcmd.exe
Разрешить симлинки в Windows
Если при попытке перейти по символьной ссылке мы получим ошибку «Символическая ссылка не может быть загружена, так как ее тип отключен», открываем командную строку от администратора и вводим команду:
fsutil behavior set SymlinkEvaluation L2L:1 R2R:1 L2R:1 R2L:1
Если это не помогло, пробуем создать симлинк с ключом /J.
Linux и FreeBSD
Создание
Общий синтаксис
ln -s <на какой существующий объект будет вести> <создаваемый симлинк>
В системах на базе Linux (например, Ubuntu или CentOS) и FreeBSD симлинк для каталога и файла создаются одинаково:
ln -s /usr/share/nginx/html/index.php /home/dmosk/
ln -s /usr/share/nginx/html /home/dmosk/
* в первом примере создана символьная ссылка в домашней директории пользователя dmosk на файл index.php; во втором — на каталог /usr/share/nginx/html.
Удаление
Также используется одна команда:
rm /home/dmosk/index.php
Была ли полезна вам эта инструкция?
Да Нет
Is it possible to change the target of a symlink or junction in Windows? In Linux it can be modified with:
ln -f
asked Jul 2, 2012 at 14:39
Just remove and recreate the link. That’s all that -f does in Linux anyway.
Also, here’s a cool Windows Link Shell Extension.
answered Jul 2, 2012 at 15:24
David CowdenDavid Cowden
2091 gold badge2 silver badges10 bronze badges
Powershell
New-Item -Type SymbolicLink -Path "C:linkpath" -Target "C:newtarget" -Force
Mind the -Force Luke
P.S. elevated mode required
answered Oct 12, 2021 at 15:24
jitbitjitbit
4901 gold badge4 silver badges13 bronze badges
The method belo works for me in Windows 7
mklink TempLink NewTarget
copy /l /y TempLink OldLink
del TempLink
answered Nov 13, 2018 at 12:18
GyanGyan
33k6 gold badges52 silver badges94 bronze badges
1
Note that if the symlink is a hanging symlink, i.e. points to a nonexistent location, then using linkshell extension will not allow you to edit the target, because this works as an extension to explorer which adds a tab to the properties context menu. If the symlink is hanging, explorer signals an error and will not allow you to access the link properties, and hence you will not be able to edit the target location.
answered Mar 14, 2021 at 21:01
pbpbpbpb
795 bronze badges
0
Is it possible to change the target of a symlink or junction in Windows? In Linux it can be modified with:
ln -f
asked Jul 2, 2012 at 14:39
Just remove and recreate the link. That’s all that -f does in Linux anyway.
Also, here’s a cool Windows Link Shell Extension.
answered Jul 2, 2012 at 15:24
David CowdenDavid Cowden
2091 gold badge2 silver badges10 bronze badges
Powershell
New-Item -Type SymbolicLink -Path "C:linkpath" -Target "C:newtarget" -Force
Mind the -Force Luke
P.S. elevated mode required
answered Oct 12, 2021 at 15:24
jitbitjitbit
4901 gold badge4 silver badges13 bronze badges
The method belo works for me in Windows 7
mklink TempLink NewTarget
copy /l /y TempLink OldLink
del TempLink
answered Nov 13, 2018 at 12:18
GyanGyan
33k6 gold badges52 silver badges94 bronze badges
1
Note that if the symlink is a hanging symlink, i.e. points to a nonexistent location, then using linkshell extension will not allow you to edit the target, because this works as an extension to explorer which adds a tab to the properties context menu. If the symlink is hanging, explorer signals an error and will not allow you to access the link properties, and hence you will not be able to edit the target location.
answered Mar 14, 2021 at 21:01
pbpbpbpb
795 bronze badges
0
Термин «Symbolic Link» получил широкое распространение после выхода «Windows Vista», структура системных путей которой кардинально отличалась от предыдущих версий. Для совместимости с приложениями, поголовное большинство которых на тот момент не могло оптимально работать с новыми путями к пользовательским и системным каталогам, было введено большое количество специфичных объектов – точек соединения, расположенных в привычных местах, а также имеющих привычные имена. Их называют символическими ссылками. Впрочем перевод термина на русский язык не однозначен, поэтому одно понятие встречается в виде нескольких вариантов словосочетаний.
Содержание
- Что это такое
- Сравнение разновидностей ссылок
- Зачем операционной системе нужны эти точки соединения
- Перенаправление папок при помощи символических ссылок
- Алгоритм действий
- Какие еще данные можно перенаправить таким образом
Что это такое
Это некие подобия обычных ярлыков, но с гораздо более расширенной функциональностью. Символическая ссылка образует совершенно полноценную связь с конечным объектом-целью – настолько полноценную, что системная оболочка не обращает особого внимания на разницу между реальным объектом и его имитацией.
Таким образом, любая программа может записывать или изменять свои вспомогательные файлы там, где ей положено «по умолчанию», но фактически они будут располагаться совершенно в другом месте.
Сравнение разновидностей ссылок
Для примера возьмем символьные связи, создаваемые самой системой. Откроем контейнер пользовательского профиля и включим отображение скрытых элементов (Виндоус 10 – команда на ленте, Виндоус 7 – через «Параметры папки»). Для наглядности сгруппируем элементы по их атрибутам.
Группа «HSDLI» собрала объекты, которые необходимы старым программам для совместимости с новыми версиями «Windows». Они относятся к символическим связям, но имеют более раннее происхождение и называются «Junction Point». Иными словами, их можно назвать подвидом символических ссылок, обладающим урезанными возможностями.
Неполноценность его функциональности состоит в том, что подвид этот предназначен исключительно для директорий плюс работает только локально – сформировать точку соединения с сетевой папкой невозможно. Но для локального использования он все же предпочтительней, так как обладает узкой «специализацией», за счет чего теснее взаимодействует с системной оболочкой и никогда не вызывает конфликтов.
Рассмотрим свойства двух разновидностей символьных связей, сделанных для одного каталога «Roaming». Первая создана системой в виде «Junction Point», вторая сформирована пользователем и представляет собой «Symbolic Link».
Как видно на иллюстрации, во втором варианте присутствует вкладка «Ярлык», такая же, как у обычной иконки с Рабочего стола. Помимо этого в первом варианте отсутствует информация о пути к реальному хранилищу – цели ссылки. То есть, его свойства более близки к параметрам настоящей директории, а значит, воспринимаются Проводником точнее. Однако, это не значит, что со второй разновидностью возникают какие-либо проблемы – обе они выполняют свои функции одинаково хорошо.
Теперь зайдем в каталог «AppData», создадим простой ярлык для папки «Roaming» c именем «Application Data», а затем переместим его в родительский каталог. Сгруппируем содержимое окна по типу.
Видно, что Проводник воспринимает ярлыком лишь тот объект, который таковым непосредственно и является – два других воспринимаются как директории.
Откроем «Свойства» обыкновенного ярлыка и сравним их с параметрами символической ссылки.
В 1-м случае заблокированных элементов нет, во 2-м – заблокировано все, кроме кнопки «Расположение файла» да поля с наименованием объекта на вкладке «Общие». Это говорит о том, что символьная связь формируется «намертво» – изменить в ней что-либо невозможно, за исключением имени. Если, например, переместить или переименовать целевой объект, соединение с ним пропадет, а система не сможет ее восстановить автоматически, как это бывает с простыми ярлыками.
Проведем для наглядности небольшой эксперимент.
Создадим папку с именем «А», а также символическую ссылку на нее, но под другим названием (Б), так как в противном случае это нам не удастся – невозможно сформировать 2 директории с одинаковыми именами. Теперь сотворим простой ярлык для этой же папки – его наименованием может стать как «А», так и «Б». Системе это безразлично, ибо она воспринимает их, как 2 совершенно разных элемента.
Далее переименуем исходную папку (АБ) и попробуем открыть его с помощью «Symbolic Link» (Б). Операция стала невозможной, так как путь к цели стал иным, а соединение с ней разорвалась. Теперь испытаем обычный ярлык – переход происходит без проблем. Активировав его «Свойства», можно увидеть, что первоначальный путь к хранилищу автоматически изменился.
Зачем операционной системе нужны эти точки соединения
Как уже было сказано выше, иерархическая структура системной оболочки стала кардинально отличаться от «Windows XP», а символьные связи, расставленные в нужных местах, успешно устраняют это отличие.
Сравним иерархию системных разделов «XP» и «10».
Не будем обращать внимания на наличие второго контейнера «Program Files» у 64-разрядной «Десятки», а вот каталоги «Users» и «ProgramData» – прямое подтверждение вышесказанного. Чтобы старые программы могли с ними взаимодействовать, пришлось внедрить длинную цепочку виртуальных переходов. Начинается она с соединительной точки «Documents and Settings», ибо старые версии «Windows» используют именно эту директорию для хранения профилей отдельных пользователей плюс общего для всех учетных записей профиля «All Users».
Следующее звено цепочки, это каталог «Users» – туда переносит ссылка. Откроем его и сравним с аналогом в «XP».
Здесь цепочка дробится на несколько ветвей, одна из которых начинает свой путь с виртуальной папки «All Users» (у старых версий она существует реально). Заходя сюда, мы попадаем в контейнер «ProgramData», а если там пройти по символьной ссылке «Application Data». То, как ни странно, попадем снова сюда же. Фантастика!
Однако для устаревших приложений эта петля необходима, так как они записывают свои данные по такому пути: C:Documents and SettingsAll UsersApplication Data. Формируя виртуальные переходы, система формирует этот путь, но ведет он все же к реально существующему контейнеру «ProgramData».
Это одна ветвь. Другая – переносит из «Default User» в «Default». Остальные – внедрены в хранилища пользовательских профилей. Откроем один из них и посмотрим, что там нагромождено.
Видно, что для устранения различий, в «10-ке» присутствует огромное количество виртуальных переходов, возмещающих недостаток реальных хранилищ. Кстати, многие из них абсолютно не используются устаревшими приложениями, да и самими этими приложениями сейчас почти никто не пользуются. Так что непонятно, почему их до сих пор не исключили из структуры оболочки «Windows 10». Впрочем, удалить их самостоятельно не составляет труда. Можно смело удалять такие элементы, как:
- Cookies
- NetHood
- PrintHood
- Recent
Удаление точки соединения «SendTo» тоже ничего не изменит – операционной системе она абсолютно не нужна, а современные приложения используют другой путь.
С тем, как работают символические связи и зачем они нужны системе, мы похоже разобрались. Пора переходить к тому, как извлечь из них пользу.
Перенаправление папок при помощи символических ссылок
Небольшое вступление
К сожалению, почти никто не использует их функционала так, чтобы извлечь из этого действительно стоящую пользу. Все, на что хватает фантазии у большинства людей, это сократить путь к нужным хранилищам, сделать его более удобным. Мы же разберем возможность перенаправлять те директории, у которых нет встроенных средств для этого.
Перенаправление многих пользовательских директорий можно осуществить штатными средствами, но это всего лишь малая толика из того, что рекомендуется хранить в несистемном дисковом разделе. Каждая программа и утилита, которую вы запускаете (кроме портативных конечно), организовывает в контейнерах «Roaming» и «Local» (родительская директория – «AppData») свои собственные хранилища, где осуществляет запись/чтение данных, необходимых для сохранения настроек интерфейса, параметров работы, а также многого другого.
Все эти директории, естественно со всем их содержимым, в случае непредвиденной ситуации, влекущей за собой незапланированную переустановку Windows, будут безвозвратно утеряны, либо потребуется много времени и усилий, а также специальные средства, чтобы их скопировать до форматирования дискового раздела.
Если же перенаправить все хранилища программных настроек заблаговременно, то они будут защищены от потери, по крайней мере «с этой стороны». Но это не вся выгода – после переустановки ОС соединение с ними легко восстанавливается повторным созданием символьных связей.
Алгоритм действий
Для начала необходимо организовать базовый контейнер в другом разделе, свободном от каких-бы то ни было операционных систем. Чтобы было легко ориентироваться в будущем, лучше придать ему понятное наименование, а при создании в нем подпапок желательно соблюдать исходную иерархию.
Например, у нас есть несистемный том «Common (F:)». Назовем созданное в нем хранилище так же как и то, из которого мы будем перемещать папки (AppData), а для отличия добавим пробел да букву диска – «App Data (F)». Открыв созданный каталог, организуем там 2 подпапки:
- Roaming. Сюда мы переместим папки из аналогичного контейнера системного тома (C:Users*Ваш профиль*AppDataRoaming).
- Local. Принцип использования тот же – соблюдаем иерархию, чтобы не было никакой путаницы.
Это место удобно использовать для всех перенаправленных хранилищ, то есть и для тех, что перенаправляются штатными средствами Проводника.
Теперь надо переместить нужные подпапки из «Roaming» диска C (пункт А) в «Roaming» диска F (пункт Б).
Перемещать директорию «Microsoft» нельзя, да это и не даст никакого полезного эффекта – там информация, которая в после переустановки системы не понадобится.
Когда операция полностью закончится, переходим в «пункт Б» и формируем символьные связи для всех перемещенных элементов. Сделать это можно при помощи командной строки, но дело это нудное и долгое, так как операции производятся для каждого объекта отдельно. Если же скачать и установить одну бесподобную утилиту, то на все операции потребуется лишь «пара кликов». Утилита бесплатная, работает как расширение системной оболочки, а называется – «FileMenu Tools» (доступна на сайте разработчика).
Будем считать, что она у вас уже есть и пойдем дальше:
- Выделяем все каталоги, делаем правый клик по любому из выделенных элементов, находим строку «FileMenu Tools», сдвигаем курсор на подменю и жмем команду «Создать символическую ссылку».
- Откроется диалог, где требуется выбрать пункт назначения да подтвердить операции (кнопка «OK»).
- Переходим обратно в «пункт А», и, при помощи одной из функций той же утилиты, изменяем атрибуты у созданных виртуальных каталогов. Необходимо придать им атрибут «Системный». Для этого их нужно опять же выделить, вызвать контекстное меню, найти строку «Атрибуты» в подменю «FileMenu Tools», а в ее подменю – команду «Системный».
Готово! Весь перечень выделенных объектов приобрел новые параметры. Осталось только повторить этот алгоритм действий с каталогами «Local».
Хранилище «Local» используется программами главным образом для различных кэшируемых данных, которые к настройкам не относятся и не имеют важного значения.
Исходя из вышесказанного, операции можно провести выборочно, лишь с теми хранилищами, которые содержат хоть какие-нибудь настраиваемые параметры. Например, некоторые браузеры, такие как «Google Chrome», располагаются именно здесь. Тут же хранятся и их настройки (профили). Также различные приложения «Adobe» записывают здесь не только кэшируемые данные, но и другую, более важную информацию.
Какие еще данные можно перенаправить таким образом
Офисный пакет
Контейнеры «Roaming» и «Local» имеют подпапки «Microsoft», которые не стоит трогать целиком, а вот некоторое внутреннее содержимое стоит перенаправить.
Это различные вспомогательные папки классического (не APPs) пакета «Microsoft Office», если конечно вы им пользуетесь:
- Шаблоны. Содержит основной рабочий шаблон Normal.dotm, используемый редактором «WinWord» по умолчанию, а также темы.
- UProof. Здесь хранятся пользовательские орфографические словари.
- QuickStyles. Тут – шаблоны экспресс-стилей.
- Office (Local). Содержат файлы настроек для всех приложений пакета и некоторые другие данные.
Чтобы обработать эти объекты, желательно использовать прежние правила – сначала создать аналогичные директории, соблюдая иерархию и идентичность наименований, а уж затем производить остальные операции.
Карты для автономного использования
Если вы скачивали карты каких-либо регионов через «Параметры», то все они хранятся локально по адресу C:ProgramDataMicrosoftMapData.
Если переместить этот контейнер, а вместо него сотворить виртуальную имитацию, то в будущем легко будет восстановить утерянную связь и автономные карты не придется скачивать вновь.
Послесловие
Как видите, можно извлечь реальную пользу изо-всего, было бы желание. Понятно, что объектов для организации символьных связей может быть гораздо больше – это зависит от версии Windows, сетевого расположения компьютера, а также креативности пользователя. Например, у «Виндоус 7» можно перенести кэш драйверов (C:WindowsSystem32DriverStoreFileRepository). Для домашней сети таких возможностей вообще не перечесть.
В общем дело за вами.









Linux и FreeBSD