7.3. File System


7.3.1. File system Ext4

Il file system ext4 è una estensione scalabile del file system ext3 predefinito disponibile in Red Hat Enterprise Linux 5. Ext4 è ora il file system predefinito per Red Hat Enterprise Linux 6 ed è supportato con una dimensione massima di 16 TB. Viene supportato altresì un file singolo con dimensione massima di 16TB. Esso rimuove il limite della sottodirectory 32000 presente in ext3.

Nota

Per file system più grandi di 16TB è consigliato l'uso di un file system con capacità elevate scalabili come ad esempio XFS. Per maggiori informazioni consultare Sezione 7.3.2, «Il file system XFS».
Le impostazioni predefinite del file system ext4 sono ottimali per la maggior parte dei carichi di lavoro, ma se il comportamento del file system influenza negativamente le prestazioni, allora sono disponibili diverse opzioni di ottimizzazione:
Inizializzazione tabella inode

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.

Comportamento di Auto-fsync

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.

Priorità I/O del journal

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.

Per altre opzioni 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.
Red Hat logoGithubRedditYoutubeTwitter

Formazione

Prova, acquista e vendi

Community

Informazioni sulla documentazione di Red Hat

Aiutiamo gli utenti Red Hat a innovarsi e raggiungere i propri obiettivi con i nostri prodotti e servizi grazie a contenuti di cui possono fidarsi.

Rendiamo l’open source più inclusivo

Red Hat si impegna a sostituire il linguaggio problematico nel codice, nella documentazione e nelle proprietà web. Per maggiori dettagli, visita ilBlog di Red Hat.

Informazioni su Red Hat

Forniamo soluzioni consolidate che rendono più semplice per le aziende lavorare su piattaforme e ambienti diversi, dal datacenter centrale all'edge della rete.

© 2024 Red Hat, Inc.