Wat is het verschil tussen een symbolische link en een harde link?

Onlangs werd mij dit gevraagd tijdens een sollicitatiegesprek. Ik was eerlijk en zei dat ik wist hoe een symbolische link zich gedraagt en hoe je er een kunt maken, maar ik begrijp het gebruik van een harde link niet en hoe deze verschilt van een symbolische link.


Antwoord 1, autoriteit 100%

Onder het bestandssysteem worden bestanden weergegeven door inodes. (Of zijn het meerdere inodes? Weet ik niet zeker.)

Een bestand in het bestandssysteem is in feite een link naar een inode.
Een harde link creëert dan gewoon een ander bestand met een link naar dezelfde onderliggende inode.

Als je een bestand verwijdert, wordt één link naar de onderliggende inode verwijderd. De inode wordt alleen verwijderd (of verwijderbaar/overschrijfbaar) wanneer alle links naar de inode zijn verwijderd.

Een symbolische link is een link naar een andere naam in het bestandssysteem.

Zodra een harde link is gemaakt, is de link naar de inode. Het verwijderen, hernoemen of verplaatsen van het originele bestand heeft geen invloed op de harde link omdat deze linkt naar de onderliggende inode. Alle wijzigingen in de gegevens op de inode worden weergegeven in alle bestanden die naar die inode verwijzen.

Opmerking: Harde links zijn alleen geldig binnen hetzelfde bestandssysteem. Symbolische koppelingen kunnen bestandssystemen overspannen omdat ze gewoon de naam van een ander bestand zijn.


Antwoord 2, autoriteit 61%

Enkele voorbeelden die kunnen helpen.

Maak twee bestanden met gegevens erin:

$ printf Cat > foo
$ printf Dog > bar

Maak een harde en zachte (ook wel symbolische) link:

$ ln foo foo-hard
$ ln -s bar bar-soft

Lijst directory-inhoud in lang formaat door de grootte te vergroten:

ls -lrS
lrwxr-xr-x   1 user  staff        3  3 Apr 15:25 bar-soft -> bar
-rw-r--r--   2 user  staff        4  3 Apr 15:25 foo-hard
-rw-r--r--   2 user  staff        4  3 Apr 15:25 foo
-rw-r--r--   1 user  staff        4  3 Apr 15:25 bar

Dit vertelt ons dat

  • 1e kolom: de bestandsmodus voor de zachte en harde koppelingen verschilt

    • zachte link: lrwxr-xr-x
      • bestandstype: l= symbolische link
      • eigenaarsrechten: rwx= leesbaar, beschrijfbaar, uitvoerbaar
      • groepsrechten: r-x= leesbaar, niet beschrijfbaar, uitvoerbaar
      • andere rechten: r-x= leesbaar, niet beschrijfbaar, uitvoerbaar
    • harde link: -rw-r--r--
      • bestandstype: -= normaal bestand
      • eigenaarsrechten: rw-= leesbaar, beschrijfbaar, niet uitvoerbaar
      • groepsrechten: r--= leesbaar, niet beschrijfbaar, niet uitvoerbaar
      • andere rechten: r--= leesbaar, niet beschrijfbaar, niet uitvoerbaar
  • 2e kolom: aantal links is hoger voor de hardlinked bestanden

  • 5e kolom: de grootte van de zachte link is kleiner, omdat het een referentie is in plaats van een kopie

  • laatste kolom: de symbolische link toont het gekoppelde bestand via ->

Het wijzigen van de bestandsnaam van foo heeft geen invloed op foo-hard:

$ mv foo foo-new
$ cat foo-hard
Cat

Het wijzigen van de inhoud van foo wordt weergegeven in foo-hard:

$ printf Dog >> foo
$ cat foo-hard
CatDog

Harde links zoals foo-hard verwijzen naar de inode, de inhoud, van het bestand.

Dit is niet het geval voor zachte links zoals bar-soft:

$ mv bar bar-new
$ ls bar-soft
bar-soft
$ cat bar-soft  
cat: bar-soft: No such file or directory

De inhoud van het bestand kon niet worden gevonden omdat de zachte link verwijst naar de naam, die is gewijzigd, en niet naar de inhoud.

Evenzo, als foowordt verwijderd, bevat foo-hardnog steeds de inhoud; als barwordt verwijderd, is bar-softslechts een link naar een niet-bestaand bestand.


Antwoord 3, autoriteit 58%

