Ricerca nel sito web

Spiegazione del file system Linux: caricamento di avvio, partizionamento del disco, BIOS, UEFI e tipi di file system


Il concetto di caricamento dell'avvio, partizionamento del disco, tabella delle partizioni, BIOS, UEFI, tipi di file system, ecc. è poco conosciuto dalla maggior parte di noi. Ci imbattiamo in questi termini molto spesso, ma raramente ci prendiamo la briga di conoscerli e il loro significato nei dettagli. Questo articolo nel tentativo di colmare questa lacuna nel modo più semplice possibile.

Tabella delle partizioni

Una delle primissime decisioni che incontriamo durante l'installazione di una distribuzione Linux è il partizionamento del suo disco, il file system da utilizzare, l'implementazione della crittografia per la sicurezza che varia con il cambiamento dell'architettura e della piattaforma. Una delle architetture più utilizzate, INTEL, sta subendo alcune modifiche ed è importante comprendere queste modifiche che, d'altro canto, richiedono la conoscenza del processo di avvio.

Molti sviluppatori eseguono sia Windows che Linux sulla stessa macchina, il che potrebbe essere una questione di preferenza o necessità. La maggior parte dei bootloader di oggi sono abbastanza intelligenti da riconoscere un numero qualsiasi di sistemi operativi sulla stessa macchina e fornire un menu per avviare quello preferito. Un altro modo per raggiungere lo stesso obiettivo è utilizzare la virtualizzazione utilizzando Xen, QEMU, KVM o qualsiasi altro strumento di visualizzazione preferito.

BIOS contro UEFI

Se ricordo bene, fino alla fine degli 90il BIOS, che sta per Basic Input/Output System, era l'unico modo per avviare un sistema Intel. Il BIOS conserva le informazioni di partizionamento in un'area speciale chiamata Master Boot Record (MBR) in modo tale che il codice aggiuntivo venga memorizzato nel primo settore di ogni partizione avviabile.

Alla fine degli 90l'intervento di Microsoft con Intel ha portato alla Universal Extensible Firmware Interface (UEFI), il cui scopo iniziale era quello di avviare in modo sicuro. Questo meccanismo di avvio si è rivelato una sfida soprattutto per i rootkit che si attaccano ai settori di avvio ed erano difficili da rilevare con il BIOS.

Avvia con il BIOS

L'avvio con BIOS richiede l'inserimento dei codici di avvio o della sequenza di avvio nell'MBR che si trova nel primo settore del disco di avvio. Nel caso in cui sia installato più di un sistema operativo, il boot loader installato viene sostituito da un boot loader comune che inserisce automaticamente i codici di avvio su ogni disco avviabile durante l'installazione e l'aggiornamento, il che significa che l'utente può scegliere di avviare qualsiasi sistema operativo installato.

Tuttavia si è visto, specialmente su Windows, che un boot loader non Windows non aggiornerà il sistema, specialmente alcuni programmi, ad esempio IE, ma ancora una volta non esiste una regola ferrea né è documentata da nessuna parte .

Avvia con UEFI

UEFI è l'ultima tecnologia di avvio sviluppata in stretta collaborazione di Microsoft con Intel. UEFI richiede che il firmware da caricare sia firmato digitalmente, un modo per impedire che i rootkit vengano collegati alla partizione di avvio. Tuttavia il problema nell'avvio di Linux utilizzando UEFI è complesso. L'avvio di Linux in UEFI richiede che le chiavi utilizzate siano rese pubbliche sotto GPL, il che è contrario al protocollo Linux.

Tuttavia è ancora possibile installare Linux secondo le specifiche UEFI disabilitando "Secure boot" e abilitando "Legacy Boot". I codici di avvio in UEFI sono posizionati nelle sottodirectory di /EFI, partizione speciale nel primo settore del disco.

Tipi di file system Linux

Una distribuzione Linux standard offre la scelta di partizionare il disco con i formati di file elencati di seguito, ognuno dei quali ha un significato speciale ad esso associato.

  1. ext2
  2. ext3
  3. ext4
  4. jfs
  5. ReiserFS
  6. XFS
  7. Btrfs

ext2, ext3, ext4

Queste sono la versione progressiva dell'Extended Filesystem (ext), che è stato sviluppato principalmente per MINIX. La seconda versione estesa (ext2) era una versione migliorata. Ext3 ha aggiunto miglioramenti alle prestazioni. Ext4 rappresentava un miglioramento delle prestazioni oltre a fornire funzionalità aggiuntive.

