Как создать символьную ссылку в windows 10

Обновлено: 05.07.2024

Сложно сказать, какими функциями не обладает компьютер на базе Windows 10. Кажется, разработчики предусмотрели все, что только может понадобиться пользователю. Так, например, владельцам ПК доступна символьная ссылка на операционной системе Windows 10. Подавляющему большинству пользователей данная опция незнакома, а потому важно рассказать о ней более подробно, чтобы понять, при каких сценариях может пригодиться Symbolic link.

Что это такое и для чего нужно?

Многие владельцы компьютеров не ограничиваются одним накопителем, а используют сразу два диска. Чаще всего встречается комбинация HDD и SSD, когда системные данные и программы хранятся на шустром твердотельном накопителе, а мультимедийная информация остается на вместительном жестком диске. В этой связи пользователям нередко приходится переносить данные с одного накопителя на другой, а любой диск, как известно, от частой перезаписи начинает быстро изнашиваться.

И что делать, если файл располагается на HDD, а вы хотите его запускать с SSD, но в то же время желаете не расходовать оставшийся ресурс перезаписи?

В подобной ситуации на помощь готова прийти символьная ссылка, которая представляет собой ярлык с информацией о расположении данных. Воспользовавшись подобным инструментом, вы сможете заставить Windows думать, что файл находится на диске D, но при этом запускать его с накопителя C и наоборот.

На заметку. Ссылку можно создать не только для файлов, но и целых папок. То же самое касается приложений и других видов данных, доступных на компьютере.

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

screenshots_2

Как создать символьную ссылку в Windows 10

Создать Symbolic link можно встроенными средствами компьютера. Всего выделяется два способа, каждый из которых ориентирован на определенную группу пользователей. Проанализируйте оба варианта, чтобы выбрать для себя наиболее подходящий.

Mklink

Чаще всего символическая ссылка создается при помощи инструмента Mklink через Командную строку. Выглядит процедура следующим образом:

  • Щелкните ПКМ по значку «Пуск».
  • Откройте Командную строку.

screenshots_3

  • Для создания мягкой ссылки на конкретный файл введите запрос формата «mklink X», где вместо «X» будет указано имя файла. Для обработки команды не забудьте нажать клавишу «Enter».
  • Если речь идет о конкретном каталоге, воспользуйтесь запросом «mklink /D X», подставив вместо «X» конкретную директорию. Например, «C:\Games».
  • Для жестких аналогов используйте команды формата «mklink /H X» и «mklink /J X» соответственно.

screenshots_4

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

Применение графического инструмента

Также воспользоваться инструментом можно без помощи Командной строки, а напрямую через «Проводник». Но предварительно нужно будет установить на компьютер Link Shell Extension. Дальнейшая инструкция выглядит следующим образом:

  • Щелкните ПКМ по нужному файлу/каталогу.
  • Выберите опцию «Запомнить источник ссылки».

screenshots_5

  • Откройте директорию, куда планируется поместить Symbolic link.
  • Кликните ПКМ.
  • Выберите «Поместить как», а затем – «Символическую ссылку».

screenshots_6

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


Windows 10, 8, 7 и Vista поддерживают символические ссылки, которые указывают на файл или папку в вашей системе. Вы можете создать их с помощью командной строки или стороннего инструмента под названием Link Shell Extension.

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

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

Этот трюк можно использовать для всех целей, включая синхронизацию любой папки с такими программами, как Dropbox, Google Drive и OneDrive.

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

Обратите внимание, что Windows фактически не использует термины «жесткая ссылка» и «мягкая ссылка». Вместо этого используются термины «жесткая ссылка» и «символическая ссылка». В документации Windows «символическая ссылка» – это то же самое, что «мягкая ссылка». Тем не менее, mklink-команда может создавать как жесткие ссылки, так и софт-ссылки (известные как «символические ссылки» в Windows).

Как создать символические ссылки с mklink

Вы можете создавать символические ссылки, используя команду mklink в окне командной строки в качестве администратора. Чтобы открыть её, найдите ярлык «Командная строка» в меню «Пуск», щелкните его правой кнопкой мыши и выберите «Запуск от имени администратора».

