Er zijn veel alledaagse dingen op Linux die eenveel gebruikers vinden dat niet erg handig. Wanneer nieuwe gebruikers leren hoe deze alledaagse, saaie kleine trucs te gebruiken, worden ze betere Linux-gebruikers. Bind-mounts en Symlinks op Linux zijn hiervan een goed voorbeeld. In dit artikel bespreken we precies wat is een symlink, hoe er een te maken en waar ze voor zijn. We zullen ook ingaan op het maken van bindmounts, waarom ze zo handig zijn, en gebruikers zelfs laten zien hoe ze hun bindmounts kunnen versterken met bindfs!
SPOILER ALERT: Scrol omlaag en bekijk de videozelfstudie aan het einde van dit artikel.
Wat is een Symlink?
Een symlink of "symbolische link" is een verwijzing naareen ander bestand of map ergens anders op het bestandssysteem. De meeste ontwikkelaars laten bijvoorbeeld in plaats van het dupliceren van bibliotheken op het systeem van een gebruiker in plaats daarvan hun code symbolische koppelingen naar bibliotheekmappen en programmabestanden maken. Hierdoor kan het programma eenvoudig alle benodigde tools en bibliotheekbestanden hebben die het moet uitvoeren, zonder extra cruft te creëren.

Symlinks worden ook gebruikt bij het verwijzen naar bestandentussen verschillende partities en drives. Bijvoorbeeld: uw hele muziekbibliotheek wordt opgeslagen op harde schijf B en de grootte van de hele bibliotheek is 500 GB. Vanwege hoe groot het is, is het niet mogelijk om de muziekbibliotheek direct naar harde schijf A (ook bekend als de systeemschijf) te verplaatsen.
Om dit probleem eenvoudig op te lossen, kunnen gebruikers een symbolische koppeling maken en elk bestand van station B naar station A verwijzen. Op die manier kan de muziekspeler alle muziekbestanden gemakkelijk vinden en openen.
Symlinks gebruiken
Symbolische koppelingen kunnen op twee manieren worden gebruikt: om een hele map of een enkel bestand te koppelen. Zo maak je ze.
Symlink een bestand
Om een bestand te koppelen, opent u eerst een terminal. Vervolgens gaat u naar de map met het te koppelen bestand.
cd ~/path/to/file
Maak de symbolische link. Houd in gedachten waar de link moet komen.
ln -s original-file /path/where/link/goes
Symlink een map
ln -s /path/to/original/folder /path/where/linked/folder/goes
Verwijder een symlink
cd /path/where/symlink/is rm symlinkname unlink symlinkname
Wat is een bindmontage?
Een bin-mount is een manier om de inhoud van een te tonenmap op één plaats op het bestandssysteem in een andere map. Binding koppelen klinkt veel als een symbolische koppeling van een map, maar het is heel anders. De bind mount is erg handig. Systeembeheerders gebruiken deze methode vaak om snel meer opslagruimte toe te voegen aan een map wanneer het bestandssysteem van het hoofdsysteem 'alleen-lezen' is. Bind-mounts kunnen ook worden gebruikt om een netwerkshare snel aan een lokale map te binden, zonder dat een mount-punt in het fstab-bestand moet worden ingesteld, enz.

Bind-mounts gebruiken met het ingebouwde Linux-kernelcommando
De Linux-kernel heeft een ingebouwd bindcommando. Hierdoor kunnen gebruikers gemakkelijk de inhoud van mappen gemakkelijk in het bestandssysteem mounten. Hier is hoe het te doen.
Denk aan een map met bestanden die u op een andere locatie wilt mounten. Als je de locatie in gedachten hebt, denk dan aan de plek waar je deze wilt monteren.
In dit voorbeeld binden we een muziekmap van de ene harde schijf naar de andere.
sudo mount --bind /mnt/DataDrive/Music /home/user/Music
Ontkoppel de bindmontage met:
umount /home/derrik/Music
BindFS
Voordat u een bind-mount maakt, moet ubindfs installeren. Het is een tool die bindmontage mogelijk maakt en ook extra functionaliteit toevoegt (machtigingsinstellingen, betere mirroring en etc). Zo krijgt u het op uw Linux-distributie:
Ubuntu
sudo apt install bindfs
Debian
sudo apt-get install bindfs
Arch Linux
Bindfs staat helaas niet in de officiële Arch-softwarebronnen. Als gebruikers bindfs willen gebruiken, moeten ze in plaats daarvan dit AUR-pakket installeren.
Fedora
sudo dnf install bindfs
OpenSUSE
sudo zypper install bindfs
Andere Linuxes
Overweeg om naar de officiële bindfs-website te gaan om bindfs op de Linux-distributie van uw keuze te krijgen. U kunt ook de pakketbeheerder op uw Linux-pc openen, zoeken naar "bindfs" en installeren!
Bindfs gebruiken voor Bind-mounts
Het gebruik van bindfs heeft zo zijn voordelen. Het ingebouwde kernel bind-commando werkt in een handomdraai, maar het is erg basic en staat geen geavanceerde functies toe, zoals het beperken van de toegang tot bindingen en enz. Hier is hoe gebruik te maken van bindfs.
Maak een alleen-lezen bindende mount
bindfs --perms=a-w /path/to/the/original/directory/ /path/to/bind/to/
Maak een lees / schrijf bind mount
bindfs /path/to/the/original/directory /path/to/bind/to
Ontkoppel een bindfs-mount
sudo umount /path/to/bind/
Gevolgtrekking
Alledaagse bewerkingen zoals symbolische koppelingen en bindenmounts zijn waarschijnlijk het minst onderzochte onderwerp op Linux vanwege het feit dat ze behoorlijk oninteressant zijn en meestal niet worden gebruikt door algemene gebruikers. Het feit is: als je ontdekt dat je met symbolische koppelingen overal snel en gemakkelijk toegang hebt tot bestanden, of dat mount-koppelingen het ongelooflijk eenvoudig kunnen maken om extra opslag op te slaan waar je maar wilt, worden deze onderwerpen veel interessanter.
Comments