linux user group brescia

immagine del castello

Archivio della mailing list

3 - Soddisfazioni a gogo`

Maurizio Paolini paolini a dmf.bs.unicatt.it
Gio 21 Set 2000 12:15:31 UTC
>    Ecco, l'hard link e` ancora un 'oggetto sconosciuto'. So che
> esiste, ma non mi ci sono ancora imbattuto. Che e`?

Diciamo che l'hard link funziona piu' a basso livello rispetto al
link simbolico, in effetti ogni volta che crei un file crei anche un
hard link che permette di raggiungerlo (dalla directory in cui si
trova), si puo' in effetti far puntare ad un file da piu' directories
allo stesso modo.  Attenzione pero':

1. un hard link non si distingue in nessun modo dal file originario,
visto che l'informazione a livello del file system e' gestita allo
stesso modo. Avere degli "hard links" significa avere una struttura
delle directories e dei files non piu' ad albero.  Di conseguenza
non e' possibile dire ai vari comandi di "non seguire gli hard links".
Faccio un esempio: se il documento "doc" sta nella directory A e si
crea un hard link a "doc" dalla directory B, allora "doc" risulta
a tutti gli effetti come uno dei files di "B".  Se poi crei un archivio
con "tar", con entrambe le directories A e B, il file "doc" verra'
salvato DUE volte, e quando estrai i dati ti ritroverai con DUE copie
di "doc".  Con i link simbolici questo rischio non c'e' visto che con
le opzioni di default i link simbolici vengono salvati come link simbolici
(cioe' non viene salvato il file puntato, ma solo l'informazione dove sta).

2. un hard link si puo' creare solo all'interno dello stesso file system
(quindi non puo' attraversare un "mount point"), questo e' ovvio alla luce
di come e' gestito.

In definitiva, nella pratica (per i motivi su esposti) gli hard link vengono
usati molto di rado, e credo che sia indispensabile che un sistemista
abbia sempre BEN presente tutti eventuali hard links che abbia creato.
Ci possono tuttavia essere situazioni in cui possono risultare molto
comodi.

A differenza dell'hard link, il "link simbolico" e' per il file system
un file normale con le informazioni necessarie per raggiungere il file
puntato (la path relativa alla directory, o assoluta).  I vari comandi
possono decidere o meno se "seguire il link" e operare sul file puntato
oppure non seguire il link e operare sul link simbolico stesso.  Un link
simbolico fa riferimento alla struttura complessiva del file system con
tutti gli eventuali file system montati, quindi l'effetto finale spesso
dipende dalla situazione contingente.  Questo va tenuto conto soprattutto
in un ambiente con piu' macchine che hanno dei file system condivisi via
rete (montati via NFS, ad esempio).

mp




Maggiori informazioni sulla lista Lug