Gestione dei file

Come creare hard link Linux?

Come creare hard link Linux?

Il collegamento è una caratteristica interessante in Linux. Nei sistemi operativi simili a UNIX, tutto è un file. Un file è fondamentalmente un collegamento a un inode, un tipo speciale di struttura dati che memorizza tutto su un determinato file tranne il nome originale e il contenuto effettivo.Questa è la caratteristica che collega le leve. Creare un collegamento significa creare un altro file che punta allo stesso inode sottostante di un altro file. In molte situazioni, è un metodo incredibilmente utile.

Scopri come creare hard link in Linux.

Collegamenti reali in Linux

Prima di approfondire, parliamo un po' di hard e soft link. Ci sono alcune differenze fondamentali tra loro. Nel caso di un collegamento reale, può esistere solo nello stesso filesystem, mentre il collegamento simbolico persisterà tra filesystem. Inoltre, può essere eseguito solo su file normali. Inoltre, non puoi creare collegamenti fisici di directory, quindi non crea un ciclo di directory.

Se un file del collegamento reale viene eliminato, rimuove il collegamento dall'inode sottostante.

Il comando ls può stampare l'inode di un file/directory di destinazione.

$ ls -li

Creazione di hard link

Generare un hard link è abbastanza semplice. Per creare collegamenti, ln è lo strumento dedicato disponibile in quasi tutte le distribuzioni Linux.

Usa la seguente struttura di comando per creare un hard link. Nota che la destinazione dovrebbe essere all'interno dello stesso filesystem. Il flag "-v" è per la modalità dettagliata.

$ ln -v


Verifica il risultato.

$ ls -li


Per quanto riguarda l'hard linking della directory, non è consentito. Ipoteticamente, è ancora possibile creare, ma la maggior parte delle distribuzioni Linux disabilita tale funzione, anche se si esegue l'azione con privilegio di root. Per il collegamento alla directory, utilizzare i collegamenti software.

Link morbidi

I collegamenti soft sono comunemente indicati come collegamenti simbolici. Il collegamento software può essere cross-filesystem. Per definizione, non è un file standard, ma piuttosto un file che punta a un file esistente. Qui, il file di collegamento software avrà un valore inode diverso, ma punta al file originale.

Proprio come la creazione di hard link, utilizzeremo lo strumento ln. Per dichiarare di creare un collegamento software, aggiungi il flag "-s".

$ ln -vs


Verifica il risultato.

$ ls -li

Se esiste già un collegamento, è possibile aggiornarlo utilizzando il flag "-f" che forza ln ad aggiornare il collegamento senza alcuna conferma. In alternativa, puoi utilizzare il flag "-i" per la creazione di collegamenti interattivi.

$ ln -sf


Non dimenticare di verificare il risultato.

$ ls -li

Trovare link

Supponendo che ci siano più collegamenti allo stesso file, tenerne traccia può diventare difficile. In una situazione del genere, usa questo metodo per scoprire tutti i collegamenti.

Per questo, abbiamo bisogno del valore inode del file originale. Usa il seguente comando per scoprire il numero di inode.

$ ls -li


Ora usa il numero di inode per scoprire tutti i collegamenti a quel file. Qui, la directory attiva corrente dovrebbe essere la directory in cui si trova il file originale.

$ trova . -inum

Eliminazione dei collegamenti

Se vuoi disabilitare un collegamento reale, il modo per farlo è eliminare il file collegato.

$ rm

Pensieri finali

Il collegamento è uno strumento potente che puoi utilizzare in molte situazioni. Sebbene abbia i suoi limiti, può offrire eccellenti vantaggi a molti scenari.

Interessato ad approfondire il comando ln? Scopri come usare il comando ln.

Buon calcolo!

I migliori giochi di laboratorio dell'app Oculus
Se possiedi un visore Oculus, devi essere informato sul sideloading. Il sideloading è il processo di installazione di contenuti non archiviati sul vis...
I 10 migliori giochi da giocare su Ubuntu
La piattaforma Windows è stata una delle piattaforme dominanti per i giochi a causa dell'enorme percentuale di giochi che si stanno sviluppando oggi p...
I 5 migliori giochi arcade per Linux
Al giorno d'oggi, i computer sono macchine serie utilizzate per i giochi. Se non riesci a ottenere il nuovo punteggio più alto, saprai cosa intendo. I...