Какво е символна връзка (символна връзка)? Как да създадете такъв в Linux

Какво е символна връзка (символна връзка)? Как да създадете такъв в Linux

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





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





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





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

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



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

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





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

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





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

как да намеря парола за wifi android

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

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

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

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

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

В Linux и 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]

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

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

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

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

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

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

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

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

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

ls -la

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

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

Можете дори да създавате символични връзки на Android с Термукс , приложение, което ви позволява да използвате командния ред на Linux . Знаете ли, че можете да споделяте файлове от Google Диск по -лесно със символични връзки?

Дял Дял Туит електронна поща Как да получите достъп до вграденото ниво на балон на Google в Android

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

Прочетете Напред
Свързани теми
  • Linux
  • Обяснена технология
  • Терминал
  • Символична връзка
За автора Акшата Шанбхаг(404 статии са публикувани)

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

Още от Akshata Shanbhag

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!

Щракнете тук, за да се абонирате
Категория Linux