4.13. Mount bind e ordine di montaggio di un file system
Se usate l'opzione
bind del comando mount assicuratevi che i file system siano montati nell'ordine corretto. Nel seguente esempio la directory /var/log deve essere montata prima di eseguire il mount bind sulla directory /tmp:
mount --bind /var/log /tmp
# mount --bind /var/log /tmp
L'ordine di montaggio dei file system è determinato nel modo seguente:
- In generale il montaggio dei file system è determinato dall'ordine nel quale il file system appare all'interno del file
fstab. Eccezioni a questa regola sono i file system montati con il flag_netdevo i file system che possiedono i propri scriptinit. - Un file system con il proprio script
initè montato nelle fasi successive del processo di inizializzazione, dopo il file system presente nel filefstab. - File system montati con il flag
_netdevsono montati dopo aver abilitato una rete sul sistema.
Se la configurazione necessita di una creazione di un mount bind sul quale montare un file system GFS2 sarà possibile ordinare il file
fstab nel modo seguente:
- Montate i file system locali necessari per il mount bind.
- Eseguire il mount bind della directory sulla quale montare il file system GFS2.
- Montare il file system GFS2.
Se la configurazione richiede l'esecuzione di un mount bind di una directory locale o file system su di un file system GFS2, anche se elencherete i file system nell'ordine corretto nel file
fstab non sarà possibile montare i file system correttamente poichè il file system GFS2 non verrà montato fino a quando non sarà eseguito lo script init di GFS2. In questo caso è consigliato scrivere uno script init per eseguire il mount bind in modo tale che questa operazione non sia eseguita prima del montaggio del file system GFS2.
Il seguente script è un esempio di script
init personalizzato. Esso esegue un mount bind di due directory su due directory di un file system GFS2. In questo esempio è presente un mount point GFS2 esistente su /mnt/gfs2a, montato al momento dell'esecuzione dello script init di GFS2, dopo l'avvio del cluster.
In questo script d'esempio i valori dell'istruzione
chkconfig indicano quanto di seguito riportato:
- 345 indica i run level nei quali verrà iniziato lo script
- 29 è la priorità d'avvio la quale in questo caso indica che lo script verrà eseguito al momento dell'avvio dopo lo script
initdi GFS2, il quale avrà una priorità di 26 - 73 è la priorità d'arresto, in questo caso indica che lo script verrà arrestato durante il processo di shutdown prima dello script GFS2, il quale ha una priorità d'arresto pari a 74.
I valori d'avvio e d'arresto indicano la possibilità di eseguire manualmente l'azione indicata tramite l'esecuzione di un comando
service start ed un service stop. Per esempio, se lo script è fredwilma allora sarà possibile eseguire service fredwilma start.
Questo script dovrà essere archiviato nella directory
/etc/init.d con gli stessi permessi di altri script presenti in quella directory. Successivamente sarà possibile eseguire un comando chkconfig on per collegare lo script ai run level indicati. Per esempio se lo script è fredwilma allora sarà possibile eseguire chkconfig fredwilma on.