Analizzatore fstab
Controlla mount e rischi di avvio- ✓Nessun problema critico rilevato
Introduzione
L'analizzatore fstab controlla i sei campi di ogni voce di /etc/fstab: dispositivo, punto di mount, tipo di filesystem, opzioni di mount, flag dump e fsck pass. La maggior parte dei fallimenti di avvio e delle sorprese di mount tardivo nasce proprio da questi campi.
fstab(5) è il file di sistema che definisce come i dispositivi a blocchi, le condivisioni di rete e i filesystem vengono montati all'avvio. Una singola riga malformata può ritardare l'avvio, saltare un filesystem necessario o, nel peggiore dei casi, lasciare un servizio in attesa di un mount che non arriva mai.
Obiettivo
- Individuare voci che non hanno esattamente sei campi separati da spazi.
- Individuare punti di mount duplicati, che rendono ambiguo il comportamento del mount.
- Segnalare filesystem di rete (NFS/NFSv4) privi dell'opzione _netdev.
- Validare il campo fsck pass rispetto ai valori consentiti 0, 1 e 2.
Input
- Il contenuto di /etc/fstab (incollato) o una singola riga di mount.
- Le righe di commento (che iniziano con #) e le righe vuote vengono ignorate.
Come funziona
Ogni riga non di commento viene divisa sugli spazi. Se la riga non produce esattamente sei campi, lo strumento segnala un risultato ad alta gravità con il numero di riga e il numero di campi trovati.
Le righe valide vengono controllate per punti di mount duplicati (colonna 2). Se il tipo di filesystem è nfs o nfs4 e il campo opzioni non contiene _netdev, viene suggerito di aggiungerlo affinché il mount attenda la rete. Infine, la colonna 6 (fsck pass) deve essere 0, 1 o 2; qualsiasi altro valore viene segnalato.
Se non viene trovato alcun problema, lo strumento riporta un risultato pulito. I controlli sono deterministici: lo stesso file produce sempre gli stessi risultati.
Esempio testabile
Prova — l'analisi gira localmente nel tuo browser.
Esempio
UUID=1a2b-3c4d / ext4 defaults 0 1 10.20.0.15:/srv/shared /mnt/shared nfs rw,hard,_netdev 0 0
Output atteso
Riga 1: OK — filesystem root con fsck pass valido. Riga 2: OK — mount NFS con _netdev presente. Risultato: nessun problema critico rilevato.
Leggere l'output
- Un risultato alto significa che la riga è malformata o pericolosa così com'è; correggerla prima di riavviare.
- Un avviso significa che la voce probabilmente funzionerà ma può sorprendere all'avvio — ad esempio un mount di rete senza _netdev può bloccare la sequenza di boot.
- Un risultato pulito significa solo che questi controlli passano. Non valida l'UUID del dispositivo, il percorso di export o le opzioni di mount contro il server reale.
Rischi
- Un dispositivo errato o un punto di mount duplicato può oscurare un filesystem e nascondere dati.
- I mount di rete senza _netdev possono far attendere l'avvio a un server irraggiungibile.
- Un fsck pass non valido può saltare un controllo del filesystem o, con pass 1 su più dispositivi, riordinare i controlli.
Limiti
- Lo strumento non verifica che dispositivi o export NFS esistano davvero.
- Non analizza sintassi fstab esotiche come percorsi tra virgolette o spazi escape nei nomi dei dispositivi.
- È un controllo di sintassi e coerenza, non un test di mount.
Riferimenti ufficiali
FAQ
A cosa serve la colonna fsck pass?
La colonna 6 controlla quando fsck verifica il filesystem all'avvio: 0 disabilita il controllo, 1 è il filesystem root, 2 è per gli altri filesystem controllati dopo il root. I valori superiori a 2 non sono validi.
Perché _netdev è importante per NFS?
Senza _netdev il sistema può tentare di montare la condivisione NFS prima che la rete sia attiva, bloccando l'avvio. Con _netdev (o un automount systemd) il mount attende la rete.
Un risultato pulito significa che i miei mount funzioneranno?
No. Lo strumento controlla solo struttura ed errori evidenti. Un percorso di export rotto, un UUID non valido o un server errato falliranno comunque al momento del mount.