Symlink-zelfstudie in Linux – Een symbolische link maken en verwijderen

Een symlink (ook wel een symbolische link genoemd) is een type bestand in Linux dat naar een ander bestand of een map op uw computer verwijst . Symlinks zijn vergelijkbaar met snelkoppelingen in Windows.

Sommige mensen noemen symlinks “softlinks” – een soort link in Linux / UNIX-systemen – in tegenstelling tot “harde links”.

Verschil Tussen een zachte link en een harde link

Zachte links lijken op snelkoppelingen en kunnen verwijzen naar een ander bestand of map in elk bestandssysteem.

Harde links zijn ook snelkoppelingen voor bestanden en mappen, maar er kan geen harde link worden gemaakt voor een map of bestand in een ander bestandssysteem.

Laten we eens kijken naar de stappen die nodig zijn bij het maken en verwijderen van een symlink. We zullen ook zien welke verbroken links zijn, en hoe ze te verwijderen.

Hoe maak je een symlink

De syntaxis voor het maken van een symlink is:

ln is het linkcommando. De vlag -s geeft aan dat de link zacht moet zijn. -s kan ook worden ingevoerd als -symbolic.

Standaard ln commando maakt harde koppelingen. Het volgende argument is path to the file (or folder) dat u wilt linken. (Dat wil zeggen, het bestand of de map waarvoor u een snelkoppeling wilt maken.)

En het laatste argument is de path to link zelf (de snelkoppeling).

Hoe maak je een symlink voor een bestand – Voorbeeldopdracht

Nadat je deze opdracht hebt uitgevoerd, heb je toegang tot de /home/james/transactions.txt met trans.txt. Elke wijziging aan trans.txt wordt ook weerspiegeld in het originele bestand.

Merk op dat deze opdracht hierboven het linkbestand trans.txt in uw huidige directory. Je kunt ook een gelinkt bestand aanmaken in een map, link dit:

Er moet al een map zijn met de naam “my-stuffs” in je huidige map – zo niet zal het commando een fout genereren.

Hoe maak je een symlink voor een map – Voorbeeld commando

Net als hierboven, zouden we “gebruiken:

Dit zou een symbolische map met de naam “james” creëren die de inhoud van /home/james zou bevatten. Eventuele wijzigingen in deze gekoppelde map hebben ook invloed op de originele map.

Een symlink verwijderen

Voordat u “een symlink wilt verwijderen, wilt u misschien bevestigen dat een bestand of map een symlink is, zodat u knoei niet met uw bestanden.

Een manier om dit te doen is:

Als u dit commando op uw terminal uitvoert, worden de eigenschappen van het bestand weergegeven. Als het eerste teken in het resultaat een kleine letter L (“l”) is, betekent dit dat het bestand / de map een symlink is.

Je “zou ook een pijl zien (- >) aan het einde om het bestand / de map aan te geven waarnaar de simlink verwijst.

Er zijn twee methoden om een symlink te verwijderen:

Hoe gebruik je Unlink to Een symlink verwijderen

De syntaxis is:

Dit verwijdert de symlink als het proces succesvol is.

Zelfs als de symlink de vorm van een map heeft, voeg “/” niet toe, omdat Linux aanneemt dat het “een map is en unlink” geen mappen kan verwijderen.

Hoe rm te gebruiken om een symlink te verwijderen

Zoals we hebben gezien, is een symlink gewoon een ander bestand of map die naar een origineel bestand of map verwijst. Om die relatie te verwijderen, kunt u het gekoppelde bestand verwijderen.

Daarom is de syntaxis:

Bijvoorbeeld:

Merk op dat het proberen om rm james/ te doen een fout zou opleveren, omdat Linux aanneemt dat “james /” een directory is, waarvoor andere opties nodig zijn, zoals r en f. Maar dat is niet wat we willen. Een symlink kan een map zijn, maar het gaat ons alleen om de naam.

Het belangrijkste voordeel van rm ten opzichte van unlink is dat u meerdere symlinks tegelijk kunt verwijderen, net als bij bestanden.

Hoe u verbroken links kunt vinden en verwijderen

Gebroken links komen voor wanneer het bestand of de map waarnaar een symlink verwijst, van pad verandert of wordt verwijderd.

Bijvoorbeeld, als “transacties.txt” wordt verplaatst van /home/james naar /home/james/personal, de “trans.txt” -link wordt verbroken. Elke poging om toegang te krijgen tot het bestand zal resulteren in de “Geen bestand of map” -fout. Dit komt omdat de link geen inhoud bevat van zijn eigen.

Wanneer u verbroken links ontdekt, kunt u het bestand gemakkelijk verwijderen. Een gemakkelijke manier om gebroken symlinks te vinden is:

Dit zal alle verbroken symlinks in de james directory weergeven – van bestanden tot directories tot sub-directories.

Het doorgeven van de -delete optie zal ze als volgt verwijderen:

Afronden

Symbolische koppelingen zijn een interessante eigenschap van Linux- en UNIX-systemen.

U kunt gemakkelijk toegankelijke symlinks maken om naar een bestand of map te verwijzen die anders niet gemakkelijk toegankelijk zou zijn. Met wat oefening zul je begrijpen hoe deze werken op een intuïtief niveau, en ze zullen je veel efficiënter maken in het beheren van bestandssystemen.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *