Символические ссылки похожи на псевдонимы, за исключением того, что они работают в каждом приложении на вашем Mac, в том числе в терминале. Они особенно полезны, когда приложения не хотят работать правильно с обычным псевдонимом. На macOS вы создаете символические ссылки в терминале, используя
ln
полезность. Вы не можете создать их в Finder. Символические ссылки в macOS работают аналогично символическим ссылкам в Linux, потому что обе являются Unix-подобными операционными системами. Символические ссылки в Windows работают несколько иначе.
Что такое символические ссылки?
В macOS вы можете создавать регулярные псевдонимы в Finder. Псевдонимы указывают на файлы или папки, но они больше похожи на простые ярлыки.
Символическая ссылка - это более продвинутый тип псевдонима, который работает в каждом приложении в системе, включая утилиты командной строки в терминале. Создаваемая вами символическая ссылка появляется в приложениях так же, как исходный файл или папка, на которую она указывает, хотя это только ссылка.
Например, предположим, что у вас есть программа, которая нуждается в ее файлах, хранящихся в / Library / Program. Но вы хотите хранить эти файлы где-то еще в системе, например, в / Volumes / Program. Вы можете переместить каталог программы в / Volumes / Program, а затем создать символическую ссылку в / Library / Program, указывающую на / Volumes / Program. Программа попытается получить доступ к своей папке в / Library / Program, а операционная система перенаправит ее в / Volumes / Program.
Это полностью прозрачно для операционной системы MacOS и приложений, которые вы используете. Если вы перейдете в каталог / Library / Program в Finder или в любом другом приложении, он будет содержать файлы внутри / Volumes / Program.
В дополнение к символическим ссылкам, которые иногда называют «мягкими ссылками», вы можете вместо этого создавать «жесткие ссылки». Символьная или мягкая ссылка указывает на путь в файловой системе. Например, предположим, что у вас есть символическая или мягкая ссылка из / Users / example, указывающая на / opt / example. Если вы переместите файл в / opt / example, ссылка в / Users / example будет нарушена. Однако, если вы создадите жесткую ссылку, она фактически укажет на базовый индексный дескриптор файловой системы. Итак, если вы создали жесткую ссылку из / Users / example, указывающую на / opt / example, а затем переместили / opt / example, ссылка в / Users / example все равно указала бы на файл, независимо от того, куда вы его переместили. Жесткая ссылка работает на более низком уровне.
Обычно вы должны использовать стандартные символические ссылки (soft links), если вы не уверены, что использовать. У жестких ссылок есть некоторые ограничения. Например, вы не можете создать жесткую ссылку на один раздел или диск, указывающий на местоположение на другом разделе или диске, в то время как вы можете сделать это со стандартной символической ссылкой.
Создание символических ссылок с помощью команды ln
Чтобы создать символическую ссылку на Mac, вам необходимо использовать приложение «Терминал».
Нажмите Command + Space, введите «Terminal», а затем нажмите «Enter», чтобы открыть терминал из поиска Spotlight. Перейдите в Finder> Applications> Utilities> Terminal, чтобы запустить ярлык терминала.
ln
команды в следующей форме. Вы можете указать путь к каталогу или файлу:
ln -s /path/to/original /path/to/link
-s
здесь команда ln создает символическую ссылку. Если вы хотите создать жесткую ссылку, вы опустите
-s
Большую часть времени символические ссылки - лучший выбор, поэтому не создавайте жесткую ссылку, если у вас нет конкретной причины для этого.
Вот пример. Предположим, вы хотели создать символическую ссылку в папке «Рабочий стол», которая указывает на папку «Загрузки». Вы должны выполнить следующую команду:
ln -s /Users/name/Downloads /Users/name/Desktop
ln -s '/Users/name/My Files' '/Users/name/Desktop/My Link'
Чтобы облегчить ввод файлов и путей каталога в терминал, вы можете перетащить папку из окна Finder в терминал, и терминал автоматически заполнит путь к этой папке. Он также будет включать путь в кавычки, если это необходимо.
Если вам нужно создать символическую ссылку в системном расположении, к которой у вашей учетной записи пользователя нет доступа, вам нужно будет префикс
ln
команды с
sudo
команда, вот так:
sudo ln -s /path/to/original /path/to/link
Имейте в виду, что в современных версиях macOS вам не разрешается писать в определенные места системы, не изменяя параметр микропрограммы низкого уровня из-за функции защиты целостности системы. Вы можете отключить эту функцию, но мы рекомендуем, чтобы вы этого не сделали.
Как удалить символические ссылки
Вы можете удалить символические ссылки, как и любой другой тип файла.Например, чтобы удалить символическую ссылку в Finder, нажмите Ctrl + клик или щелкните ее правой кнопкой мыши и выберите «Переместить в корзину».
rm
команда, которая является той же командой, которую вы использовали бы для удаления других файлов. Запустите команду и укажите путь к ссылке, которую вы хотите удалить:
rm /path/to/link
Как создать символические ссылки с помощью графического инструмента
Finder может создавать псевдонимы, но они не будут работать как символические ссылки. Псевдонимы похожи на ярлыки на рабочем столе Windows. Они не рассматриваются как истинные, прозрачные символические ссылки.
Чтобы иметь возможность создавать символические ссылки в Finder, вам понадобится сторонняя утилита или скрипт. Мы рекомендуем использовать приложение SymbolicLinker с открытым исходным кодом для быстрого добавления опции «Услуги»> «Сделать символическую ссылку» прямо в контекстное меню Finder.
Нажмите на добавленную вами опцию и создаст символическую ссылку на выбранный файл или папку в текущем каталоге. Вы можете переименовать его и перемещать туда, где хотите.