Ci sono molte cose banali su Linux che amolti utenti non pensano che ciò sia incredibilmente utile. Quando i nuovi utenti imparano a usare questi piccoli e noiosi trucchi, diventano migliori utenti Linux. Bind-mount e Symlink su Linux ne sono un ottimo esempio. In questo articolo, discuteremo esattamente cosa è un link simbolico, come crearne uno e a cosa servono. Vedremo anche come creare attacchi di associazione, perché sono così utili e persino mostreremo agli utenti come rinforzare i supporti di associazione con attacchi!
AVVISO SPOILER: Scorri verso il basso e guarda il video tutorial alla fine di questo articolo.
Che cos'è un collegamento simbolico?
Un collegamento simbolico o "collegamento simbolico" è un riferimento aun altro file o cartella da qualche altra parte nel file system. Ad esempio, la maggior parte degli sviluppatori, invece di duplicare le librerie sul sistema di un utente, farà invece in modo che il proprio codice crei collegamenti simbolici alle cartelle delle librerie e ai file di programma. Ciò consente al programma di disporre facilmente di tutti gli strumenti e i file di libreria necessari per l'esecuzione, senza creare ulteriore cruft.

I collegamenti simbolici vengono utilizzati anche quando si fa riferimento ai filetra diverse partizioni e unità. Ad esempio: l'intera libreria musicale è memorizzata sul disco rigido B e l'intera dimensione della libreria è di 500 GB. A causa delle dimensioni, non è possibile spostare direttamente la libreria musicale su Hard Drive A (ovvero l'unità di sistema).
Per risolvere facilmente questo problema, gli utenti possono creare un collegamento simbolico e fare riferimento a ciascun file dall'unità B all'unità A. In questo modo il lettore musicale può trovare e accedere facilmente a tutti i file musicali.
Utilizzando Symlink
I collegamenti simbolici possono essere utilizzati in due modi: per collegare un'intera directory o un singolo file. Ecco come crearli.
Collegamento simbolico a un file
Per collegare in modo simbolico un file, aprire prima un terminale. Quindi, cd nella directory con il file da collegare.
cd ~/path/to/file
Crea il link simbolico. Tieni a mente dove dovrebbe andare il link.
ln -s original-file /path/where/link/goes
Collegamento simbolico a una cartella
ln -s /path/to/original/folder /path/where/linked/folder/goes
Elimina un collegamento simbolico
cd /path/where/symlink/is rm symlinkname unlink symlinkname
Che cos'è un attacco Bind?
Un bin-mount è un modo per mostrare il contenuto di unocartella una volta posizionata sul file system in una directory diversa. Il montaggio di bind suona molto link che collega simbolicamente una cartella, ma è molto diverso. Il bind mount è molto utile. Gli amministratori di sistema utilizzano spesso questo metodo per aggiungere rapidamente più spazio di archiviazione a una cartella al volo quando il file system del sistema principale è "sola lettura". I bind-mount possono anche essere usati per associare rapidamente una condivisione di rete a una directory locale, senza la necessità di impostare un mount point nel file fstab, ecc.

Usare i bind mount con il comando kernel Linux integrato
Il kernel di Linux ha un comando bind incorporato. È per questo motivo che gli utenti possono facilmente montare facilmente i contenuti delle directory sul file system. Ecco come farlo.
Pensa a una directory che contiene file che desideri montare in un'altra posizione. Quando hai in mente la posizione, pensa al luogo in cui desideri montarla.
In questo esempio, assoceremo una directory musicale da un disco rigido all'altro.
sudo mount --bind /mnt/DataDrive/Music /home/user/Music
Smonta il bind mount con:
umount /home/derrik/Music
BindFS
Prima di creare un bind mount, dovrai farloinstalla bindfs. È uno strumento che rende possibile il montaggio del binding e aggiunge anche funzionalità extra (impostazioni delle autorizzazioni, mirroring migliore e così via). Ecco come ottenerlo sulla tua distribuzione Linux:
Ubuntu
sudo apt install bindfs
Debian
sudo apt-get install bindfs
Arch Linux
Sfortunatamente, Bindfs non è nelle fonti ufficiali del software Arch. Se gli utenti desiderano utilizzare bindfs, dovranno invece installare questo pacchetto AUR.
Fedora
sudo dnf install bindfs
OpenSUSE
sudo zypper install bindfs
Altri Linux
Per ottenere bindfs sulla distribuzione Linux di tua scelta, prendi in considerazione di visitare il sito Web ufficiale di bindfs. In alternativa, apri il gestore pacchetti sul tuo PC Linux, cerca "bindfs" e installalo!
Uso di Bindfs per Bind-mount
L'uso di bindfs ha i suoi vantaggi. Il comando integrato bind del kernel funziona in un attimo, ma è molto semplice e non consente alcune funzionalità avanzate come la limitazione dell'accesso ai bind e così via. Ecco come utilizzare i bindf.
Effettuare un montaggio di sola lettura
bindfs --perms=a-w /path/to/the/original/directory/ /path/to/bind/to/
Crea un supporto di lettura / scrittura
bindfs /path/to/the/original/directory /path/to/bind/to
Smonta un innesto bindfs
sudo umount /path/to/bind/
Conclusione
Operazioni banali come legami e legami simbolicii mount sono probabilmente l'argomento meno esplorato su Linux a causa del fatto che sono piuttosto poco interessanti e di solito non vengono utilizzati dagli utenti generici. Il fatto è: quando scopri che i collegamenti simbolici ti consentono di accedere rapidamente e facilmente ai file ovunque, o che i montaggi di associazione possono rendere incredibilmente facile imbullonare spazio di archiviazione aggiuntivo ovunque tu voglia, questi argomenti diventano molto più interessanti.
Commenti