Symbolische koppelingen maken en gebruiken (ook bekend als symlinks) op een Mac
Symbolische koppelingen, ook bekend als symlinks, zijn speciale bestanden die verwijzen naar bestanden of mappen op andere locaties op uw systeem. Je kunt ze zien als geavanceerde aliassen en hier is hoe je ze kunt gebruiken in MacOS.
Symbolische koppelingen lijken op aliassen, behalve dat ze in elke toepassing op uw Mac werken, ook in de terminal. Ze zijn vooral handig wanneer apps niet correct willen werken met een gewone alias. Op macOS maakt u symbolische koppelingen in de Terminal met behulp van de ln
nut. Je kunt ze niet maken in de Finder. Symbolische koppelingen in macOS werken op dezelfde manier als symbolische koppelingen in Linux, omdat beide op Unix lijkende besturingssystemen zijn. Symbolische koppelingen in Windows werken iets anders.
Wat zijn symbolische koppelingen?
In macOS kunt u reguliere aliassen maken in de Finder. Aliassen wijzen naar bestanden of mappen, maar ze lijken meer op eenvoudige snelkoppelingen.
Een symbolische koppeling is een meer geavanceerd type alias dat in elke toepassing op het systeem werkt, inclusief opdrachtregelhulpprogramma's in de terminal. Een symbolische koppeling die u maakt, lijkt voor apps hetzelfde te zijn als het oorspronkelijke bestand of de originele map waarnaar het verwijst, ook al is het maar een link.
Stel dat u een programma hebt waarvoor de bestanden zijn opgeslagen in / Bibliotheek / Programma. Maar u wilt die bestanden ergens anders op het systeem opslaan, bijvoorbeeld in / Volumes / Programma. U kunt de programmamap naar / Volumes / Programma verplaatsen en vervolgens een symbolische koppeling maken bij / Bibliotheek / Programma wijzend naar / Volumes / Programma. Het programma probeert zijn / haar map te openen in / Bibliotheek / Programma en het besturingssysteem zal het omleiden naar / Volumes / Programma.
Dit is volledig transparant voor het macOS-besturingssysteem en de applicaties die u gebruikt. Als u naar de map / Bibliotheek / Program in de Finder of een andere toepassing bladert, lijkt deze de bestanden in / Volumes / Programma te bevatten.
Naast symbolische koppelingen, die soms "zachte koppelingen" worden genoemd, kunt u in plaats daarvan "harde koppelingen" maken. Een symbolische of zachte koppeling verwijst naar een pad in het bestandssysteem. Laten we bijvoorbeeld zeggen dat u een symbolische of softlink hebt van / Users / example wijzend naar / opt / example. Als u het bestand naar / opt / example verplaatst, wordt de link op / Gebruikers / voorbeeld verbroken. Als u echter een harde koppeling maakt, verwijst deze naar de onderliggende inode van het bestandssysteem. Dus, als je een harde link hebt gemaakt van / Users / example wijzend naar / opt / example en later verplaatst / opt / example, dan zou de link at / Users / example nog steeds verwijzen naar het bestand, ongeacht waar je het verplaatst. De harde koppeling werkt op een lager niveau.
Over het algemeen moet u standaard symbolische links gebruiken (zachte links), als u niet zeker weet welke u moet gebruiken. Harde links hebben enkele beperkingen. U kunt bijvoorbeeld geen harde koppeling maken op één partitie of schijf die naar een locatie op een andere partitie of schijf verwijst, terwijl u dat kunt doen met een standaard symbolische link.
Maak symbolische koppelingen met het ln-commando
Als u een symbolische koppeling op een Mac wilt maken, moet u de Terminal-app gebruiken.
Druk op Command + Spatie, typ "Terminal" en druk vervolgens op "Enter" om Terminal te openen vanuit Spotlight-zoekopdracht. Navigeer naar Finder> Toepassingen> Hulpprogramma's> Terminal om de Terminal-snelkoppeling te starten.
Voer de ... uit ln
commando in de volgende vorm. U kunt een pad naar een map of bestand opgeven:
ln -s / path / to / original / path / to / link
De -s
hier vertelt het ln-commando om een symbolische link te maken. Als u een harde koppeling wilt maken, laat u de -s
. Meestal zijn symbolische links de betere keuze, dus maak geen harde link tenzij u een specifieke reden hebt om dit te doen.
Hier is een voorbeeld. Stel dat u een symbolische koppeling in uw Desktop-map wilt maken die verwijst naar uw map Downloads. U voert de volgende opdracht uit:
ln -s / Gebruikers / naam / Downloads / Gebruikers / naam / Desktop
Nadat u de koppeling hebt gemaakt, ziet u uw map Downloads op uw bureaublad verschijnen. Het is in feite de symbolische link die je hebt gemaakt, maar het zal eruit zien als het echte werk. Deze map zal alle dezelfde bestanden bevatten als uw map Downloads. Dat is omdat het doet - het zijn gewoon verschillende weergaven die naar dezelfde onderliggende map op het bestandssysteem verwijzen.
Als uw bestandspad spaties of andere speciale tekens bevat, moet u het tussen aanhalingstekens plaatsen. Als u dus een koppeling op uw bureaublad wilt maken naar een map met de naam 'Mijn bestanden' in uw gebruikersdirectory, heeft u zoiets als de volgende opdracht nodig:
ln -s "/ Users / name / My Files" "/ Users / name / Desktop / My Link"
Om het typen van bestands- en mappaden in de terminal gemakkelijker te maken, kunt u een map vanuit het Finder-venster naar de terminal slepen en neerzetten en vult de terminal automatisch het pad naar die map in. Het zal het pad ook tussen aanhalingstekens plaatsen, indien nodig.
Als u een symbolische koppeling moet maken op een systeemlocatie waar uw gebruikersaccount geen toegang toe heeft, moet u de prefix gebruiken ln
commando met de sudo
commando, zoals zo:
sudo ln -s / path / to / original / path / to / link
Houd er rekening mee dat het in moderne versies van macOS niet is toegestaan naar bepaalde systeemlocaties te schrijven zonder een low-level firmware-optie te wijzigen vanwege de functie Systeemintegriteitsbescherming. U kunt die functie uitschakelen, maar we raden u aan dat niet te doen.
Symbolische koppelingen verwijderen
U kunt symbolische koppelingen verwijderen zoals elk ander type bestand. Als u bijvoorbeeld een symbolische koppeling in de Finder wilt verwijderen, houdt u Ctrl ingedrukt of klikt u er met de rechtermuisknop op en selecteert u 'Verplaatsen naar prullenbak'..
U kunt links van de opdrachtregel verwijderen met behulp van de rm
opdracht, wat hetzelfde commando is dat u zou gebruiken om andere bestanden te verwijderen. Voer de opdracht uit en geef het pad op naar de koppeling die u wilt verwijderen:
rm / path / to / link
Symbolische koppelingen maken met een grafische tool
De Finder kan aliassen maken, maar deze werken niet zoals symbolische koppelingen. Aliassen zijn net als snelkoppelingen op het bureaublad van Windows. Ze worden niet behandeld als echte, transparante symbolische links.
Als u symbolische koppelingen in de Finder wilt maken, hebt u een hulpprogramma of script van derden nodig. We raden de open-source app SymbolicLinker aan voor het snel toevoegen van Services> Maak symbolische link-optie rechts in het contextmenu van de Finder.
Klik op de optie die het toevoegt en het maakt een symbolische link naar het geselecteerde bestand of de geselecteerde map in de huidige map. U kunt de naam ervan wijzigen en verplaatsen waar u maar wilt.
Als u ze nog niet eerder hebt gebruikt, kunnen symbolische koppelingen enige tijd in beslag nemen om uw hoofd te wikkelen en eraan te wennen. Maar als je dat eenmaal doet, zul je ze een krachtige tool vinden om iets te doen dat je vaak niet kunt doen met een regulier alias.