Linking Files and Directories

πŸ“š Hoofdstuk 3.2: Bestanden en Mappen Koppelen (Links Maken)

──────────────────────────────
πŸ”— Inleiding:
──────────────────────────────
In Linux kunnen bestanden en mappen op verschillende manieren worden gekoppeld (links) om ze toegankelijk te maken via meerdere bestandsnamen.
Er zijn twee soorten links:

β€’ πŸ”Έ Harde links (Hard Links)
β€’ πŸ”Ή Zachte links (Soft Links of Symbolic Links)

──────────────────────────────
πŸ”Έ Harde Links (Hard Links):
──────────────────────────────
Een harde link is een extra bestandsnaam voor een bestaand bestand.
Beide namen verwijzen naar **dezelfde inode** (de unieke identificatie van een bestand in het bestandssysteem).

πŸ“Œ Eigenschappen:
βœ” Toegang tot **hetzelfde fysieke bestand** via meerdere namen
βœ” Aangemaakt met het commando: `ln origineel.txt linknaam.txt`
βœ” Blijft bestaan, zelfs als de originele bestandsnaam wordt verwijderd

πŸ“Œ Kenmerken van harde links:
β€’ βœ” Het originele bestand moet al bestaan
β€’ βœ” De tweede bestandsnaam mag nog niet bestaan
β€’ βœ” Beide bestanden delen hetzelfde inode-nummer
β€’ βœ” Moeten op hetzelfde bestandssysteem staan
β€’ ❌ Kan **geen directories** koppelen

πŸ“Œ Verwijderen van een harde link:
Gebruik `rm` of `unlink`.
πŸ“Œ Let op: Zolang er ten minste één link overblijft, blijft de data bewaard.

──────────────────────────────
πŸ”Ή Zachte Links (Soft Links / Symbolic Links):
──────────────────────────────
Een zachte link is een **virtueel bestand** dat verwijst naar het pad van een ander bestand.
Deze vorm van link werkt ook over verschillende bestandssystemen heen.

πŸ“Œ Eigenschappen:
βœ” Wordt aangemaakt met het commando: `ln -s origineel.txt linknaam.txt`
βœ” Verwijst naar **het pad**, niet naar de data zelf
❗ Als het originele bestand wordt verwijderd of verplaatst, wordt de link ongeldig (broken)

πŸ“Œ Kenmerken van zachte links:
β€’ βœ” Het originele bestand moet bestaan bij aanmaak
β€’ βœ” Soft link en origineel bestand hebben **verschillende inode-nummers**
β€’ βœ” Werkt over verschillende bestandssystemen
β€’ βœ” Soft links **kunnen wel directories** verwijzen
β€’ ❌ De link bevat geen inhoud van het doelbestand, alleen een verwijzing naar het pad

πŸ“Œ Doel achterhalen van een soft link:
Gebruik het commando:
`readlink -f symlink_naam`
πŸ” Hiermee achterhaal je het **echte pad** waar de soft link naar wijst.

──────────────────────────────