Запуск командной строки Windows от имени администратора

В Windows Creators Update вы можете использовать обычное окно командной строки, не запуская его как администратор. Однако, чтобы сделать это без окна командной строки администратора, вы должны сначала включить режим разработчика в ПараметрыОбновление и безопасностьРазработчики.

Без каких-либо дополнительных опций mklink создает символическую ссылку на файл. Команда ниже создает символическую или «мягкую» ссылку (Link) на объект Target:

mklink Link Target

Используйте /D, если вы хотите создать символическую ссылку, указывающую на каталог:

mklink /D Link Target

Используйте /H, если вы хотите создать жесткую ссылку, указывающую на файл:

mklink /H Link Target

Используйте /J для создания жесткой ссылки, указывающую на каталог:

mklink /J Link Target

Справка командной строки по инструменту mklink

Как создать символическую ссылку с помощью графического инструмента

Если вы хотите создавать символические ссылки с помощью инструмента с графическим интерфейсом, загрузите Link Shell Extension. Обязательно загрузите соответствующий пакет необходимых библиотек – найдёте их на странице загрузки инструмента.

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

Команда на сохранение ссылки на папку

Затем вы можете щелкнуть правой кнопкой мыши в другой папке, указать на меню «Поместить как» и выбрать тип создаваемой ссылки.

Создаем символическую ссылку в системе Windows 10

Как удалить символические ссылки

Чтобы избавиться от символической ссылки, вы можете просто удалить её, как и любой другой файл или каталог. Только будьте осторожны: удаляйте ссылку, а не файл или каталог, к которому она привязана.

date

03.03.2021

directory

PowerShell, Windows 10, Windows Server 2016

comments

комментариев 6

Символическая ссылка (симлинк, символьная ссылка, 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для создания символических ссылок нужно запустить командную строку с правами администратора. Иначе при запуске команды появится ошибка “ You do not have sufficient privilege to perform this operation ”.

параметр групповой политики 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"

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

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

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

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

Справочники

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

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

Предупреждение: Эта привилегия должна быть предоставлена только доверенным пользователям. Символические ссылки могут подвергать уязвимости безопасности в приложениях, которые не предназначены для их обработки. Constant: SeCreateSymbolicLinkPrivilege

Возможные значения

  • Определяемый пользователей список учетных записей
  • Не определено

Рекомендации

  • Только доверенные пользователи должны получить это право пользователя. Символические ссылки могут подвергать уязвимости безопасности в приложениях, которые не предназначены для их обработки.

Location

Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment

Значения по умолчанию

По умолчанию члены группы Администраторы имеют это право.

В следующей таблице приведены фактические и действующие значения по умолчанию для этой политики. Значения по умолчанию также можно найти на странице свойств политики.

Тип сервера или объект групповой политики Значение по умолчанию
Default Domain Policy Не определено
Политика контроллера домена по умолчанию Не определено
Параметры по умолчанию для автономного сервера Не определено
Действующие параметры по умолчанию для контроллера домена Администраторы
Действующие параметры по умолчанию для рядового сервера Администраторы
Действующие параметры по умолчанию для клиентского компьютера Администраторы

Управление политикой

В этом разделе описываются различные функции и средства, доступные для управления этой политикой.

Перезагрузка устройства не требуется для того, чтобы этот параметр политики был эффективным.

Изменения прав пользователя вступают в силу при его следующем входе в учетную запись.

Групповая политика

Параметры применяются в следующем порядке с помощью объекта групповой политики (GPO), который перезаписывал параметры на локальном компьютере при следующем обновлении групповой политики:

  • Параметры локальной политики
  • Параметры политики сайта
  • Параметры политики домена
  • Параметры политики подразделения

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

Средства командной строки

Этот параметр можно использовать в сочетании с параметром символической системы файлов ссылок, которым можно управлять с помощью средства командной строки для управления типами symlinks, разрешенными на устройстве. Дополнительные сведения введите fsutil behavior set symlinkevaluation /? в командной подсказке.

Вопросы безопасности

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

Уязвимость

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

Противодействие

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

Читайте также: