7 что такое символическая ссылка
Перейти к содержимому

7 что такое символическая ссылка

  • автор:

Записки IT специалиста

Работаем с жесткими и символическими ссылками в Windows

  • Автор: Уваров А.С.
  • 11.05.2022

windows-hardlink-and-symlink-000.pngЖесткие и символические ссылки давно знакомы и активно используются Linux-администраторами, в то время как их Windows коллеги используют их гораздо реже, а некоторые вообще не знают о такой возможности. Тем не менее такая возможность в Windows существует и позволяет значительно упростить некоторые сценарии работы с папками и файлами. В данной статье мы рассмотрим все виды ссылок, доступные в среде ОС Windows, а также разные способы работы с ними, начиная от командной строки и заканчивая PowerShell.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Жесткие ссылки (HardLink)

Жесткие ссылки представляют собой дополнительную запись в файловой таблице раздела для существующего файла. Таким образом жесткая ссылка ничем не отличается от исходного файла, но файл при этом не копируется физически и остается на диске в единственном экземпляре. При изменении файла по любой из жестких ссылок, остальные обновляются автоматически (что логично, так как файл один).

Мы можем переименовывать, копировать, перемещать (в пределах логического тома) ссылки — размер занимаемого места при этом не изменится. При удалении ссылок файл продолжает существовать до тех пор, пока не будет удалена последняя жесткая ссылка на него. Фактически отличить, где находится оригинальный файл, а где жесткая ссылка невозможно, по сути, файл на разделе это и есть жесткая ссылка.

Жесткая ссылка может существовать только в пределах логического тома, поддерживается файловыми системами NTFS и ReFS начиная со сборки 19536.

Для создания жесткой ссылки можно воспользоваться утилитой mklink:

Где ключ /H предписывает создать именно жесткую ссылку, далее следует путь к новому файлу и целевому файлу, на который мы делаем ссылку. Путь можно указывать как абсолютные, так и относительные, в имени создаваемого файла не забывайте указывать расширение.

windows-hardlink-and-symlink-001.png

Ссылки можно создавать и при помощи PowerShell, для этого воспользуйтесь командой:

Команда другая, но принцип тот же самый: -ItemType — тип создаваемой ссылки, в нашем случае жесткая ссылка, -Path — путь к создаваемому файлу ссылки, -Target — файл на который мы делаем ссылку.

windows-hardlink-and-symlink-002.png

Можно ли сделать жесткую ссылку на директорию? Нет, только на файлы.

Вроде бы все понятно, но если внимательный читатель заглянет в свойства папки с жесткой ссылкой, то он увидит, что ее размер равен исходному файлу, если сделаем в ней еще одну жесткую ссылку — двум исходным файлам. Как так? Не стоит переживать, все нормально. Для операционной системы жесткая ссылка ничем не отличается от обычного файла и при подсчете свободного места учитывается размер каждой ссылки, но на самом деле на диске хранится единственная копия. В этом можно убедиться, если одновременно с созданием жестких ссылок контролировать свободное место на диске.

При желании мы можем провернуть даже такой фокус:

windows-hardlink-and-symlink-003.png

Какой вывод можно сделать из того, что мы увидели и где нам могут пригодиться жесткие ссылки? Прежде всего для предоставления пользователям доступа к объемным архивам, образам или инсталляционным пакетам. Скажем у вас есть файловый сервер и несколько отделов, каждому из которых нужно предоставить доступ к одному и тому же большому файлу. При этом вы можете не бояться, что кто-то удалит файл, он удалит его только у себя в директории, для остальных пользователей он останется доступен.

Но при этом надо очень внимательно относиться к вопросу одновременного редактирования файла, так как он существует в единственном экземпляре, но доступен по множеству ссылок в этом сценарии могут возникнуть самые разные коллизии.

Точки соединения (Junction)

