7.3. File System
7.3.1. File system Ext4
Nota
Per file system molto grandi il processo mkfs.ext4
può richiedere un periodo di tempo molto lungo durante l'inizializzazione di tutte le tabelle inode nel file system. Questo processo può essere rinviato con l'opzione -E lazy_itable_init=1
. Se utilizzate questa impostazione i processi del kernel continueranno ad inizializzare il file system dopo il suo processo di montaggio. La velocità con la quale viene eseguito questo processo può essere controllata con l'opzione -o init_itable=n
del comando mount
, dove la quantità di tempo per eseguire il processo è di circa 1/n. Il valore predefinito per n
è 10
.
Poichè alcune applicazioni non eseguono un fsync()
corretto dopo la modifica del nome di un file esistente, o dopo un processo di riscrittura o troncamento, ext4 esegue il default su sincronizzazione automatica dei file dopo operazioni replace-via-rename e replace-via-truncate. Questo comportamento è consistente con i comportamenti del file system ext3 più vecchi. Tuttavia le operazioni fsync()
possono richiedere molto tempo, per questo motivo se il suddetto processo automatico non è necessario usare l'opzione -o noauto_da_alloc
con il comando mount
per disabilitarlo. Ciò significa che l'applicazione deve esplicitamente usare fsync()
per rendere i dati persistenti.
Per impostazione predefinita viene conferita al journal commit I/O una priorità leggermente più elevata rispetto all'I/O normale. Tale priorità può essere controllata con l'opzione journal_ioprio=n
del comando mount
. Il valore predefinito è 3
. La gamma di valori validi va da 0 a 7, il valore 0 rappresenta la priorità più alta di I/O.
mkfs
e di ottimizzazione consultare le pagine man di mkfs.ext4(8)
e mount(8)
ed il file Documentation/filesystems/ext4.txt
nel pacchetto kernel-doc.