Как да създадете символни връзки чрез командата ln

В това ръководство ще ви покажа как да създавате и използвате символни връзки, като използвате командата ln.

Съществуват два вида връзки:

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

Какво е твърда връзка

Всеки файл във вашата файлова система се идентифицира с номер, наречен inode. През повечето време няма да ви е грижа за това, но значението на това се появява, когато искате да създадете твърда връзка.

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

Голямото нещо за твърдите връзки е, че те не поемат никакво физическо пространство на твърдия диск.

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

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

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

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

ln / път / към / файл / път / към / твърда връзка

Представете си, че сте имали снимка, наречена BrightonBeach, в папката за празнични снимки и искате да създадете връзка в папката за снимки на детето, която бихте използвали следната команда

ln /holidayphotos/BrightonBeach.jpg /kidsphotos/BrightonBeach.jpg

Можете да кажете колко файла се свързват със същия инод, като използвате командата ls както следва:

ls -lt

Изходът ще бъде нещо като -rw-r-r-- 1 username име на групата дата име на файл.

Първата част показва разрешенията на потребителя. Важният битов номер е след разрешенията и преди потребителското име.

Ако числото е 1, то е единственият файл, който сочи към определен inode (т.е. не е свързан). Ако числото е по-голямо от едно, тогава то е твърдо свързано с 2 или повече файла.

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

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

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

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

За да създадете символна връзка използвайте следния синтаксис:

ln -s / път / към / файл / път / към / връзка

Ако се притеснявате да презапишете съществуваща връзка, можете да използвате превключвателя -b както следва:

ln -s -b / път / към / файл / път / към / връзка

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

Ако даден файл вече съществува със същото име като символната връзка, ще получите грешка.

Можете да принудите връзката да презапише файла, като използвате следната команда:

ln -s -f / път / към / файл / път / към / връзка

Вероятно не искате да използвате превключвателя -f без превключвателя -b, тъй като ще загубите оригиналния файл.

Друга алтернатива е да получите съобщение, което ви пита дали искате да презапишете файл, ако вече съществува. Можете да направите това със следната команда:

ln -s -i / път / към / файл / път / към / връзка

Как да разберете дали даден файл е символична връзка?

Изпълнете следната команда ls:

ls -lt

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

намерени онлайн филми

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

Например, представете си, че имате връзка към / home / music / rock / alicecooper / heystoopid, наречена heystoopid

Можете да изпълните следната команда cd, за да отидете до тази папка, като използвате следната команда:

cd heystoopid

резюме

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

Това ръководство показва всичко, което трябва да знаете за символните връзки, но можете да проверите наръчника за командата ln за останалите ключове.