Symbolische koppelingen worden gebruikt, net als snelkoppelingen. Ze kunnen worden gebruikt om echt lange paden korter te maken en een manier om eenvoudig toegang te krijgen tot bestanden op andere partities en stations.
Deze gids toont alles wat u moet weten over symbolische koppelingen, maar u kunt de handleidingpagina voor het ln-commando bekijken voor de andere schakelaars.
Ermee beginnen
Er zijn twee soorten links beschikbaar:
- Harde links
- Zachte links
Voordat u begint, is het goed om te weten welke harde koppelingen er zijn en waarom u ze zou gebruiken, maar deze gids zal zich vooral richten op zachte links of symbolische koppelingen, omdat deze meer algemeen bekend zijn.
Wat is een harde link?
Elk bestand in uw bestandssysteem wordt geïdentificeerd door een nummer dat een inode wordt genoemd. Meestal zul je er niet echt om geven, maar het belang hiervan komt aan het licht wanneer je een harde link wilt maken.
Met een harde koppeling kun je een andere naam aan een bestand op een andere locatie toewijzen, maar in wezen is het precies hetzelfde bestand. De sleutel die de bestanden aan elkaar koppelt, is het inodenummer. Het mooie van harde koppelingen is dat ze geen fysieke ruimte op de harde schijf in beslag nemen.
Een harde koppeling maakt het eenvoudiger om bestanden te categoriseren. Stel je bijvoorbeeld voor dat je een map vol met foto's hebt. U kunt één map maken met de naam vakantiefoto's, een andere map met de naam foto's voor kinderen en een derde met de naam huisdierfoto's.
Het is mogelijk dat u enkele foto's hebt die in alle drie de categorieën passen omdat ze op vakantie zijn genomen met uw kinderen en honden aanwezig.
U kunt het hoofdbestand in de vakantiefoto's foto's plaatsen en vervolgens een harde koppeling naar die foto maken in de categorie kinderfoto's en een andere harde link in de categorie huisdierenfoto's - en geen extra ruimte innemen.
Het enige wat u hoeft te doen is het volgende commando invoeren om een harde link te maken:
ln / pad / naar / bestand / pad / naar / hardlink
Als je een foto had met de naam BrightonBeach in de map met vakantiefoto's en je een link wilde maken in de map met foto's van kinderen, zou je de volgende opdracht gebruiken: ln /holidayphotos/BrightonBeach.jpg /kidsphotos/BrightonBeach.jpg
U kunt als volgt aangeven hoeveel bestanden naar dezelfde inode linken met de opdracht ls: ls -lt
De uitvoer zal zoiets zijn -rw-r - r-- 1 gebruikersnaam groepsnaam datum bestandsnaam. Het eerste deel toont de permissies van de gebruiker, maar het belangrijkste deel is het nummer na de permissies en voor de gebruikersnaam. Als het nummer 1 is, is dit het enige bestand dat naar een bepaalde inode verwijst (dat wil zeggen, het is niet gekoppeld). Als het aantal groter is dan één, is het hard gekoppeld door twee of meer bestanden. Een symbolische koppeling is als een snelkoppeling van het ene bestand naar het andere. De inhoud van een symbolische koppeling is het adres van het daadwerkelijke bestand of de map waaraan wordt gekoppeld. Het voordeel van het gebruik van symbolische koppelingen is dat u koppelingen kunt maken naar bestanden en mappen op andere partities en op andere apparaten. Een ander verschil tussen een harde link en een symbolische link is dat een harde link moet worden gemaakt tegen een bestand dat al bestaat, terwijl een zachte link kan worden gemaakt voorafgaand aan het bestand dat het verwijst naar bestaand. Gebruik de volgende syntaxis om een symbolische koppeling te maken: ln -s / path / to / file / path / to / link
Als u zich zorgen maakt over het overschrijven van een bestaande koppeling, kunt u de schakeloptie -b als volgt gebruiken: ln -s -b / path / to / file / path / to / link
Hierdoor wordt een back-up van de koppeling gemaakt als deze al bestaat door dezelfde bestandsnaam te maken maar aan het einde een tilde (~). Als er al een bestand bestaat met dezelfde naam als de symbolische link, ontvangt u een foutmelding. U kunt de koppeling dwingen om het bestand te overschrijven met behulp van de volgende opdracht: ln -s -f / path / to / file / path / to / link
Waarschijnlijk wilt u de -f-switch niet gebruiken zonder de schakeloptie -b, omdat u dan het originele bestand kwijtraakt. Een ander alternatief is om een bericht te ontvangen waarin u wordt gevraagd of u een bestand wilt overschrijven als het al bestaat. U kunt dit doen met de volgende opdracht: ln -s -i / path / to / file / path / to / link Voer het volgende uit ls commando: ls -lt
Als een bestand een symbolische koppeling is, ziet u zoiets als dit: myshortcut -> mijnbestand
U kunt een symbolische koppeling gebruiken om naar een andere map te navigeren. Stel je bijvoorbeeld voor dat je een link hebt naar / Home / muziek / rock / Alice Cooper / heystoopid riep heystoopid. U kunt de volgende opdracht cd uitvoeren om naar die map te gaan met behulp van de volgende opdracht: cd heystoopid Wat is een symbolische link?
Hoe weet u of een bestand een symbolische link is?