LINKS

Precedente
Programma
Seguente
Bastard Operator From Hell!
ln -s dir_src_kernel /usr/src/linux
  Quando si compila il kernel si deve sempre farlo con i sorgenti in /usr/src/linux.
Se si hanno sorgenti di diverse versioni, un symlink permette di gestirle senza problemi.
find / -lname start.sh
  Cerca in tutto il file system symlinks al file start.sh.
Linux et cetera...
Linux *nix Win-DOS
ln ln Shortcut (collegamento)
in Windows
Tips & Tricks
Per trovare a quale file corrisponde un hard link eseguire: ls -i per visualizzare l'inode del link e find / -inum #inode per trovare tutti i file con l'inode specificato.

Se si crea un un link mettendo come nome_destinazione un file esistente tale file viene sovrascritto

Definizioni

Le informazioni riguardanti un oggetto (file o directory) di un filesystem cono contenute in un inode, che viene identificato da un numero progressivo e descrive le caratteristiche base di un oggetto: permessi, data di modifica, tipo, posizione ecc.

Il comando ln crea un link (alias) di un file o directory.
Quando si opera sul link è come se si operasse direttamente sul file tranne quando si rimuove il link (non si cancella il file).

Per default ln crea un hard link: di fatto un altro nome per un file esistente, originale e link sono indistinguibili, condividono lo stesso inode, non si possono fare hard link fra file system diversi e su directory.

Con l'opzione -s (molto usata) si crea un soft link o symlink: sono un tipo speciale di file che si riferiscono ad un file (inode) diverso, il symlink può essere fatto su filesystem diversi (nfs, cdrom ecc.) e su file che non esistono. Rispetto ad un hard link, è più facile capire di quale file sono un link.

L'uso di link è completamente trasparente e NON impatta sulle performance del sistema.

Comandi sui link
ln [opzioni] nome_sorgente [nome_destinazione]
Nella prima forma si crea un link da nome_sorgente a nome_destinazione dove nome_destinazione può essere omesso per fare un link alla directory corrente.
ln [-s] nomefile [nomelink] Crea un link (simbolico con -s) a nomefile che si chiama nomelink (se omesso viene mantenuto nomefile)