Zoals het gezegde luidt, zegt een foto meer dan duizend woorden. Hier is hoe ik het visualiseer:

Zo komen we bij die foto:

  1. Maak een naam myfile.txtin het bestandssysteem die verwijst naar een nieuwe inode (die de metadata voor het bestand bevat en verwijst naar de gegevensblokken die de inhoud ervan bevatten, bijv. de tekst “Hallo wereld!”:

    $ echo 'Hello, World!' > myfile.txt
    
  2. Maak een harde link my-hard-linknaar het bestand myfile.txt, wat betekent “maak een bestand dat moet verwijzen naar dezelfde inode die myfile.txtverwijst naar”:

    $ ln myfile.txt my-hard-link
    
  3. Maak een zachte link my-soft-linknaar het bestand myfile.txt, wat betekent “maak een bestand dat moet verwijzen naar het bestand myfile.txt“:

    $ ln -s myfile.txt my-soft-link
    

Kijk wat er nu gebeurt als myfile.txtwordt verwijderd (of verplaatst): my-hard-linkverwijst nog steeds naar dezelfde inhoud en is dus onaangetast, terwijl my-soft-linknu naar niets wijst. Andere antwoorden bespreken de voor- en nadelen van elk.


Antwoord 4, autoriteit 9%

Harde koppelingen zijn handig wanneer het originele bestand wordt verplaatst. Bijvoorbeeld het verplaatsen van een bestand van /bin naar /usr/bin of naar /usr/local/bin. Elke symbolische link naar het bestand in /bin zou hierdoor worden verbroken, maar een hardlink, een rechtstreekse link naar de inode voor het bestand, zou niet schelen.

Harde koppelingen nemen mogelijk minder schijfruimte in beslag omdat ze alleen een directory-item in beslag nemen, terwijl een symlink zijn eigen inode nodig heeft om de naam op te slaan waarnaar hij verwijst.

Harde koppelingen hebben ook minder tijd nodig om op te lossen – symlinks kunnen verwijzen naar andere symlinks in gesymlinkte mappen. En sommige hiervan kunnen zich op NFS of andere bestandssystemen met hoge latentie bevinden, en kunnen er dus toe leiden dat netwerkverkeer moet worden opgelost. Harde links, die altijd op hetzelfde bestandssysteem staan, worden altijd opgelost in één keer opzoeken, en brengen nooit netwerklatentie met zich mee (als het een hardlink is op een NFS-bestandssysteem, zou de NFS-server de resolutie uitvoeren en zou het onzichtbaar zijn voor het cliëntsysteem). Soms is dit belangrijk. Niet voor mij, maar ik kan me krachtige systemen voorstellen waar dit belangrijk kan zijn.

Ik denk ook dat dingen als mmap(2) en zelfs open(2) dezelfde functionaliteit gebruiken als hardlinks om de inode van een bestand actief te houden, zodat zelfs als het bestand wordt ontkoppeld(2), de inode blijft om het proces mogelijk te maken voortdurende toegang, en pas als het proces is afgesloten, verdwijnt het bestand echt. Dit zorgt voor veel veiligere tijdelijke bestanden (als je het openen en ontkoppelen atomair kunt laten gebeuren, waarvoor er mogelijk een POSIX API is die ik me niet herinner, dan heb je echt een veilig tijdelijk bestand) waar je kunt lezen / schrijven uw gegevens zonder dat iemand er toegang toe heeft. Dat was waar voordat /proc iedereen de mogelijkheid gaf om naar je bestandsdescriptors te kijken, maar dat is een ander verhaal.

Daarover gesproken, het herstellen van een bestand dat open is in proces A, maar niet gekoppeld is op het bestandssysteem, draait om het gebruik van hardlinks om de inode-koppelingen opnieuw te maken, zodat het bestand niet verdwijnt wanneer het geopende proces het sluit of gaat weg.


Antwoord 5, autoriteit 4%

Een eenvoudige manier om het verschil tussen een harde link en een symbolische link te zien, is door middel van een eenvoudig voorbeeld. Een harde link naar een bestand verwijst naar de plaats waar het bestand is opgeslagen, of de inode van dat bestand. Een symbolische link verwijst naar het eigenlijke bestand zelf.

Dus als we een bestand hebben met de naam “a” en een harde link “b” en een symbolische link “c” maken die allemaal verwijzen naar bestand “a”:

echo "111" > a
ln a b
ln -s a c

De uitvoer van “a”, “b” en “c” zal zijn:

cat a --> 111
cat b --> 111
cat c --> 111

Laten we nu bestand “a” verwijderen en kijken wat er gebeurt met de uitvoer van “a”, “b” en “c”:

rm a
cat a --> No such file or directory
cat b --> 111
cat c --> No such file or directory

Dus wat is er gebeurd?

Omdat bestand “c” verwijst naar bestand “a” zelf, als bestand “a” wordt verwijderd, heeft bestand “c” niets om naar te verwijzen, in feite wordt het ook verwijderd.

Bestand “b” verwijst echter naar de plaats van opslag, of de inode, van bestand “a”. Dus als bestand “a” wordt verwijderd, zal het niet langer naar de inode verwijzen, maar omdat bestand “b” dat wel doet, zal de inode doorgaan met het opslaan van de inhoud die bij “a” hoorde totdat er geen harde links meer naar verwijzen.


Antwoord 6, autoriteit 4%

Symbolische links linken naar een padnaam. Dit kan overal in de bestandsstructuur van een systeem zijn en hoeft niet eens te bestaan wanneer de koppeling wordt gemaakt. Het doelpad kan relatief of absoluut zijn.

Harde koppelingen zijn extra verwijzingen naar een inode, wat betekent dat ze alleen op hetzelfde volume als het doel kunnen bestaan. Extra harde links naar een bestand zijn niet te onderscheiden van de “oorspronkelijke” naam die wordt gebruikt om naar een bestand te verwijzen.


Antwoord 7, autoriteit 3%

Ik zou u willen verwijzen naar Wikipedia:

Een paar punten:

  • Symlinks kunnen, in tegenstelling tot harde links, bestandssystemen (meestal) doorkruisen.
  • Symlinks kunnen naar mappen verwijzen.
  • Harde koppelingen verwijzen naar een bestand en stellen u in staat om met meer dan één naam naar hetzelfde bestand te verwijzen.
  • Zolang er ten minste één link is, zijn de gegevens nog steeds beschikbaar.

Antwoord 8

Harde koppelingen zijn erg handig bij het maken van incrementele back-ups. Zie bijvoorbeeld rsnapshot. Het idee is om te kopiëren met behulp van harde links:

  • kopieer back-upnummer n naar n + 1
  • kopieer back-up n – 1 naar n
  • kopieer back-up 0 naar back-up 1
  • update back-up 0 met gewijzigde bestanden.

De nieuwe back-up neemt geen extra ruimte in beslag, afgezien van eventuele wijzigingen die je hebt aangebracht, aangezien alle incrementele back-ups naar dezelfde set inodes zullen verwijzen voor bestanden die niet zijn gewijzigd.


Antwoord 9

Harde link versus zachte link kan eenvoudig worden verklaard door deze afbeelding.


Antwoord 10

Ik voeg de vraag van Nick toe: wanneer zijn hard linksnuttig of noodzakelijk? De enige toepassing die bij mij opkomt, waarin symbolische links niet zouden werken, is het verstrekken van een kopie van een systeembestand in een chroot-omgeving.


Antwoord 11

Van MSDN,

Symbolische link

Een symbolische link is een bestandssysteemobject dat verwijst naar een ander bestandssysteemobject. Het object waarnaar wordt verwezen, wordt het doel genoemd.

Symbolische links zijn transparant voor gebruikers; de links verschijnen als normaal
bestanden of mappen, en kan worden uitgevoerd door de gebruiker of toepassing
op precies dezelfde manier.

Symbolische koppelingen zijn ontworpen om te helpen bij migratie en toepassing
compatibiliteit met UNIX-besturingssystemen. Microsoft heeft geïmplementeerd
de symbolische links werken net als UNIX-links.

Symbolische links kunnen absolute of relatieve links zijn. Absoluut
links zijn links die elk deel van de padnaam specificeren; familielid
links worden bepaald ten opzichte van waar relatieve-link-specificaties zijn in
een gespecificeerd pad

Een voorbeeld van een absolute symbolische link

X: "C:\alpha\beta\absLink\gamma\file"
Link: "absLink" maps to "\\machineB\share"
Modified Path: "\\machineB\share\gamma\file"

Een voorbeeld van relatieve symbolische links

X: C:\alpha\beta\link\gamma\file
Link: "link" maps to "..\..\theta"
Modified Path: "C:\alpha\beta\..\..\theta\gamma\file"
Final Path: "C:\theta\gamma\file"

Harde link

Een harde linkis de bestandssysteemrepresentatie van een bestand waarmee:
meer dan één pad verwijst naar een enkel bestand in hetzelfde volume.

Als u een harde link in Windows wilt maken, navigeert u naar waar de link moet worden gemaakt en voert u deze opdracht in:

mklink /H Link_name target_path

Houd er rekening mee dat u harde koppelingen in elke volgorde kunt verwijderen, ongeacht de volgorde waarin ze zijn gemaakt. Er kunnen ook geen harde links worden gemaakt wanneer

  • verwijzingen staan op verschillende lokale stations
  • referenties zijn inclusief netwerkschijf. Met andere woorden, een van de referenties is een netwerkschijf
  • harde link die moet worden gemaakt, bevindt zich in hetzelfde pad als het doel

Kruispunt

NTFS ondersteunt een ander linktype, junction genaamd. MSDN definieert het als volgt:

Een knooppunt (ook wel een zachte link genoemd) verschilt van een harde link doordat de opslagobjecten waarnaar het verwijst afzonderlijke mappen zijn, en een knooppunt kan mappen koppelen die zich op verschillende lokale volumes op dezelfde computerbevinden. . Anders werken knooppunten op dezelfde manier als harde links.

De vetgedrukte delen in het gedeelte met de harde link en het knooppunt laten het fundamentele verschil tussen de twee zien.

Opdracht om een splitsing in Windows te maken, navigeer naar waar de link gemaakt moet worden en voer dan in:

mklink /J link_name target_path

Antwoord 12

Ook:

  1. Leesprestaties van harde links zijn beter dan symbolische links (microprestaties)
  2. Symbolische links kunnen worden gekopieerd, versiebeheerd, ..etc. Met andere woorden, ze zijn een echt bestand. Aan de andere kant is een harde link iets op een iets lager niveau en je zult merken dat er in vergelijking met symbolische links minder tools zijn die middelen bieden om met de harde links te werken als harde links en niet als normale bestanden

Antwoord 13

Gewoon, Harde link: is gewoon een nieuwe naam aan een bestand toevoegen, dat is gemeen, een bestand kan veel namen tegelijk hebben, alle namen zijn gelijk aan elkaar, niemand heeft de voorkeur, Harde link is niet bedoeld om te kopiëren de volledige inhoud van het bestand en een nieuw bestand maken is dat niet, het maakt gewoon een alternatieve naam die bekend moet zijn..

Symbolische link (symlink): is een bestandsverwijzing naar een ander bestand, als de symbolische link verwijst naar een bestaand bestand dat later wordt verwijderd, blijft de symbolische link naar dezelfde bestandsnaam verwijzen, ook al noemt de naam geen enkele naam meer. bestand.


Antwoord 14

Wat u ziet als een gewoon “bestand” zijn eigenlijk twee afzonderlijke dingen: de gegevens van een bestand en een directory-item. Wanneer u een harde koppeling voor een bestand maakt, maakt u in feite een tweede directory-item dat naar dezelfde gegevens verwijst. Beide directory-items hebben exact dezelfde functionaliteit; elk kan worden gebruikt om het bestand te openen om het te lezen. Je hebt dus niet echt “een bestand plus een harde link”, je hebt “bestandsgegevens met twee directory-items”. Wat u beschouwt als het verwijderen van een bestand, verwijdert in feite een directory-item, en wanneer het laatste directory-item voor de gegevens wordt verwijderd, worden de gegevens zelf ook verwijderd. Voor gewone bestanden die slechts één directory-item hebben, zal het verwijderen van het directory-item de gegevens zoals altijd verwijderen. (Terwijl een bestand wordt geopend, maakt het besturingssysteem een tijdelijke koppeling naar het bestand, dus zelfs als u alle directory-items verwijdert, blijven de gegevens behouden maar verdwijnen ze zodra u het bestand sluit).

Maak bijvoorbeeld een bestand A.txt, een harde link B.txt en verwijder A.txt. Toen u A.txt aanmaakte, werden enkele gegevens gemaakt en werd een directory-item A.txt. Toen u de harde link maakte, werd een ander directory-item B.txt gemaakt, dat naar exact dezelfde gegevens verwijst. Wanneer u A.txt verwijdert, heeft u nog steeds alle gegevens en een enkele directory-ingang B.txt, precies alsof u in de eerste plaats een bestand B.txt had gemaakt.

Een softlink is gewoon een (bijna) gewoon bestand, behalve dat het geen gegevens bevat, maar het pad van een ander directory-item. Als u het bestand verwijdert waarnaar de softlink verwijst, dan zal de softlink een pad bevatten dat niet meer naar een directory-item verwijst; het is kapot. Als u de softlink verwijdert, is het net als het verwijderen van een ander bestand, het bestand waarnaar het verwijst, wordt niet beïnvloed.


Antwoord 15

Een directory-item is een link a structrue:

struct dentry{
    ino_t ino;
    char  name[256];
}

de ino is het aantal inodes, de naam is de bestandsnaam, de structuur van de inode kan zoiets zijn:

struct inode{
      link_t nlink; 
      ...
}

u maakt bijvoorbeeld een bestand /1, de vermelding in de directory kan als volgt zijn:

struct dentry{
     ino_t ino; /* such as 15 */
     char  name[256]; /* "1" */
} 

de inode-struct misschien als:

  struct inode{ /* inode number 15 */
         link_t nlink; /* nlink = 1 */
         ...
    }

vervolgens maak je een harde link (misschien /100), het directory-item misschien als:

 struct dentry{
     ino_t ino; /* 15 */
     char  name[256]; /* 100 */
  }

de inode-struct misschien als:

  struct inode{ /* inode numebr 15 */
         link_t nlink; /* nlink = 2 */
         ...
    }

vervolgens maak je een symbolische link (misschien /200) naar bestand 1, het directory-item misschien als:

 struct dentry{
        ino_t ino; /* such as 16 */
        char  name[256]; /* "200" */
  }

de inode-struct misschien als:

  struct inode{ /* inode number 15 */ 
         link_t nlink; /* nlink = 2 */
         ...
    }
   struct inode{ /* inode number 16 */
         link_t nlink; /* nlink = 1 */
         ...
    } /* the data of inode 16 maybe /1 or 1 */

Antwoord 16

Als aanvulling op alle bovenstaande antwoorden, kan het verschil in het vinden van het hardlink- en softlink-bestand als volgt worden begrepen:

Ik heb een bestand f6in mijn huidige map, evenals een map met de naam t2.

Bestand met de naam f1en ./t2/f2zijn symbolische links naar f6.

Bestand met de naam f7en ./t2/f8zijn harde links van f6.

Om zowel een zachte als een harde link te vinden, kunnen we gebruiken:

$ find -L . -samefile f6 
> ./f1
> ./f6
> ./f7
> ./t2/f2
> ./t2/f8

Om alleen een hardlink te vinden die we kunnen gebruiken:

$ find . -xdev -samefile f6
> ./f6
> ./f7
> ./t2/f8

Aangezien hardlinks op hetzelfde bestandssysteem kunnen worden gemaakt, kunnen we alle hardlinks zoeken zonder de optie -Lte gebruiken (met de optie -xdev) in hetzelfde bestand- systeem/montagepunt. Het bespaart onnodig zoeken naar verschillende koppelpunten.

Het zoeken op de hardlink gaat dus iets sneller dan het zoeken op de softlinks (corrigeer dit als ik het fout heb of niet duidelijk ben).


Antwoord 17

Symbolische koppelingen geven een bestand een andere naam, vergelijkbaar met harde koppelingen. Maar een bestand kan worden verwijderd, zelfs als er nog symbolische links zijn.


Antwoord 18

Mijn twee cent over het gebruik:

Zachtelinks kunnen worden gebruikt om lange padnamen in te korten, bijvoorbeeld:

ln -s /long/folder/name/on/long/path/file.txt /short/file.txt

Wijzigingen in /short/file.txtworden toegepast op het originele bestand.

Harde-links kunnen worden gebruikt om door grote bestanden te bladeren:

$ ls -lh /myapp/dev/
total 10G
-rw-r--r-- 2 root root 10G May 22 12:09 application.bin

ln /myapp/dev/application.bin /myapp/prd/application.bin

Direct kopiëren naar een andere map en het originele bestand (op /myapp/dev) kan worden verplaatst of verwijderd, zonder het bestand op /myapp/prd


19

In dit antwoord wanneer ik een bestand zeg, bedoel ik de locatie in het geheugen

Alle opgeslagen gegevens worden opgeslagen in het geheugen met behulp van een gegevensstructuur genaamd Inodes Elke inode heeft een inodenummer.Het inode nummer wordt gebruikt om toegang te krijgen tot de inode. Alle harde links naar een bestand kunnen verschillende namen hebben, maar delen dezelfde namen Inode nummer.Since Alle harde links hebben hetzelfde inodenummer (welke Intental toegang heeft tot dezelfde inode), allemaal wijzen ze naar hetzelfde fysieke geheugen.

Een symbolische link is een speciaal soort bestand.Since Het is ook een bestand dat het een bestandsnaam en een inode nummer zal hebben. Het is hierboven het inodeummer dat een inode is die wijst op data. Nu maakt een symbolische link Special is dat de inodenummers in symbolische links toegang krijgen tot die inodes die naar “een pad” naar een ander bestand wijzen. Meer specifiek het inode-nummer in de symbolische link is die inodes die naar een andere harde link wijzen.

wanneer we een bestand verplaatsen, kopiëren of verwijderen in de GUI, spelen we met de hardlinks van het bestand, niet met het fysieke geheugen. Als we een bestand verwijderen, verwijderen we de hardlink van het bestand. we wissen het fysieke geheugen niet uit. Als alle hardlinks naar het bestand zijn verwijderd, is het niet mogelijk om toegang te krijgen tot de opgeslagen gegevens, hoewel deze mogelijk nog steeds in het geheugen aanwezig zijn


Antwoord 20

Ik heb zojuist een eenvoudige manier gevonden om harde koppelingen te begrijpen in een veelvoorkomend scenario, software-installatie.

Op een dag downloadde ik software naar de map Downloads om te installeren. Nadat ik sudo make install had gedaan, werden sommige uitvoerbare bestanden naar de lokale bin-map gecped. Hier maakt cp een harde link. Ik was blij met de software, maar realiseerde me al snel dat Downloads op de lange termijn geen goede plek is. Dus ik heb de softwaremap naar de bronmap verplaatst. Welnu, ik kan de software nog steeds als voorheen gebruiken zonder me zorgen te maken over dingen met doellinks, zoals in Windows. Dit betekent dat een harde link inode direct en andere bestanden in de buurt vindt.


Antwoord 21

harde link is unix alsof het oud is, gebruik het in unix en dan linux, maar symbolick link is nieuw in linux.

hardlink-inode is hetzelfde als de originele bestands-inode. Maar symbolik link-inode is anders dan de originele bestands-inode.

De bestandsgrootte van de harde koppeling in byte is hetzelfde als de oorspronkelijke bestandsgrootte in byte. Maar symbolik link bestandsgrootte in byte is niet zoals de originele bestandsgrootte in byte. symbolick link-bestandsgrootte is kleiner dan de oorspronkelijke bestandsgrootte.

Harde link is een spiegelkopie van het originele bestand. symbolick-link of softlink is als een snelkoppeling in vensters.

Als je het originele bestand verwijdert, blijft de harde link het bestand en kun je de inhoud van het harde linkbestand zien. Als u in symbolick-link het originele bestand verwijdert, wordt de symbolische link verbroken en blijft de symbolische link bestaan, maar kan de symbolische link-inhoud niet worden weergegeven.

Symbolick Link is nieuw en het is veel functie, maar harde link is oud en daarom is het minder functie.

Laten we wat harde en symbolieke link maken met behulp van terminal:
echo “Waarom zo serieus” & GT; file.txt

Harde link:
ln file.txt file_hard

Symbolick Link:
ln -s file.txt file_sym

Laten we daar zijn inhoud met inode:
ls -Li


22

Een link (bestandsnaam) die oplost naar een bestand waarvan de inhoud een padnaam is symbolische link, anders is het een harde link.

Een map is in wezen een tabel waarin een item een ​​bestandsnaam (link) en inode nummer is. Een link – harde of symbolische – Opgeslagen naar een inodeummer in de map, de inode in de map besloipt vervolgens op om op te vallen (informatie over een bestand) in de inode tabel. Een stuk informatie in het inode-record is bestandstype.

Vanuit het inode-record kan het bestandssysteem dan toegang krijgen tot de gegevens van het bestand de inode vertegenwoordigt, omdat het adres van het bestand deel uitmaakt van de verzameling informatie die het record vormt.

Als gegevens van het bestand een is, is de link een symbolische link anders is het een harde link.

Other episodes