Очень старая технология, поддерживаемая еще начиная с Windows 2000, позволяет сделать один из каталогов псевдонимом другого каталога. Чем-то напоминает символические ссылки, но в крайне упрощенном варианте. В качестве цели можно использовать только локальные папки, но при этом нет ограничения по размещению их на одном томе. Т.е. целевая папка может находиться на диске C:, а точка соединения для нее на диске D: и все будет работать. Точки соединения поддерживаются файловыми системами NTFS и ReFS.

Для создания точки соединения можно использовать mklink:

Ключ /J указывает на создание точки соединения, далее следует папка каталога-псевдонима и папка целевого каталога. При любом изменении целевого каталога (перемещение, переименование, удаление) точка соединения перестает работать.

Обратите внимание, что данная папка в проводнике отображается как ярлык, а выводе команды dir как точка соединения.

windows-hardlink-and-symlink-004.png

Это же действие в PowerShell:

Комментировать здесь особо нечего, краткость не входит в число добродетелей PowerShell, но не оставляет места догадкам, все просто и понятно.

Зачем сейчас нужны точки соединения? После появления в NT 6.0 настоящих символических ссылок не нужны, но вы можете встретиться с ними как в устаревших системах, так и в современных, где они могут присутствовать в виде наследия. Поэтому знать о них и уметь с ними работать современному администратору надо.

Символические ссылки (SymbolicLink)

Пожалуй, самый популярный вид связи, позволяет создавать множество псевдонимов для файлов или каталогов размещая их на любых поддерживаемых локальных файловых системах. В качестве цели могут быть использованы как локальные, так и сетевые объекты. При создании символической ссылки можно использовать как абсолютные, так и относительные пути. Но в последнем случае вы не можете перемещать ссылку — она перестанет работать. Символические ссылки поддерживаются начиная с NT 6.0 (Vista и Server 2008) и работают с файловыми системами NTFS и ReFS.

Для создания символических ссылок можно использовать mklink, без параметров она создает симлинк для файла:

При создании ссылки не забываем указать расширения для файла. Как и в случае с точкой соединения символическая ссылка отображается в виде ярлыка и обозначается в выводе команды dir:

windows-hardlink-and-symlink-005.png

Для создания символической ссылки на директорию добавьте ключ /D:

В PowerShell все проще, тип объекта будет определен автоматически:

Если в качестве цели указан файл — будет создана ссылка на файл, каталог — ссылка на каталог.

При переименовании, перемещении или удалении исходного файла или каталога все символические ссылки работать перестанут:

windows-hardlink-and-symlink-006.png

При копировании символической ссылки за пределы локального тома будет скопирован исходный файл, даже если целевой том поддерживает работу со ссылками, но это не мешает создать новую ссылку на другом томе.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Или подпишись на наш Телеграм-канал: Подпишись на наш Telegram-канал

Символические и жесткие ссылки Linux

Символические и жесткие ссылки — это особенность файловой системы Linux, которая позволяет размещать один и тот же файл в нескольких директориях. Это очень похоже на ярлыки в Windows, так как файл на самом деле остается там же где и был, но вы можете на него сослаться из любого другого места.

В Linux существует два типа ссылок на файлы. Это символические и жесткие ссылки Linux. Они очень сильно отличаются и каждый тип имеет очень важное значение. В этой небольшой статье мы рассмотрим чем же отличаются эти ссылки, зачем они нужны, а также как создавать ссылки на файлы в Linux.

Символические ссылки

Символические ссылки более всего похожи на обычные ярлыки. Они содержат адрес нужного файла в вашей файловой системе. Когда вы пытаетесь открыть такую ссылку, то открывается целевой файл или папка. Главное ее отличие от жестких ссылок в том, что при удалении целевого файла ссылка останется, но она будет указывать в никуда, поскольку файла на самом деле больше нет.

Вот основные особенности символических ссылок:

  • Могут ссылаться на файлы и каталоги;
  • После удаления, перемещения или переименования файла становятся недействительными;
  • Права доступа и номер inode отличаются от исходного файла;
  • При изменении прав доступа для исходного файла, права на ссылку останутся неизменными;
  • Можно ссылаться на другие разделы диска;
  • Содержат только имя файла, а не его содержимое.

