Soft (simbolic) Link vs Hard Link

Soft Link Vs Hard Link



Legăturile simbolice (numite și legături soft) și Legăturile rigide sunt o resursă pentru a accesa fișiere sau directoare din orice locație. Acest articol va descrie diferențele dintre legăturile simbolice și legăturile dure.

Legături dure

Linkurile hard nu sunt un fișier care conține calea către fișierul original, ci oglindesc copii ale fișierului original către care indică. Un fișier și legăturile sale rigide nu sunt asociate cu numele sau calea, ci cu inodul care stochează informații pe fișier, cum ar fi locația, data creării, permisiunile și alte atribute. Fiecare număr de inod este unic într-un sistem de fișiere, împiedicând legăturile dure să funcționeze între diferite partiții sau sisteme. Linkurile hard nu pot fi utilizate pentru a lega directoare.







Spre deosebire de link-urile soft, link-urile hard conțin informațiile la care se leagă, astfel încât, dacă fișierul original este eliminat, puteți accesa în continuare datele sale.



În toate sistemele Linux, atât legăturile dure cât și cele simbolice sunt create cu comanda ln . Pentru a începe, creați mai întâi un fișier numit LinuxHintFile și un director numit LinuxHintDirectory așa cum se arată în imaginea de mai jos:



atingereLinuxHintFile
rmkdir LinuxHintDirectory
eu sunt
rădăcină@LinuxHint:/Acasă/linuxhint#





Pentru a crea o legătură dură numită Link2LHFile la fișierul LinuxHintFile rulat în terminal:

lnLinuxHintFile Link2LHFile



După verificarea cu eu sunt vedem legătura pe care tocmai am creat-o, dacă tastați ls -i veți vedea inodurile fișierelor, puteți confirma că link-ul pe care tocmai l-am creat are același număr de inod decât fișierul original, tastați:

eu sunt -i

Așa cum am spus mai sus, nu putem folosi linkuri rigide pentru directoare și nici linkuri către alte volume sau sisteme de fișiere, vom conecta LinuxHintDirectory cu un link soft.

Puteți găsi legături dure în directorul de lucru executând:

găsi -tipf-linkuri+1

De asemenea, puteți găsi fișiere după inoduri, pentru această rulare:

găsi.-inum <InodeNumber>

După cum vedeți, a găsit atât fișierul original, cât și link-ul dur partajând același număr de inod.

Soft Link-uri

Spre deosebire de legăturile rigide, legăturile logice nu sunt copii ale fișierului original, ele conțin calea către fișierul original, din această cauză, dacă fișierul original este eliminat, legătura logică sau legătura simbolică va indica că niciun fișier nu va deveni un link rupt, sau un link orfan, ceea ce înseamnă că, dacă pierdeți fișierul sursă, dacă îl ștergeți sau îl mutați, linkul simbolic va pierde accesul la informații, în timp ce cu linkul hard informațiile rămân în ciuda eliminării fișierului sursă, deoarece este complet și exact copie a fișierului respectiv.

De asemenea, spre deosebire de legăturile dure, legăturile simbolice nu au același inod cu fișierul original, de aceea legătura simbolică poate traversa volume și sisteme de fișiere, în timp ce legăturile dure nu. Link-urile simbolice pot fi utilizate pentru a lega directoare, în timp ce nu există linkuri rigide.

Legături simbolice sunt, de asemenea, create cu programul ln , dar pentru ca legătura să fie simbolică / soft, trebuie să specificăm parametrul -s , pentru a crea un link simbolic către directorul LinuxHintDirectory numit LHDLink run:

ln -sLinuxHintDirectory LHDLink

Și apoi fugiți ‘ ls -i 'Pentru a verifica dacă a fost creat corect:

După cum vedem în acest caz, legătura simbolică a fost creată, dar are un număr de inod diferit de fișierul original.

Putem lista link-uri simbolice într-un director cu ajutorul comenzii ls -l

În imaginea de mai sus putem vedea în permisiunile primului fișier prefixul the pentru legăturile simbolice, sfârșitul liniei arată, de asemenea, către ce fișier indică legătura simbolică.

Sper că ați găsit acest articol util pentru a înțelege diferențele dintre legăturile dure și legăturile simbolice și cum să le creați. Continuați să urmăriți LinuxHint pentru mai multe sfaturi și actualizări despre Linux.