Care sunt tipurile de linkuri în Linux?

În sistemul dvs. de fișiere Linux, o legătură este o conexiune între numele unui fișier și datele reale de pe disc. Există două tipuri principale de link-uri care pot fi create: link-uri „hard” și link-uri „soft” sau simbolice. … O legătură simbolică este un fișier special care indică un alt fișier sau director, care se numește țintă.

O legătură simbolică sau soft este o legătură reală către fișierul original, în timp ce o legătură rigidă este o copie în oglindă a fișierului original. Dacă ștergeți fișierul original, legătura soft nu are valoare, deoarece indică un fișier inexistent. Dar în cazul hard link-ului, este complet opus.

O legătură în UNIX este un pointer către un fișier. La fel ca pointerii în orice limbaj de programare, linkurile în UNIX sunt pointeri care indică către un fișier sau un director. … Legăturile permit mai mult de un nume de fișier să facă referire la același fișier, în altă parte. Există două tipuri de link-uri: Soft Link sau Link-uri simbolice.

Legăturile din Unix sunt în esență pointerii care se asociază cu fișierele și directoarele. Diferența majoră dintre o legătură hard și o legătură soft este că legătura hard este referința directă la fișier, în timp ce linkul soft este referința după nume, ceea ce înseamnă că indică un fișier după numele fișierului.

Pentru a elimina o legătură simbolică, utilizați fie comanda rm, fie unlink urmată de numele legăturii simbolice ca argument. Când eliminați o legătură simbolică care indică către un director, nu adăugați o bară oblică la numele linkului simbolic.

Pentru a vizualiza legăturile simbolice dintr-un director:

  1. Deschideți un terminal și mutați-vă în acel director.
  2. Tastați comanda: ls -la. Aceasta va lista lung toate fișierele din director, chiar dacă sunt ascunse.
  3. Fișierele care încep cu l sunt fișierele tale cu linkuri simbolice.

Puteți verifica dacă un fișier este o legătură simbolică cu [ -L fișier ] . În mod similar, puteți testa dacă un fișier este un fișier obișnuit cu [ -f fișier ] , dar în acest caz, verificarea se face după rezolvarea legăturilor simbolice. hardlink-urile nu sunt un tip de fișier, sunt doar nume diferite pentru un fișier (de orice tip).

În calcul, un hard link este o intrare de director care asociază un nume cu un fișier dintr-un sistem de fișiere. Toate sistemele de fișiere bazate pe directoare trebuie să aibă cel puțin o legătură rigidă care să ofere numele original pentru fiecare fișier. Termenul „hard link” este de obicei folosit doar în sistemele de fișiere care permit mai multe linkuri hard pentru același fișier.

Hard link este replica exactă a fișierului real către care indică . Atât legătura hard, cât și fișierul conectat partajează același inod. Dacă fișierul sursă este șters, legătura hard încă funcționează și veți putea accesa fișierul până când numărul de linkuri hard către fișier nu este 0 (zero).

Da. Amândoi ocupă spațiu, deoarece amândoi au încă intrări în director.

În mod implicit, comanda ln creează legături hard. Pentru a crea o legătură simbolică, utilizați opțiunea -s ( –symbolic ). Dacă sunt date atât FILE, cât și LINK, ln va crea o legătură de la fișierul specificat ca prim argument ( FILE ) la fișierul specificat ca al doilea argument ( LINK ).

Pentru a crea o legătură simbolică, treceți opțiunea -s la comanda ln urmată de fișierul țintă și numele linkului. În exemplul următor, un fișier este legat simbolic în folderul bin. În exemplul următor, o unitate externă montată este legată simbolic într-un director principal.

Dacă găsiți două fișiere cu proprietăți identice, dar nu sunteți sigur dacă sunt conectate, utilizați comanda ls -i pentru a vizualiza numărul inodului. Fișierele care sunt legate între ele au același număr de inod. Numărul de inod partajat este 2730074, ceea ce înseamnă că aceste fișiere sunt date identice.

directorul programului dintr-un manager de fișiere, acesta va părea că conține fișierele din /mnt/partition/. program. Pe lângă „legăturile simbolice”, cunoscute și sub denumirea de „legături soft”, puteți crea în schimb o „legatură rigidă”. O legătură simbolică sau soft indică o cale în sistemul de fișiere.

Pentru a crea legături hard pe un sistem Linux sau Unix:

  1. Creați o legătură hard între sfile1file și link1file, rulați: ln sfile1file link1file.
  2. Pentru a crea legături simbolice în loc de legături hard, utilizați: ln -s source link.
  3. Pentru a verifica linkurile soft sau hard pe Linux, rulați: ls -l source link.

16 oct 2018

Îți place această postare? Vă rugăm să partajați prietenilor dvs.:
OS astăzi