Теперь давайте рассмотрим жесткие ссылки.

Жесткие ссылки

Этот тип ссылок реализован на более низком уровне файловой системы. Файл размещен только в определенном месте жесткого диска. Но на это место могут ссылаться несколько ссылок из файловой системы. Каждая из ссылок — это отдельный файл, но ведут они к одному участку жесткого диска. Файл можно перемещать между каталогами, и все ссылки останутся рабочими, поскольку для них неважно имя. Рассмотрим особенности:

  • Работают только в пределах одной файловой системы;
  • Нельзя ссылаться на каталоги;
  • Имеют ту же информацию inode и набор разрешений что и у исходного файла;
  • Разрешения на ссылку изменяться при изменении разрешений файла;
  • Можно перемещать и переименовывать и даже удалять файл без вреда ссылке.

Использование ссылок в Linux

Теоретические отличия вы знаете, но осталось закрепить все это на практике, поэтому давайте приведем несколько примеров работы со ссылками в Linux. Для создания символических ссылок существует утилита ln. Ее синтаксис очень прост:

$ ln опции файл_источник файл_ссылки

Рассмотрим опции утилиты:

  • -d — разрешить создавать жесткие ссылки для директорий суперпользователю;
  • -f — удалять существующие ссылки;
  • -i — спрашивать нужно ли удалять существующие ссылки;
  • -P — создать жесткую ссылку;
  • -r — создать символическую ссылку с относительным путем к файлу;
  • -s — создать символическую ссылку.

Создание символических ссылок

Сначала создайте папку test и перейдите в нее:

mkdir test && cd test

Затем создайте файл с именем source с каким-либо текстом:

echo «текст текст текст текст» > source $ cat source

Файл готов, дальше создадим символическую ссылку Linux, для этого используется команда ln с опцией -s:

ln -s source softlink

Попробуем посмотреть содержимое файла по ссылке:

Как видите, нет никакой разницы между ней и исходным файлом. Но утилита ls покажет что это действительно ссылка:

Несмотря на то, что содержимое одинаковое, здесь мы видим, что адрес иноды и права доступа к файлам отличаются, кроме того, явно показано что это символическая ссылка Linux.

Теперь удалите исходный файл и посмотрите что будет:

Вы получите ошибку, что такого файла не существует, потому что мы действительно удалили исходный файл. Если вы удалите ссылку, то исходный файл останется на месте.

Создание жестких ссылок

Снова создайте файл source с произвольным текстом:

echo «текст текст текст текст» > source $ cat source

Теперь создадим жесткую ссылку Linux. Для этого достаточно вызвать утилиту без параметров:

ln source hardlink

Посмотрите содержимое файла:

Данные те же самые, а если мы посмотрим вывод утилиты ls, то увидим что inode и права доступа тоже совпадают:

Если для одного из файлов поменять разрешения, то они изменяться и у другого. Теперь удалите исходный файл:

Затем посмотрите содержимое:

Как видите, ничего не произошло и ссылка по-прежнему указывает на нужный участок диска, это главное отличие жесткой ссылки от символической. Мы можем сделать вывод, что жесткая ссылка linux это обычный файл. Каждый файл имеет как минимум одну ссылку, но для некоторых мы можем создать несколько ссылок.

Выводы

Это все, что вам было необходимо знать про символические и жесткие ссылки linux. Надеюсь, вы получили общее представление об этих возможностях файловой системы и сможете использовать их для решения своих задач.

Использование символических ссылок в Windows

date03.03.2021
useritpro
directoryPowerShell, Windows 10, Windows Server 2016
commentsкомментариев 10

