Quale file system Linux dovresti usare?

Pubblicato: 2022-01-29

Durante la formattazione delle partizioni su un PC Linux, vedrai un'ampia varietà di opzioni di file system. Queste opzioni non devono essere schiaccianti. Se non sei sicuro di quale file system Linux usare, c'è una risposta semplice.

La risposta rapida: usa Ext4 se non sei sicuro

Tra poco ci addentreremo e analizzeremo la differenza tra i vari file system, ma se non sei sicuro: usa Ext4.

Ext4 è il file system predefinito sulla maggior parte delle distribuzioni Linux per un motivo. È una versione migliorata del vecchio file system Ext3. Non è il file system più all'avanguardia, ma va bene: significa che Ext4 è solido e stabile.

In futuro, le distribuzioni Linux si sposteranno gradualmente verso BtrFS. BtrFS è ancora all'avanguardia e sta vedendo molto sviluppo, quindi ti consigliamo di evitarlo sui sistemi di produzione. Il rischio di danneggiamento dei dati o altri problemi non vale il potenziale miglioramento della velocità.

CORRELATI: Qual è la differenza tra FAT32, exFAT e NTFS?

Si noti, tuttavia, che questo consiglio "usa Ext4" si applica solo alle partizioni di sistema Linux e ad altre partizioni su disco a cui accederà solo Linux. Se stai formattando un'unità esterna che desideri condividere con altri sistemi operativi, non dovresti utilizzare Ext4 perché Windows, macOS e altri dispositivi non possono leggere i file system Ext4. Ti consigliamo di utilizzare exFAT o FAT32 durante la formattazione di un'unità esterna su Linux.

Annuncio pubblicitario

Se stai configurando le partizioni sull'unità di avvio principale di Linux, ti consigliamo anche di creare una partizione di swap di almeno alcuni GB di dimensione durante la configurazione di tali partizioni. Questa partizione viene utilizzata per lo "spazio di scambio". È simile al file di paging su Windows. Linux scambia la memoria nello spazio di swap quando la sua RAM è piena. Questa partizione deve essere formattata come "swap" invece che con un particolare file system.

Che cos'è il diario?

Una cosa che noterai quando scegli tra i file system è che alcuni di essi sono contrassegnati come file system "journaling" e altri no. Questo è importante.

Il journaling è progettato per prevenire il danneggiamento dei dati da arresti anomali e improvvise interruzioni di alimentazione. Diciamo che il tuo sistema sta scrivendo un file sul disco e perde improvvisamente energia. Senza un diario, il tuo computer non avrebbe idea se il file è stato completamente scritto su disco. Il file rimarrebbe lì sul disco, corrotto.

Con un journal, il tuo computer noterebbe che stava per scrivere un determinato file su disco nel journal, scrivere quel file su disco e quindi rimuovere quel lavoro dal journal. Se l'alimentazione si interrompe durante la scrittura del file, Linux controlla il diario del file system all'avvio e riprende tutti i lavori parzialmente completati. Ciò previene la perdita di dati e il danneggiamento dei file.

Il journaling rallenta leggermente le prestazioni di scrittura del disco, ma ne vale la pena su un desktop o laptop. Non sono così tante spese generali come potresti pensare. Il file completo non viene scritto nel diario. Al contrario, solo i metadati del file, l'inode o la posizione del disco vengono registrati nel diario prima di essere scritti sul disco.

Ogni file system moderno supporta il journaling e ti consigliamo di utilizzare un file system che supporti il ​​journaling durante la configurazione di un desktop o laptop.

Annuncio pubblicitario

I file system che non offrono l'inserimento nel journal sono disponibili per l'uso su server ad alte prestazioni e altri sistemi simili in cui l'amministratore desidera ottenere prestazioni extra. Sono ideali anche per le unità flash rimovibili, dove non si desidera il sovraccarico più elevato e le scritture aggiuntive del journaling.

Qual è la differenza tra tutti quei file system Linux?

