Команда ln в linux (cоздание cимволических cсылок)
Содержание:
- Переменные символические ссылки [ править ]
- Создание символических ссылок
- Symlinks in Windows 10
- Обзор [ править ]
- Симлинки против псевдонимов в macOS
- Жесткие и символические ссылки в Windows
- Как создать символические ссылки
- Обзор
- Cравнение жёстких и символических ссылок
- My CurrentWork example
- Ln Command in Linux (Create Symbolic Links)
- Как использовать команду
- Создание символической ссылки на файл
- Что такое символические ссылки
- Setting Up Symlinks on Windows 10 Using Command Prompt
- Резюме [ править ]
- Способ №1. Изменить папку хранения копий через командную строку
Переменные символические ссылки [ править ]
Символические ссылки могут быть реализованы контекстно-зависимым или переменным образом, так что ссылка указывает на различные цели в зависимости от параметра конфигурации, параметра времени выполнения или другого мгновенного состояния.
Переменная или вариант символической ссылкой является символической ссылкой , которая имеет имя переменного , встроенное в него. Это обеспечивает некоторую гибкость в порядке файловой системы, что невозможно со стандартной символической ссылкой. Переменные, встроенные в символическую ссылку, могут включать в себя информацию о пользователе и среде.
Операционные системы , использующие вариантные символические ссылки, включают NetBSD , DragonFly BSD , Domain / OS . Tru64 использует контекстно-зависимую символьную ссылку, где контекстом является номер члена кластера.
Пирамида Технология OSx «s Операционная система реализована условные символические ссылки , которые указывали на разные места , в зависимости от которых вселенной программы работала в. Вселенных поддерживаемом была AT & Ts игровой SysV.3 и распространение Berkeley Software (BSD 4.3). Например: если команда ps была запущена во вселенной att , то символическая ссылка для каталога / bin будет указывать на /.attbin, и будет выполнена программа /.attbin/ps . Если же команда ps была запущена во вселенной ucb , то / binбудет указывать на /.ucbbin и /.ucbbin/ps будет выполняться. Подобные условные символические ссылки были также созданы для других каталогов, таких как / lib , / usr / lib , / usr / include .
Создание символических ссылок
Чтобы создать символическую ссылку, нужно выполнить команду ln с опцией -s:
Например, создадим в текущем каталоге символическую ссылку с именем mylink на файл /home/pingvinus/myfile:
Выполнив команду ls -li, можно увидеть, что ссылка myfile указывает на файл /home/pingvinus/myfile
Обратите внимание, что ссылка и целевой файл имеют разные inode (792300 и 787622. См
число в начале строки).
Если теперь удалить целевой файл, а затем попробовать просмотреть его содержимое, используя ссылку, то получим сообщение о том, что файл не найден:
Пример создания и использования символьной ссылки (при создании ссылки используется относительный путь до целевого файла, если такую ссылку переместить, то она будет невалидна):
Symlinks in Windows 10
Although Symlinks have distinct advantages, it was primarily utilized by UNIX-compatible operating systems like Linux, FreeBSD, OSX, etc., where symlinks can be created without restrictions. For Windows users, although Symlinks was made available starting from Windows Vista, it was difficult and tedious to create.
Because of Windows Vista’s security requirements, users needed local admin rights and, importantly, had to run mlink in a command-line console elevated as administrator to create/modify Symlinks. This latter restriction resulted in Symlinks being infrequently used by most Windows developers and caused many modern cross-platform development tools to work less efficiently and reliably on Windows.
However, now with Windows 10 Creators Update, once a user with admin rights enables Developer Mode, anybody on the PC can run the the mklink command without elevating a command-line console.
How do you create Symlinks
Symlinks can be created either using the mklink command or the CreateSymbolicLink API.
Using mklink command
While using mklink command, use the below syntax:
“mklink /prefix link_path file/folder_path”
Note: mklink can create several types of links. Below are the types-
- /D Creates a directory symbolic link. The default is a file symbolic link.
- /H Creates a hard link instead of a symbolic link.
- /J Creates a Directory Junction.
For instance, I created a directory junction of my Music folder to my desktop. Refer the below screenshot-
So when I click on the Symlink, it looks that my music files are stored in C:\Users\<username>\Desktop\Music although it is originally present in C:\Users\<username>\Music.
Remember, if your path has any spaces in it, then you need to place quotes around it.
Using CreateSymbolicLink
To enable the new behavior when using the CreateSymbolicLink API, there is an additional dwFlags option you will need to set the value as:
SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE
0x2
So by choosing the above value, you have specified the flag to allow the creation of symbolic links when the process is not elevated.
To read more on how to create Symlink using CreateSymbolicLink API, visit .
Read: Create Hardlinks, Symbolic Links, Junctions, Volume Mountpoints.
Conclusion
It can be said that Symlinks are more useful than mere shortcuts however they are a bit difficult to create. An average PC user may still find it little scary to create. What more, even today, many users struggle to understand the concept of shortcuts well and hence may struggle to differentiate Symlinks and understand its use.
Having said that, it is almost a guarantee that you will find it easy to change whatever settings you can so that a program is pointing to the right directory, and you don’t really create a Symlink, but knowing how to set up and use a good Symlink can be really handy.
Обзор [ править ]
Символьная ссылка содержит текстовую строку, которая автоматически интерпретируется операционной системой как путь к другому файлу или каталогу. Этот другой файл или каталог называется «целью». Символьная ссылка — это второй файл, который существует независимо от своей цели. Если символическая ссылка удаляется, ее цель остается неизменной. Если символическая ссылка указывает на цель, и когда-то позже эта цель перемещается, переименовывается или удаляется, символическая ссылка не обновляется или удаляется автоматически, но продолжает существовать и по-прежнему указывает на старую цель, теперь несуществующее местоположение или файл. Символические ссылки, указывающие на перемещенные или несуществующие цели, иногда называют сломанными , потерянными , мертвыми или зависшими .
Символические ссылки отличаются от жестких ссылок. Жесткие ссылки не связывают пути в разных томах или файловых системах, тогда как символические ссылки могут указывать на любой файл или каталог независимо от томов, на которых находятся ссылка и цель. Жесткие ссылки всегда относятся к существующему файлу, тогда как символические ссылки могут содержать произвольный путь, который ни на что не указывает.
Символьные ссылки работают прозрачно для многих операций: программы, которые читают или записывают файлы, названные символьной ссылкой, будут вести себя так, как если бы они работали непосредственно с целевым файлом. Однако они имеют эффект изменения иерархической файловой системы с дерева на ориентированный граф, что может иметь последствия для таких простых операций, как определение текущего каталога процесса. Даже стандарт Unix для перехода к родительскому каталогу каталога больше не работает надежно перед лицом символических ссылок. Некоторые оболочки эвристически пытаются поддержать иллюзию древовидной иерархии, но когда они это делают, это заставляет их выдавать разные результаты от других программ, которые манипулируют именами путей без такой эвристики, полагаясь вместо этого на операционную систему.
Программы, которым необходимо специально обрабатывать символические ссылки (например, оболочки и утилиты резервного копирования), таким образом, должны идентифицировать их и манипулировать ими напрямую.
Некоторые дистрибутивы Unix, а также Linux широко используют символические ссылки, чтобы изменить порядок иерархии файловой системы . Это достигается с помощью нескольких механизмов, таких как вариантные контекстно-зависимые символические ссылки. Это дает возможность создать более интуитивно понятное или ориентированное на приложение дерево каталогов и реорганизовать систему без изменения основного набора системных функций и утилит.
Симлинки против псевдонимов в macOS
Если вы когда-либо создавали псевдонимы в macOS, вы заметите, что они ведут себя почти как символические ссылки. Оба типа ссылок ссылаются на путь к связанному файлу или папке.
Разница в том, что псевдоним также помечает связанный объект с идентификатором, называемым inode (индексный узел). Этот идентификатор уникален для объекта и следует за ним по всей файловой системе.
Вот почему псевдоним будет работать нормально, даже если вы переместите его цель в другое место. Попробуйте это с символической ссылкой, и вы столкнетесь с ошибкой. (Вы можете без проблем перемещать псевдоним и символическую ссылку, если только вы не имеете дело с файлами, защищенными системой.)
Конечно, оба типа ярлыков окажутся бесполезными, если вы удалите исходный файл или переименуете любую из папок выше в иерархии.
Не можете определить разницу между псевдонимом и символической ссылкой, поскольку вы удалили тег псевдонима из имени файла псевдонима?
Откройте инспектор файлов или панель «Информация» для каждого ярлыка и посмотрите размер файла в разделе «Общие». Если это говорит (ноль байтов на диске), вы имеете дело с символической ссылкой.
Символьные ссылки (в текущей папке) также проявятся при использовании этой команды терминала:
ls -la
Команда работает и в Linux, и вы увидите символическую ссылку, указывающую на местоположение исходного объекта.
Симлинки лучше, чем ярлыки
Поначалу символические ссылки могут показаться запутанными, но если вы потратите время на их понимание, вы поймете, что в конце концов их довольно просто использовать!
Жесткие и символические ссылки в Windows
Используя жёсткие ссылки файлов и каталогов, можно иметь несколько различных имён файлов или каталогов, ссылающихся на одни и те же данные. В windows механизм работает в файловой системе NTFS. Статья о том, как сделать такие ссылки в windows.
Возможно вы сталикивались со следующими задачами:
- Установить приложение или игру на HDD диск, а часть перенести на SSD.
- Перетащить данные приложения, без правки конфигурации. (пример ниже для SQL Server)
- Приложение/данные не влазят на один диск, а на другом диске как раз есть свободное место под оставшуюся часть.
Всё это можно решить используя ссылки на файлы и каталоги. Например, начиная с Windows Vista в винде отсутствует каталог «Documents and Settings» а операционная система на него ссылается из папки «Users» для совместимости с приложениями написанными для Windows XP.
Создание символической ссылки
Для создание ссылки используется команда mklink (из командной строки, кэп).mklinkСоздает символьную ссылку. MKLINK [ | | ] Ссылка Назначение /D Создает символьную ссылку на каталог.
По умолчанию создается символьная ссылка на файл. /H Создает жесткую связь вместо символьной ссылки. /J Создает соединение для каталога. Ссылка Указывает имя новой символьной ссылки.
Назначение Указывает путь (относительный или абсолютный), на который ссылается новая ссылка.
Мне недавно хотелось удалить папку кеша обновлений Microsoft SQL Server, чтобы освободить 2 Гб на системном SSD диске. Вместо удаления я перенес данные на другой диск (D:).
Cоздал символьную ссылку и, вуаля, место освобождено, а SQL Server думает, что данные на прежнем на месте.
C:\>mklink /D «c:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\Update Cache» «d:\distr\Sql Server\Update Cache» Символическая ссылка создана для c:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\Update Cache d:\distr\Sql Server\Update Cache
Существуют инструменты для создание ссылок через графический интерфейс, например Link Shell Extension или NTFS Link , также их можно легко сделать в Far’е по Alt+F6
Отличия жестких ссылок от символических ссылок и связей
Материал из справки Far Manager.
На разделах NTFS можно создавать жёсткие ссылки (HardLink) для файлов, связи (Junction) для папок и символические ссылки (SymLink) для файлов и папок с помощью команды Alt-F6.
Жёсткие ссылки
Жёсткая ссылка (HardLink) — это просто ещё одна запись в папке для данного файла.
Когда создаётся жёсткая ссылка, сам файл не копируется физически, а только появляется под ещё одним именем или в ещё одном месте, а его старые имя и местонахождение остаются нетронутыми.
С этого момента жёсткая ссылка неотличима от первоначальной записи в папке.
Единственное отличие — то, что для жёсткой ссылка не создаётся короткое имя файла, поэтому из ДОС-программ она не видна.
При удалении файла он не удаляется физически до тех пор, пока все жёсткие ссылки, указывающие на него, не будут удалены. Порядок их удаления значения не имеет.
При удалении жёсткой ссылки в корзину количество ссылок у файла сохраняется.
FAR умеет создавать жёсткие ссылки, отображать их количество для каждого файла в отдельной колонке (по умолчанию это последняя колонка в 9-м режиме панелей), а также сортировать файлы по количеству жёстких ссылок.
Создавать жёсткие ссылки можно только на том же диске, на котором расположен исходный файл.
Связи
Эта технология позволяет отображать любые локальные папки на любые другие локальные папки.
Например, если папка D:\SYMLINK указывает на C:\WINNT\SYSTEM32 в качестве своей цели, то программа, обращающаяся к D:\SYMLINK\DRIVERS, будет на самом деле обращаться к C:\WINNT\SYSTEM32\DRIVERS.
В отличие от жёстких ссылок, связи папок не обязательно должны располагаться на том же диске.
В Windows 2000 нельзя напрямую создать связь, ссылающуюся на папку CD-ROM, но это ограничение можно обойти, смонтировав CD-ROM диск на папку NTFS-раздела.
Символические ссылки
Символические ссылки (SymLink) на NTFS поддерживаются, начиная с Windows Vista (NT 6.0). Они представляют собой улучшенный вариант связей каталогов — символические ссылки могут указывать как на папки, так и на файлы, как на локальные, так и на сетевые, при этом поддерживаются относительные пути.
Как создать символические ссылки
Вы можете создавать программные ссылки, используя терминал или командную строку. Мы перейдем к инструментам «укажи и щелкни» позже, если тебе неудобно возиться с терминалом.
В Linux и MacOS
В Linux вы можете создать символическую ссылку для файла или папки с помощью этой команды терминала:
ln -s [/path/to/file] [/path/to/symlink]
Эта же команда работает и в macOS, поскольку macOS — это операционная система на основе UNIX, такая как Linux.
Смотрите скриншот выше для примера команды.
Встроенный файловый менеджер в определенных средах рабочего стола Linux позволяет создавать программную ссылку через контекстное меню, поэтому вы можете проверить, есть ли в вашем приложении для просмотра файлов эта опция.
У популярного файлового менеджера Nautilus, поставляемого в комплекте с различными дистрибутивами Linux, была опция меню Make Link, которая теперь исчезла. Но вы все равно можете создать символическую ссылку в Nautilus, удерживая клавиши Ctrl и Shift и перетащив целевой файл в то место, где вы хотите, чтобы символическая ссылка отображалась. Не волнуйтесь, исходный файл останется на месте.
На винде
Вам нужно открыть окно командной строки от имени администратора и ввести следующую команду, чтобы создать символическую ссылку:
mklink [/path/to/symlink] [/path/to/file]
Для символических ссылок на каталоги вы должны немного настроить команду, используя флаг /d:
mklink /d [/path/to/symlink] [/path/to/file]
Если вы не хотите работать с командной строкой, вы можете использовать графический инструмент под названием Link Shell Extension для создания символических ссылок. Это одно из лучших расширений Windows File Explorer для управления файлами.
Примечание. Система не будет препятствовать созданию символической ссылки внутри символической ссылки, но лучше избегать этого. В противном случае вы создадите бесконечный цикл, который может вызвать проблемы для общесистемных сервисов, таких как антивирусные сканеры.
Обзор
Символьная ссылка содержит текстовую строку, которая автоматически интерпретируется операционной системой как путь к другому файлу или каталогу. Этот другой файл или каталог называется «целью». Символьная ссылка — это второй файл, который существует независимо от своей цели. Если символическая ссылка удаляется, ее цель остается неизменной. Если символическая ссылка указывает на цель, и когда-то позже эта цель перемещается, переименовывается или удаляется, символическая ссылка не обновляется или удаляется автоматически, но продолжает существовать и по-прежнему указывает на старую цель, теперь несуществующее местоположение или файл. Символические ссылки, указывающие на перемещенные или несуществующие цели, иногда называют сломанными , потерянными , мертвыми или зависшими .
Символические ссылки отличаются от жестких ссылок. Жесткие ссылки не связывают пути в разных томах или файловых системах, тогда как символические ссылки могут указывать на любой файл или каталог независимо от томов, на которых находится ссылка и цель. Жесткие ссылки всегда относятся к существующему файлу, тогда как символические ссылки могут содержать произвольный путь, который ни на что не указывает.
Символьные ссылки работают прозрачно для многих операций: программы, которые читают или записывают файлы, названные символьной ссылкой, будут вести себя так, как если бы они работали непосредственно с целевым файлом. Однако они имеют эффект изменения иерархической файловой системы с дерева на ориентированный граф, что может иметь последствия для таких простых операций, как определение текущего каталога процесса. Даже стандарт Unix для перехода к родительскому каталогу каталога больше не работает надежно перед лицом символических ссылок. Некоторые оболочки эвристически пытаются поддержать иллюзию древовидной иерархии, но когда они это делают, это заставляет их выдавать разные результаты от других программ, которые манипулируют именами путей без такой эвристики, полагаясь вместо этого на операционную систему. Таким образом, программы, которым необходимо обрабатывать символические ссылки специально (например, оболочки и утилиты резервного копирования), должны идентифицировать их и управлять ими напрямую.
Некоторые дистрибутивы Unix, а также Linux широко используют символические ссылки, чтобы изменить порядок иерархии файловой системы . Это достигается с помощью нескольких механизмов, таких как вариантные контекстно-зависимые символические ссылки. Это дает возможность создать более интуитивно понятное или ориентированное на приложение дерево каталогов и реорганизовать систему без изменения основного набора системных функций и утилит.
Cравнение жёстких и символических ссылок
Покажем, как работают жёсткие и символические ссылки и различия в их поведении на примере. Для этого запустим консоль (терминал) Mac OS X или другой *nix системы. Здесь будет использоваться терминал Mac OS X, однако, используемые команды должны работать в любой *nix системе (Linux, AIX и т.д.).
Для начала, создадим файл file.a а содержимым «aaa»:
Shell
echo «aaa» > file.a
1 | echo»aaa»>file.a |
Затем, создадим на него две ссылки: символическую и жёсткую:
Shell
ln -s file.a link1
ln file.a link2
1 |
ln-sfile.alink1 lnfile.alink2 |
Теперь попробуем прочитать содержимое файла по обеим ссылкам:
Shell
cat link1
aaa
cat link2
aaa
1 |
catlink1 aaa catlink2 aaa |
Обе ссылки работают нормально.
А сейчас, удалим оригинальный файл и попробуем прочитать по ссылкам его содержимое ещё раз.
Shell
rm file.a
cat link1
cat: link1: No such file or directory
cat link2
aaa
1 |
rmfile.a catlink1 catlink1No such fileordirectory catlink2 aaa |
Первая (символическая) ссылка оказывается битой, а по второй (жёсткой) ссылке по-прежнему находится файл с содержимым «aaa»:
Создадим новый файл с тем же именем file.a, но с другим содержимым:
Shell
echo «bbb» > file.a
1 | echo»bbb»>file.a |
А теперь снова попробуем прочитать его содержимое по ссылкам.
Shell
cat link1
bbb
cat link2
aaa
1 |
catlink1 bbb catlink2 aaa |
Первая (символическая) ссылка снова работает, и по ней находится новый файл, с содержимым «bbb». А вот вторая (жёсткая) ссылка всё ещё указывает на старый файл с содержимым «aaa».
В графическом интерфейсе Mac OS X папка, где мы проводили этот эксперимент, будет выглядеть следующим образом:
Система называет символьную ссылку «псевдонимом» файла. А вот жёсткую ссылку она воспринимает так же, как и обычный файл.
My CurrentWork example
Back in the Windows 2000 days, I developed my CurrentWork folder-management technique to reduce the amount of time I spent navigating my detailed folder organizational structure. To do so, I used a command-line tool called Linkd.exe from the Windows 2000 Resource Kit. However, because the MKLink tool comes with Windows 10, anyone can use it.
To implement my technique in Windows 10, I use MKLink to generate a symbolic link that creates the C:\ CurrentWork folder and redirects it to a folder deeply nested in the folder structure I use to keep my work organized. For example, the target folder could have the path:
C:\Users\Greg\Documents\1) My Work\1-Writing\1) TechRepublic\1) Articles\2017\10) October 17\10-2
As I finish an article, I remove that symbolic link and create a new one for the next article. Of course, this means that the target folder is always changing as I move from week to week. However, once I create the new symbolic link, the only folder name I have to navigate to when opening, saving, or copying files related to the assignment is the C:\ CurrentWork folder. This has saved me an immeasurable amount of time and frustration.
For example, before writing this article, I used the command:
Mklink /J C:\CurrentWork "C:\Users\Greg\Documents\1) My Work\1-Writing\1) TechRepublic\1) Articles\2017\10) October 17\10-2"
Since I’m working on the command line and the target path contains long names with spaces, I have to enclose the target path in double quotes. But even though the path is long, while I was working on this article, the only folder I had to remember was CurrentWork.
Microsoft Weekly Newsletter
Be your company’s Microsoft insider by reading these Windows and Office tips, tricks, and cheat sheets.
Delivered Mondays and Wednesdays
Sign up today
Ln Command in Linux (Create Symbolic Links)
11 Января 2020
|
Терминал
Символическая ссылка, также известная как символическая ссылка или программная ссылка, представляет собой специальный тип файла, который указывает на другой файл или каталог.
В системах Linux / UNIX есть два типа ссылок:
- Hard links . Вы можете придумать жесткую ссылку как дополнительное имя для существующего файла. Жесткие ссылки связывают два или более имен файлов с одним и тем же индексом . Вы можете создать одну или несколько жестких ссылок для одного файла. Жесткие ссылки не могут быть созданы для каталогов и файлов в другой файловой системе или разделе.
- Soft links. Это что-то вроде ярлыка в Windows. Это косвенный указатель на файл или каталог. В отличие от жесткой ссылки, символическая ссылка может указывать на файл или каталог в другой файловой системе или разделе.
Как использовать команду
утилита командной строки для создания ссылок между файлами По умолчанию команда создает жесткие ссылки. Чтобы создать символическую ссылку, используйте параметр ( ).
Синтаксис команды для создания символических ссылок выглядит следующим образом :
- Если оба и приведены, создаст ссылку из файла , указанного в качестве первого аргумента ( ) в файл , указанный в качестве второго аргумента ( ).
- Если в качестве аргумента указан только один файл или второй аргумент является точкой ( ), будет создана ссылка на этот файл в текущем рабочем каталоге . Имя символической ссылки будет таким же, как и имя файла, на который она указывает.
По умолчанию в случае успеха не выводит никаких данных и возвращает ноль.
Создание символической ссылки на файл
Чтобы создать символическую ссылку на данный файл, откройте свой терминал и введите:
Замените на имя существующего файла, для которого вы хотите создать символическую ссылку, и на имя символической ссылки.
Параметр является необязательным. Если вы не укажете символическую ссылку, команда создаст новую ссылку в вашем текущем каталоге:
В следующем примере мы создаем символическую ссылку с именем файла :
Чтобы убедиться, что символическая ссылка была успешно создана, используйте команду:
Вывод будет выглядеть примерно так:
Символ представляет собой флаг типа файла, который представляет символическую ссылку. В символ показан файл символическая ссылка указывает.
Команда для создания символической ссылки на каталог такая же, как и при создании символической ссылки на файл. Укажите имя каталога в качестве первого параметра и символическую ссылку в качестве второго параметра.
Например, если вы хотите создать символическую ссылку из каталога в каталог, вы должны выполнить:
Если вы попытаетесь создать символическую ссылку, которая уже существует , команда выведет сообщение об ошибке.
Чтобы перезаписать путь назначения символической ссылки, используйте параметр ( ).
Чтобы удалить символические ссылки, используйте команду или .
Синтаксис очень прост:
Удаление символической ссылки с помощью команды аналогично удалению файла:
Независимо от того, какую команду вы используете, при удалении символической ссылки не добавляйте косую черту в конце ее имени.
Если вы удалите или переместите исходный файл в другое место, символический файл останется висящим (сломанным) и должен быть удален.
Для получения дополнительной информации о команде посетите страницу руководства ln или введите свой терминал.
Что такое символические ссылки
Символические ссылки – это, по сути, расширенные ярлыки. Создайте символическую ссылку на отдельный файл или папку, и эта ссылка будет выглядеть так же, как файл или папка для Windows, хотя это только ссылка, указывающая на файл или папку.
Например, предположим, что у вас есть программа, которая использует файлы в папке C:\Program. А Вам хотелось бы сохранить этот каталог в D:\Refuse, но программа требует, чтобы её файлы были в C:\Program. Вы можете перенести исходный каталог из C:\Program в D:\Refuse, а затем создать символическую ссылку C:\Program, указав на D:\Refuse. Когда вы перезапустите программу, она попытается получить доступ к своему каталогу в C:\Program. Windows автоматически перенаправит её на D:\Refuse, и всё будет работать так, как если бы оно было в C:\Program.
Этот трюк можно использовать для всех целей, включая синхронизацию любой папки с такими программами, как Dropbox, Google Drive и OneDrive.
Существует два типа символических ссылок: жесткая и мягкая. Мягкие символические ссылки работают аналогично стандартным ярлыкам. Когда вы открываете мягкую ссылку на папку, вы будете перенаправлены в папку, где хранятся файлы. Однако, жесткая ссылка заставляет его выглядеть так, как будто файл или папка действительно существуют в местоположении символической ссылки, и ваши приложения не будут знать о подмене. В большинстве ситуаций жесткие символические ссылки более полезны.
Обратите внимание, что Windows фактически не использует термины «жесткая ссылка» и «мягкая ссылка». Вместо этого используются термины «жесткая ссылка» и «символическая ссылка»
В документации Windows «символическая ссылка» – это то же самое, что «мягкая ссылка». Тем не менее, mklink-команда может создавать как жесткие ссылки, так и софт-ссылки (известные как «символические ссылки» в Windows).
Setting Up Symlinks on Windows 10 Using Command Prompt
On Windows 10, you can set up symlinks through the Command Prompt using the mklink command.
First up, launch the Command Prompt by typing cmd in the Start menu search bar, then right-click the Best Match and select Run as administrator.
You can use the mklink command to create hard and soft links. To get an overview of the mklink utility, type mklink and press Enter. This will give you an overview of the mklink utility by listing the command syntax and the different options associated with it.
Now, let’s create a soft link to a text file using mklink.
Type mklink link target, replacing “link” with the address of the soft link that you want to create, and replace “target” with the address of the original file. The following image shows how to create a soft link named “softlink.txt” that references a file “original.txt.”
If you want to create a soft link to a folder or directory, use the format mklink /D link target. The “/D” option creates a symlink to a directory.
Creating a hard link also follows the same process. Use the same mklink link target command structure but with the “/H” option.
The following image shows how to create a hard link for the fictional “hardlink.txt” file, pointing to the same storage location as “original.txt.”
If you want to create a hard link to a folder or a directory, use the “/J” option instead of the “/H” option.
Резюме [ править ]
Свойство / действие | Символическая ссылка | Соединение | Жесткая ссылка | |
---|---|---|---|---|
Когда ссылка удалена | Цель остается неизменной | Мишень удалена (кроме случаев использования специальных инструментов) | Счетчик ссылок уменьшается; когда он достигает 0, цель удаляется | |
Когда цель перемещается | Символическая ссылка становится недействительной | Соединение становится недействительным | Жесткая ссылка остается действительной | |
Относительный путь | Разрешается | Не разрешено (при сохранении становится абсолютным путем) | N / A | |
Пересечение границ файловой системы | Поддерживается | Поддерживается | Не поддерживается (цель должна быть в той же файловой системе) | |
Окна | Для файлов | Windows Vista и выше (требуются права администратора) | Нет | да |
Для папок | да | Нет | ||
Unix | Для файлов | да | N / A | да |
Для справочников | да | N / A | Частично |
Способ №1. Изменить папку хранения копий через командную строку
У операционной системы Windows есть замечательная штука:
Именно они помогут нам в переносе папки хранения резервных копий iTunes.
Если вкратце, то это почти как «ярлык», только одна папка будет ссылаться на другую. А программа (iTunes) при этом ничего не заподозрит.
Важно! Перед началом всех манипуляций, необходимо включить «отображение скрытых файлов и папок» в Windows:
- Windows 7. Откройте любую папку, в левом верхнем углу будет надпись «Упорядочить». Нажимаете и ищете пункт «Параметры папок и поиска». Переходим на вкладку «Вид» и практически в самом низу нажимаем «Показывать скрытые файлы, папки и диски».
- Windows 8 и 10. Откройте любую папку и в самом верху перейдите на вкладку «Вид». Поставьте галочку напротив «Скрытые элементы».
Готово? Вот теперь точно поехали. Итак, что нужно сделать:
- Открыть место хранения резервной копии iTunes на компьютере (C:\Users\Здесь ваше имя пользователя\AppData\Roaming\Apple Computer\MobileSync) и найти там папку Backup.
- На всякий случай, скопировать папку Backup в надежное место (вдруг, что-то пойдёт не так?!).
- Обязательно! Удалить папку Backup из C:\Users\Здесь ваше имя пользователя\AppData\Roaming\Apple Computer\MobileSync.
- Обязательно! Создать ту папку, куда вы хотите перенести копии (в данном примере я создал папку D:\iTunes\Backup\).
- Запустите командную строку (CMD.EXE) с правами администратора. Как это сделать? Нажимаем «Пуск — Найти программы и файлы — CMD.EXE». После того, как программа будет найдена, нажимаем на нее правой кнопкой мыши — «Запуск от имени администратора».
- Открывается страшное черное окно. Не боимся!
- Нам нужно ввести команду вида MKLINK /D «Старое место хранения резервной копии» «Новое место хранения резервной копии».
- В моё случае, это выглядит вот так MKLINK /D «C:\Users\Здесь ваше имя пользователя\AppData\Roaming\Apple Computer\MobileSync\Backup» D:\iTunes\Backup\
- Нажать Enter.
Всё! После этого, резервные копии iTunes будут храниться по адресу D:\iTunes\Backup\
Несколько важных уточнений:
- Не забывайте указывать своё имя пользователя вместо «Здесь ваше имя пользователя».
- Если в пути названий файлов и папок есть пробелы (как например, в C:\Users\Здесь ваше имя пользователя\AppData\Roaming\Apple Computer\MobileSync\Backup), то весь путь нужно заключить в кавычки.
- Ошибка «Невозможно создать файл, так как он уже существует» возникает из-за того, что вы не удалили изначальную папку хранения резервных копий (C:\Users\Здесь ваше имя пользователя\AppData\Roaming\Apple Computer\MobileSync\Backup).
- Ошибка «Недостаточно привилегий для выполнений этой операции» возникает из-за того, что CMD.EXE была запущена без прав администратора.
- Обновлено (спасибо тем людям, кто написал об этом в комментариях)! Используйте ту форму кавычек, которая указана на скриншотах («» — такие НЕ подходят).
Вот такая вот история. Сложно? Есть немного. Но главное — это работает!