Символическая ссылка (симлинк, символьная ссылка, 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 утилита для создания симлинков в windows

Синтаксис у утилиты mklink простой. Чтобы создать символическую ссылку на файл, нужно указать имя ссылки и целевой объект, на который она должна указывать. Можно указать тип ссылки: /D — символьная (мягкая) ссылка на каталог, /H — жесткая ссылка, /J – точка соединения (Junction point).

Если вам нужно разрешить создавать символические ссылки обычным пользователям, нужно добавить группу пользователей в параметр групповой политики Create Symbolic Links (Computer configuration -> Window Settings -> Security settings -> User Rights Assignment в редакторе GPO). По умолчанию в этой политике добавлена только локальная группа «Administrators». Обновите локальные политики после изменения параметра: gpupdate /force

параметр групповой политики Create Symbolic Links

Создадим в каталоге C:\PS символическую ссылку на файл notepad.exe:

mklink C:\PS\note.exe c:\Windows\System32\notepad.exe

Должно появится сообщение:

Теперь для запуска процесса notepad.exe можно использовать символическую ссылку note.exe.

Теперь создадим в этом каталоге симлинк на другой каталог на этом же диcке:

mklink /D “C:\PS\Downloads” “C:\Users\user\Downloads”

пример использования mklink для создание символьных ссылок в windows

Теперь при переходе в каталог C:\PS\Downloads вы будете видеть содержимое каталога, на который он ссылается.

символическая ссылка на каталог в windows

Выведем содержимое каталога C:\PS:

Dir вывести информацию о всех symlink в папке

Как вы видите, в атрибутах некоторых файлов указано, что это symlink/simlinkd. Также указан объект, на который они ссылаются. В Windows File Explorer симлинки отображаются с иконками ярлыков, а в их свойствах можно посмотреть целевой объект на который они ссылаются.

Также можно создать символически ссылки в Windows 10 с помощью PowerShell (в этом примере я использую относительные пути, чтобы создать символическую ссылку):

New-Item -ItemType SymbolicLink -Path «.\test\tmpfiles» -Target «..\tmp\files»

создать SymbolicLink с помощью powershell

Можно создать символическую ссылку на сетевую папку на удаленном компьютере/сервере. Адрес сетевой папки нужно указывать в формате UNC. Следующий пример создаст симлинк на сетевой каталог на сервере:

mklink /D c:\ps\share \\mskfs01\Share

Например, подключим административную шару C$ с удаленного компьютера по IP адресу:

mklink /D c:\remotePC\server1 \\192.168.31.15\С$

Если при доступе к сетевой папке через симлинк, вы получили ошибку

проверьте разрешенные способы использования символических ссылок на вашем компьютере:

fsutil behavior query SymlinkEvaluation

fsutil behavior query SymlinkEvaluation

Чтобы включить использование символических ссылок на удаленные ресурсы, выполните команды:

fsutil behavior set SymlinkEvaluation R2R:1
fsutil behavior set SymlinkEvaluation R2L:1

Вы можете работать с символическими ссылками, как с обычными объектами файловой системы, можно переименовать, переносить или удалить их. Система автоматически изменит настройки таких симлинков, чтобы они указывали на верные целевые объекты.

Для удаления симлинков используются обычные команды, как и для удаления файлов:

Del c:\ps\note.exe
RD c:\ps\downloads

Как найти и вывести все символические ссылки на диске?

В Windows нет простых инструментов для просмотра и управления всеми симлинками на диске.

Вы можете вывести список всех символических ссылок на диске с помощью команды:

dir /AL /S C:\ | find «SYMLINK»

  • /A – вывести файлы с атрибутом L (симлинк);
  • /S –выполнить команду рекурсивно для всех вложенных каталогов;
  • C:\ — укажите имя диска, на котором нужно найти все символические ссылки (если вы не хотите сканировать весь диск, укажите путь к нужному каталогу)

вывести все симлинке на диске в windows

Также можно вывести список всех символических ссылок на диске с помощью PowerShell. Для этого нужно просканировать все каталоги и найти NTFS объекты с атрибутом ReparsePoint:

Get-ChildItem -Path C:\ -Force -Recurse -ErrorAction ‘silentlycontinue’ | Where

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Символьные ссылки (Symbolic Link) – что они собой представляют и как их использовать практически

Термин «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 Settings\All Users\Application 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\*Ваш профиль*\AppData\Roaming ).
  • Local. Принцип использования тот же – соблюдаем иерархию, чтобы не было никакой путаницы.