Mentre Microsoft sviluppa Windows e Apple controlla macOS, Linux è un progetto open source sviluppato dalla comunità. Chiunque (o qualsiasi azienda) con le competenze e il tempo può creare un nuovo file system Linux. Questo è uno dei motivi per cui ci sono così tante opzioni. Ecco le differenze:

  • Ext sta per "File system esteso" ed è stato il primo creato appositamente per Linux. Ha avuto quattro revisioni principali. "Ext" è la prima versione del file system, introdotta nel 1992. Era un importante aggiornamento del file system Minix utilizzato all'epoca, ma manca di funzionalità importanti. Molte distribuzioni Linux non supportano più Ext.
  • Ext2 non è un file system di journaling. Quando è stato introdotto, è stato il primo file system a supportare attributi di file estesi e unità da 2 terabyte. La mancanza di un diario di Ext2 significa che scrive meno su disco, il che lo rende utile per la memoria flash come le unità USB. Tuttavia, anche i file system come exFAT e FAT32 non utilizzano il journaling e sono più compatibili con diversi sistemi operativi, quindi ti consigliamo di evitare Ext2 a meno che tu non sappia di averne bisogno per qualche motivo.
  • Ext3 è fondamentalmente solo Ext2 con il journaling. Ext3 è stato progettato per essere retrocompatibile con Ext2, consentendo la conversione delle partizioni tra Ext2 ed Ext3 senza alcuna formattazione richiesta. È in circolazione da più tempo di Ext4, ma Ext4 esiste dal 2008 ed è ampiamente testato. A questo punto, è meglio usare Ext4.
  • Ext4 è stato progettato anche per essere compatibile con le versioni precedenti. È possibile montare un file system Ext4 come Ext3 o montare un file system Ext2 o Ext3 come Ext4. Include funzionalità più recenti che riducono la frammentazione dei file, consentono volumi e file più grandi e utilizza l'allocazione ritardata per migliorare la durata della memoria flash. Questa è la versione più moderna del file system Ext ed è l'impostazione predefinita sulla maggior parte delle distribuzioni Linux.

  • BtrFS , pronunciato "Butter" o "Better" FS, è stato originariamente progettato da Oracle. È l'acronimo di "B-Tree File System" e consente il pooling di unità, istantanee al volo, compressione trasparente e deframmentazione online. Condivide alcune delle stesse idee che si trovano in ReiserFS, un file system che alcune distribuzioni Linux utilizzavano per impostazione predefinita. BtrFS è progettato per essere un'interruzione netta della serie di file system Ext. Ted Ts'o, il manutentore del file system Ext4, considera Ext4 una soluzione a breve termine e crede che BtrFS sia la via da seguire. Aspettatevi di vedere BtrFS diventare l'impostazione predefinita sia nei server aziendali che nelle distribuzioni Linux desktop consumer nei prossimi anni poiché viene ulteriormente testato.
  • ReiserFS è stato un grande balzo in avanti per i file system Linux quando è stato introdotto nel 2001 e includeva molte nuove funzionalità che Ext non sarebbe mai stato in grado di implementare. ReiserFS è stato sostituito da Reiser4, che ha migliorato molte delle funzionalità che erano incomplete o carenti nella versione iniziale, nel 2004. Ma lo sviluppo di Reiser4 si è bloccato dopo che lo sviluppatore principale, Hans Reiser, è stato mandato in prigione nel 2008. Reiser4 non lo è ancora nel kernel Linux principale ed è improbabile che ci arrivi. BtrFS è la scelta migliore a lungo termine.

    CORRELATI: Come installare e utilizzare ZFS su Ubuntu (e perché vorresti)

  • ZFS è stato progettato da Sun Microsystems per Solaris ed è ora di proprietà di Oracle. ZFS supporta molte funzionalità avanzate tra cui pool di unità, snapshot e striping dinamico del disco: BtrFS porterà molte di queste funzionalità su Linux per impostazione predefinita. Ogni file ha un checksum, quindi ZFS può dire se un file è danneggiato o meno. Sun ZFS open source con licenza Sun CDDL, il che significa che non può essere incluso nel kernel Linux. Tuttavia, puoi installare il supporto ZFS su qualsiasi distribuzione Linux. Ubuntu ora offre anche il supporto ZFS ufficiale a partire da Ubuntu 16.04. Ubuntu utilizza ZFS per impostazione predefinita per i contenitori.
  • XFS è stato sviluppato da Silicon Graphics nel 1994 per il sistema operativo SGI IRX ed è stato portato su Linux nel 2001. È simile a Ext4 in qualche modo, poiché utilizza anche l'allocazione ritardata per aiutare con la frammentazione dei file e non consente snapshot montati. Può essere ingrandito, ma non rimpicciolito, al volo. XFS ha buone prestazioni quando si tratta di file di grandi dimensioni, ma ha prestazioni peggiori rispetto ad altri file system quando si gestisce molti file di piccole dimensioni. Può essere utile per alcuni tipi di server che devono principalmente gestire file di grandi dimensioni.
  • JFS , o "Journaled File System", è stato sviluppato da IBM per il sistema operativo IBM AIX nel 1990 e successivamente portato su Linux. Vanta un basso utilizzo della CPU e buone prestazioni sia per file grandi che piccoli. Le partizioni JFS possono essere ridimensionate dinamicamente, ma non ridotte. Era estremamente ben pianificato e ha il supporto in quasi tutte le principali distribuzioni, tuttavia i suoi test di produzione sui server Linux non sono così estesi come Ext, poiché è stato progettato per AIX. Ext4 è più comunemente usato ed è più ampiamente testato.
  • Lo scambio è un'opzione durante la formattazione di un'unità, ma non è un vero e proprio file system. Viene utilizzato come memoria virtuale e non ha una struttura di file system. Non puoi montarlo per visualizzarne il contenuto. Swap viene utilizzato come "spazio di scratch" dal kernel Linux per archiviare temporaneamente i dati che non possono stare nella RAM. Viene utilizzato anche per il letargo. Mentre Windows memorizza il suo file di paging come file nella sua partizione di sistema principale, Linux riserva semplicemente una partizione vuota separata per lo spazio di scambio.

CORRELATI: Qual è la differenza tra FAT32, exFAT e NTFS?

  • FAT16 , FAT32 ed exFAT : i file system FAT di Microsoft sono spesso un'opzione durante la formattazione di un'unità in Linux. Questi file system non includono un diario, quindi sono ideali per unità USB esterne. Sono uno standard de facto che ogni sistema operativo, Windows, macOS, Linux e altri dispositivi, può leggere. Questo li rende il file system ideale da utilizzare durante la formattazione di un'unità esterna che vorrai utilizzare con altri sistemi operativi. FAT32 è più vecchio. exFAT è l'opzione ideale, poiché supporta file di dimensioni superiori a 4 GB e partizioni di dimensioni superiori a 8 TB, a differenza di FAT32.

Esistono anche altri file system Linux, inclusi file system progettati specificamente per l'archiviazione flash in dispositivi incorporati e su schede SD. Ma queste sono le opzioni che vedrai più frequentemente quando usi Linux.

CORRELATI: I migliori laptop Linux per sviluppatori e appassionati