реклама

Като потребител на компютър, ако трябва да дефинирате пряк път, вероятно ще кажете, че това е указател към файл, папка или приложение, нали? Това е правилното.

Но това кратко определение изобщо не разказва цялата история. Това означава, че всички преки пътища са еднакви, когато не са. Имате почти шепа видове преки пътища. Ще се съсредоточим върху символната връзка по-долу. Нарича се също символна връзка или мека връзка и ще използваме термините взаимозаменяемо.

Нека да видим какво е символна връзка, как да създадете символна връзка в Linux, както и macOS и Windows, защо имате нужда от този специален тип пряк път и други.

Какво е Symlink?

Вярно е, че символната връзка е файл с пряк път. Но той е различен от стандартния пряк път, който, например, инсталаторът на програма е поставил на вашия работен плот на Windows, за да улесни стартирането на програмата.

Разбира се, щракването върху двата типа пряк път отваря свързания обект, но това, което се случва под капака, е различно и в двата случая, както ще видим по-нататък.

instagram viewer

Докато стандартен пряк път сочи към определен обект, символната връзка го прави сякаш свързаният обект всъщност е там. Вашият компютър и приложенията на него ще четат символната връзка като самия целеви обект.

В macOS получавате доказателство за това под формата на "файл съществува" съобщение, което се появява, когато се опитате да създадете символна връзка на същото място като оригиналния обект. Дори ако се опитате да преместите символната връзка на същото място, след като я създадете другаде, тя се преименува като копие.

Файл съществува съобщение, докато създавате символна връзка в Terminal на macOS

Символни връзки срещу Стандартни преки пътища

Да кажем, че на твърдия ви диск имате определена папка, която искате да синхронизирате с Dropbox, без да премествате самата папка в Dropbox.

В този случай създаването на пряк път към папката в Dropbox е безсмислено. Пътният път ще работи на устройството, на което сте го създали. Dropbox също ще синхронизира прекия път. Но синхронизираният файл с пряк път е невалиден, когато имате достъп до него от друг компютър, т.е. не води до никъде.

Сега, ако този пряк път беше символна връзка, нямаше да се сблъскате с този проблем. Това е така, защото Dropbox чете символната връзка като действителната папка и в резултат синхронизира данните от тази папка. След това можете да получите достъп до папката и нейното съдържание на всички ваши устройства с активирана синхронизация на Dropbox, въпреки че оригиналната папка не е част от вашия Dropbox.

Имайте предвид, че независимо дали става въпрос за обикновен пряк път или символна връзка, изтриването му няма да повлияе на оригиналния обект по никакъв начин.

Защо имате нужда от символни връзки?

Като цяло е добре да създадете символни връзки вместо преки пътища, когато искате:

  • Достъп до файл от множество места, без да създавате копия и без да използвате много дисково пространство. (Символните връзки са само с няколко байта.)
  • Поддържайте различни версии на файл, като същевременно гарантирате, че всички указатели към него винаги водят до най-новата или актуална версия. (Това работи, защото символната връзка остава активна дори когато замените целевия файл с друг файл със същото име.)
  • Преместете данни от вашия C: \ диск към, да речем, вторичен твърд диск, без да нарушавате функциите на системата или приложението, които се нуждаят от тези данни, за да бъдат на C: \ устройството.

Вероятно ще попаднете на много други случаи на употреба за символни връзки.

Как да създадете връзки

Можете да създавате меки връзки с помощта на терминала или командния ред. Ще стигнем по-късно до инструментите за точка и щракване, ако се чувствате неприятно с терминала.

На Linux и macOS

Командна команда за създаване на символна връзка в macOS

В Linux можете да създадете символна връзка за файл или папка с тази терминална команда:

ln -s [/ path / to / file] [/ path / to / symlink]

Същата команда работи и в macOS, тъй като macOS е базирана на UNIX операционна система като Linux.

Вижте екрана по-горе за примерна команда.

Местният файлов мениджър в определени среди на работния плот на Linux ви позволява да създавате мека връзка чрез менюто с десния бутон, така че може да искате да проверите дали приложението ви за файлов преглед има тази опция.

Популярният Nautilus файлов мениджър, който се предлага в комплект с различни Linux дистрибуции, имаше Направете връзка опция от менюто, която вече е изчезнала. Но все пак можете да създадете символна връзка в Nautilus, като задържите натиснат Ctrl и изместване клавиши и плъзгане на целевия файл до мястото, където искате да се покаже символната връзка. Не се притеснявайте, оригиналният файл ще остане поставен.

В Windows

Ще трябва да отворите прозорец на командния ред като администратор и да въведете следната команда, за да създадете символична връзка:

mklink [/ path / to / symlink] [/ path / to / file]

За символични връзки към директории, трябва да настроите командата малко с помощта на флаг:

mklink / d [/ path / to / symlink] [/ path / to / file]

Ако не искате да работите с командния ред, можете да използвате графичен инструмент, наречен Link Shell Extension за създаване на символни връзки. Той е един от най-добрите разширения на File File Explorer за управление на файлове.

Забележка: Системата няма да ви попречи да създадете символична връзка в рамките на символична връзка, но е най-добре да избягвате това. В противен случай ще създадете безкраен цикъл, който може да причини проблеми за услуги в цялата система, като антивирусни скенери.

Символни връзки срещу Псевдоними на macOS

Symlink и псевдоним за файл в Finder на macOS

Ако някога сте създавали псевдоними на macOS, ще забележите, че те се държат много като символни връзки. И двата типа пряк път препращат към името на пътя на свързания файл или папка.

Разликата е, че псевдонимът също маркира свързания обект с идентификатор, наречен на възела (индексен възел). Този идентификатор е уникален за обекта и го следва около файловата система.

Ето защо псевдонимът ще работи добре, дори ако преместите целта му на друго място. Опитайте това със символна връзка и ще срещнете грешка. (Можете да преместите псевдонима и самата връзка без никакви проблеми, освен ако не се занимавате със файлове, защитени от системата.)

Разбира се, и двата типа преки пътища ще се окажат безполезни, ако изтриете оригиналния файл или преименувате някоя от папките по-нагоре в йерархията.

Не можете да разберете разликата между псевдоним и символна връзка, защото сте премахнали псевдоним маркер от името на файла за псевдоним?

Отворете инспектора на файловете или Получете информация панел за всеки пряк път и погледнете размера на файла под Общ секция. Ако пише (нула байта на диска), имате работа със символна връзка.

Символните връзки (в текущата папка) също ще се разкрият, когато използвате тази терминална команда:

лс -ла

Командата работи и в Linux и ще видите символичната връзка към местоположението на оригиналния обект.

Символните връзки са по-добри от преките пътища

Символичните връзки може да изглежда объркващо първоначално, но ако отделите време да ги разберете, ще разберете, че те са доста лесни за използване в края на краищата!

Можете дори да създавате символични връзки на Android с Termux, приложение, което ви позволява да използвате командния ред на Linux. А знаехте ли, че можете споделяйте по-лесно файлове в Google Drive със символични връзки Направете файловете в Google Drive по-лесни за споделяне със символни връзкиИскате ли да направите копия на файл, който всички остават синхронизирани, когато са направени промени в главния файл? Google Drive го прави лесно. Прочетете още ?

Akshata се обучи на ръчно тестване, анимация и UX дизайн, преди да се фокусира върху технологиите и писането. Това обедини две от любимите й занимания - осмисляне на системите и опростяване на жаргона. В MakeUseOf Akshata пише за това как да направите най-доброто от вашите Apple устройства.