Это место удобно использовать для всех перенаправленных хранилищ, то есть и для тех, что перенаправляются штатными средствами Проводника.

Теперь надо переместить нужные подпапки из « Roaming » диска C (пункт А) в « Roaming » диска F (пункт Б).

Перемещать директорию «Microsoft» нельзя, да это и не даст никакого полезного эффекта – там информация, которая в после переустановки системы не понадобится.

Когда операция полностью закончится, переходим в «пункт Б» и формируем символьные связи для всех перемещенных элементов. Сделать это можно при помощи командной строки, но дело это нудное и долгое, так как операции производятся для каждого объекта отдельно. Если же скачать и установить одну бесподобную утилиту, то на все операции потребуется лишь «пара кликов». Утилита бесплатная, работает как расширение системной оболочки, а называется – «FileMenu Tools» (доступна на сайте разработчика).

Будем считать, что она у вас уже есть и пойдем дальше:

    Выделяем все каталоги, делаем правый клик по любому из выделенных элементов, находим строку « FileMenu Tools », сдвигаем курсор на подменю и жмем команду « Создать символическую ссылку ».

Готово! Весь перечень выделенных объектов приобрел новые параметры. Осталось только повторить этот алгоритм действий с каталогами «Local».

Хранилище «Local» используется программами главным образом для различных кэшируемых данных, которые к настройкам не относятся и не имеют важного значения.

Исходя из вышесказанного, операции можно провести выборочно, лишь с теми хранилищами, которые содержат хоть какие-нибудь настраиваемые параметры. Например, некоторые браузеры, такие как «Google Chrome», располагаются именно здесь. Тут же хранятся и их настройки (профили). Также различные приложения «Adobe» записывают здесь не только кэшируемые данные, но и другую, более важную информацию.

Какие еще данные можно перенаправить таким образом

Офисный пакет

Контейнеры «Roaming» и «Local» имеют подпапки «Microsoft», которые не стоит трогать целиком, а вот некоторое внутреннее содержимое стоит перенаправить.

Это различные вспомогательные папки классического (не APPs) пакета «Microsoft Office», если конечно вы им пользуетесь:

  • Шаблоны. Содержит основной рабочий шаблон Normal.dotm, используемый редактором «WinWord» по умолчанию, а также темы.
  • UProof. Здесь хранятся пользовательские орфографические словари.
  • QuickStyles. Тут – шаблоны экспресс-стилей.
  • Office (Local). Содержат файлы настроек для всех приложений пакета и некоторые другие данные.

Чтобы обработать эти объекты, желательно использовать прежние правила – сначала создать аналогичные директории, соблюдая иерархию и идентичность наименований, а уж затем производить остальные операции.

Карты для автономного использования

Если вы скачивали карты каких-либо регионов через « Параметры », то все они хранятся локально по адресу C:\ProgramData\Microsoft\MapData.

Если переместить этот контейнер, а вместо него сотворить виртуальную имитацию, то в будущем легко будет восстановить утерянную связь и автономные карты не придется скачивать вновь.

Послесловие

Как видите, можно извлечь реальную пользу изо-всего, было бы желание. Понятно, что объектов для организации символьных связей может быть гораздо больше – это зависит от версии Windows, сетевого расположения компьютера, а также креативности пользователя. Например, у «Виндоус 7» можно перенести кэш драйверов ( C:\Windows\System32\DriverStore\FileRepository ). Для домашней сети таких возможностей вообще не перечесть.
В общем дело за вами.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *