Cel mai simplu mod de a explica folosind inode - „inode“. inode - acesta este un obiect sistem de fișier care conține informații despre proprietarul / grupul care deține fișierul sau directorul, din dreptul său de acces la acesta, dimensiunea, tipul, un marcaj de timp care să reflecte modificarea s inod (ctime, timpul de schimbare), în timp ce conținutul modificării fișier (mtime, timpul de modificare) și timpul ultimului acces la dosar (atime, timpul de acces) și contra pentru a ține cont de numărul de link-uri hard la dosar. Fiecare are propriul număr de inode, care este eliberat în sistemul său de fișiere în momentul creării sale (format).
De exemplu, să ia descrierea fișierului, în cazul în care ls-cheie de comandă să-l -i afișa în loc de „număr“ inod:
Prima coloană este doar afișează numărul inode. specificate în continuare a drepturilor de acces, hardlink contra Femeie la permisiunile de fișiere și tipul de fișier, utilizator, grup, dimensiune, data ultimei modificări și ultima - numele lui.
Aici nu vom insista asupra tuturor acestor date, suntem interesați numai de numărul inode și numărul de link-uri către fișierul.
Să ne întoarcem la explicația a ceea ce este un hardlink.
Exemplu - creați numele de fișier link-ul hardlink1. ceea ce ar indica un fisier1 fișier existent:
Pentru a vă asigura că, de fapt, ambele fișiere sunt același obiect de sistem de fișiere - comparați-le inod stoc, în acest caz - este numărul 475949:
După cum puteți vedea - cele două fișiere cu nume diferite, dar au un inod comun. Să adăugăm încă un link - si uita-te la ghișeul de link-uri hard:
Contor în loc de 2 afișează acum trei.
Ar fi mai bine să nu-l numesc „numărul de referință“ - și „contra nume de fișier“ ca o chestiune de fapt un fișier este stocat cu nume diferite.
Vom crea un nou (!) Obiect sistem de fișiere numit symlink1. ceea ce indică un fisier1 fișier existent:
Fiți atenți la tipul (sau atribut) specificat de litera L, înainte de drepturile de acces la dosar - în acest caz, se indică faptul că acest fișier este un link simbolic la un alt fișier. Același lucru este arătat și numele său - symlink1 -> fișier1.
Acum - compara inod -Numbers ambele fișiere:
Camerele sunt, ca și pentru sistemul de fișiere este deja două fișiere independente.
Aici se află diferența fundamentală dintre fișiere și moduri de a lucra cu ei.
hardlink nu poate indica un fișier de pe un alt sistem de fișiere (deoarece inode poate aparține doar un singur FS) și symlink - poate.
Când editați un fișier de referință: în cazul lea hardlink - schimba ambele fișiere, deoarece este unul și același obiect, același fișier poate fi editat symlink -s arbitrar mulți - nu va afecta fișierul „principal“.
Astfel, el a rămas fișier legătură simbolică:
Dar când încercarea de a obține informații despre fișier1 - primiți un mesaj de eroare:
În plus, prin intermediul hardlink nu poate crea un link către directorul:
Dar puteți utiliza symlink: