Linux: Symbolische links
Onder Linux wordt veel gebruik gemaakt van symbolische links.
De vragen die aan de orde komen zijn: Waarvoor en waarom worden ze gebruikt,
en hoe werken ze?
Inleiding
Het zal je vast wel eens overkomen zijn dat je niet meer precies wist hoe je
een file genoemd had. Was het nou hoofdstuk1.tex, of hfst1.tex?
Het kan ook zijn dat je niet zo van typen houd, en je het eigenlijk maar vervelend
vind om telkens /usr/share/doc/zlib-devel-1.1.3/ te moeten intypen om
bij de documentatie van zlib-devel te kunnen komen. In het eerste geval
is het handig om dezelfde file onder 2 namen beschikbaar te hebben,
terwijl je in het tweede geval graag een korte route naar
/usr/share/doc/zlib-devel-1.1.3/ zou willen hebben. De oplossing voor
deze twee problemen is gelegen in het gebruik van symbolische links.
Files linken
Wanneer je het commando
ln -s hoofdstuk1.tex hfst1.tex
geeft, dan maak je de al bestaande file hoofdstuk1.tex ook
geschikbaar onder de naam hfst1.tex. Het resultaat is dat er nog
steeds maar 1 file is, dus het maakt niet uit onder welke naam je hem
bewerkt. Bewerkingen op de file onder de ene naam zijn meteen ook
bewerkingen op de file onder de andere naam.
Directories linken
Om dat vervelende pad /usr/share/doc/zlib-devel-1.1.3/ wat sneller
vanuit je homedir beschikbaar te hebben kun je gebruik maken van een
commando in de trant van
ln -s /usr/share/doc/zlib-devel-1.1.3/ ~/zlib-devel
Na het geven lijkt het net alsof de directory
/usr/share/doc/zlib-devel-1.1.3/ dan ook in je homedir staat onder
de naam zlib-devel.
Symbolische links verwijderen
Bij symbolische links is altijd sprake van het onderscheid tussen het
echte object, en de link er naartoe. Wanneer je het object wist, dan zal
de link er naartoe ook niet meer werken, maar nog wel blijven bestaan.
Wanneer je de link wist, dan blijft het object zelf nog wel bestaan. Bij
het hernoemen/verplaatsen doet zich een zelfde verschijnsel voor.
Wanneer je het object hernoemt/verplaatst, dan zal de link die naar het
object verwijst niet langer werken. De link zelf kun je echter naar
believen verplaatsen en hernoemen, zolang het object op dezelfde plek
blijft staan werken de links.
|