Leggi anche: Cos'è Ext2, Ext3 ed Ext4 e come creare e convertire file system Linux

JFS

Il Journaled File System (JFS) è stato sviluppato da IBM per AIX UNIX ed è stato utilizzato come alternativa al sistema ext. JFS è attualmente un'alternativa a ext4 e viene utilizzato dove è richiesta stabilità con l'uso di pochissime risorse. Quando la potenza della CPU è limitata, JFS torna utile.

ReiserFS

È stato introdotto come alternativa a ext3 con prestazioni migliorate e funzionalità avanzate. C'è stato un tempo in cui il formato file predefinito di SuSE Linux era ReiserFS ma in seguito Reiser cessò l'attività e SuSe non ebbe altra scelta che tornare a ext3 . ReiserFS supporta dinamicamente l'estensione del file system, che era una funzionalità relativamente avanzata ma il file system mancava di determinate aree di prestazioni.

XFS

XFS era un JFS ad alta velocità che mirava all'elaborazione I/O parallela. La NASA utilizza ancora questo file system sul proprio server di archiviazione da 300+ terabyte.

Btrfs

B-Tree File System (Btrfs) si concentra sulla tolleranza agli errori, sull'amministrazione divertente, sul sistema di riparazione, sulla configurazione di archiviazione di grandi dimensioni ed è ancora in fase di sviluppo. Btrfs non è consigliato per il sistema di produzione.

Formato file cluster

Il file system in cluster non è necessario per l'avvio ma è più adatto in un ambiente condiviso dal punto di vista dell'archiviazione.

Formato file non Linux

Esistono molti formati di file non disponibili su Linux ma utilizzati da altri sistemi operativi. Ad esempio, NTFS di Microsoft, HFS di Apple/Mac OS, ecc. La maggior parte di questi può essere utilizzata sotto Linux montandoli utilizzando determinati strumenti come ntfs-3g per montare il file system NTFS ma non preferito sotto Linux.

Formato file Unix

Esistono alcuni formati di file ampiamente utilizzati in Linux ma non preferiti in Linux appositamente per l'installazione del sistema root Linux. ad esempio, UFS di BSD.

Ext4 è il file system Linux preferito e più utilizzato. In alcuni casi speciali vengono utilizzati XFS e ReiserFS. Btrfs è ancora utilizzato in un ambiente sperimentale.

Partizionamento del disco

La prima fase è il partizionamento del disco. Durante il partizionamento dovremmo tenere a mente i punti seguenti.

  1. Partizionare tenendo presente il backup e il ripristino.
  2. Segno di limitazione dello spazio nella partizione.
  3. Gestione disco – Funzione amministrativa.

Gestione del volume logico

LVM è un partizionamento complesso utilizzato nell'installazione di archivi di grandi dimensioni. La struttura LVM si sovrappone all'effettivo partizionamento del disco fisico.

Scambio

Swap viene utilizzato per il paging della memoria in Linux specialmente durante l'ibernazione del sistema. La fase corrente del sistema viene scritta su Swap quando il sistema viene messo in pausa (Ibernazione) in un determinato momento.

Un sistema che non andrà mai in ibernazione necessita di uno spazio di swap pari alla dimensione della sua RAM.

Crittografia

L'ultima fase è la crittografia che garantisce la sicurezza dei dati. La crittografia può essere a livello di disco o di directory. Nella crittografia del disco, l'intero disco viene crittografato e può richiedere alcuni tipi di codici speciali per decrittografarlo.

Tuttavia è una questione complessa. Il codice di decrittazione non può rimanere sullo stesso disco sottoposto a crittografia, quindi abbiamo bisogno di un hardware speciale o lasciamo che lo faccia la scheda madre.

La crittografia del disco è relativamente facile da ottenere ed è meno complessa. In questo caso il codice di decrittazione rimane sullo stesso disco, da qualche parte in una directory diversa.

La crittografia del disco è necessaria nella creazione di server e potrebbe rappresentare un problema legale in base alla posizione geografica in cui la stai implementando.

Qui in questo articolo, abbiamo provato a fare luce sulla gestione del file system e sulla gestione del disco in modo molto più approfondito. È tutto per ora. Sarò di nuovo qui con un altro articolo interessante che vale la pena conoscere. Fino ad allora, resta sintonizzato e connesso a Tecmint e non dimenticare di fornirci il tuo prezioso feedback nella sezione commenti qui sotto.

Leggi anche: Spiegazione della struttura delle directory Linux e dei percorsi dei file importanti