Che cos'è il file fstab di Linux e come funziona?
Se stai usando Linux, è probabile che tu abbia bisogno di cambiare alcune opzioni per i tuoi file system. Conoscere fstab può rendere l'intero processo molto più semplice ed è molto più facile di quanto si pensi.
Cos'è Fstab?
Fstab è la tabella del file system del sistema operativo. Se vuoi una revisione dei file system, assicurati di dare un'occhiata al nostro altro articolo, spiega la HTG: Quale file system Linux dovresti scegliere? Ai vecchi tempi, era il modo principale in cui il sistema montava automaticamente i file. Al giorno d'oggi, è possibile collegare un'unità USB di qualsiasi tipo e verrà visualizzata solo in Nautilus come in Windows e Mac OS, ma una volta era necessario montare manualmente tali dischi in una cartella specifica utilizzando " montare "comando". Questo è vero per i DVD, i CD e persino i dischetti (ricordate quelli?).
Allora, la tua unica alternativa era dire al computer che ogni volta che un dispositivo specifico era collegato, dovrebbe essere montato automaticamente in un posto specifico. Questo è dove è arrivato fstab, ed è stato fantastico. Supponi di aver scambiato i dischi rigidi sul controller IDE o SCSI. Il computer potrebbe caricare i file system in un ordine diverso, potenzialmente rovinando tutto. Fstab è configurato per cercare specifici file system e montarli automaticamente in un modo desiderato ogni volta, evitando che si verifichi una miriade di disastri.
Il tuo file Fstab
Il file fstab si trova in:
/ Etc / fstab
Diamo un'occhiata al mio file fstab, dovremmo?
Vedrai sicuramente le differenze, ma se vuoi seguire il tuo fstab basta inserire questo comando in un terminale:
Puoi anche usare gedit se non ti senti a tuo agio con nano.
Le opzioni ovvi
Noterai che tutte le voci iniziano con UUID. Potresti ricordare di averlo visto in uno dei nostri articoli precedenti, Come scegliere uno schema di partizione per il tuo PC Linux, ma lo spiegheremo di nuovo comunque. Ad ogni file system, durante la formattazione, viene assegnato un identificatore univoco universale, che porta alla tomba. Poiché non può essere modificato, questo è il modo ideale per selezionare i file system da montare, specialmente per quelli importanti. Diciamo che la tua partizione / home è su un secondo disco fisso e finisci per spostarlo su un disco rigido esterno; fstab troverà ancora quella partizione e la monterà correttamente, evitando un avvio fallito. Se si passa a (o si blocca usando) il vecchio metodo di usare identificatori di dispositivo per selezionare le partizioni (cioè / dev / sda1), questo vantaggio scompare perché i dischi rigidi e le partizioni vengono conteggiati dai loro controllori e possono quindi cambiare.
Modifica: l'utilizzo degli UUID nel file fstab, sebbene conveniente per la maggior parte degli utenti domestici, presenta alcuni grossi avvertimenti. Questo non funziona quando si usano dispositivi come "assemblati" o "basati sulla rete". Se sei più di un utente avanzato, o pensi di utilizzare cose come RAID software in futuro, è meglio non usare gli UUID.
La prossima sezione di fstab, come tutte le successive, è separata da uno spazio o una scheda, o da una combinazione di essi. Qui troverai il punto di mount. Come puoi vedere, ho un punto di mount root (/), uno swap e due che ho aggiunto manualmente per le mie unità di archiviazione di rete condivise. Se stai aggiungendo una voce a fstab, dovrai creare manualmente il punto di montaggio prima di riavviare il computer (e le modifiche avranno effetto).
La prossima è la sezione che identifica il tipo di file system sulla partizione. Molti, come ext2 / 3/4, ReiserFS, jFS, ecc. Sono letti nativamente da Linux. È possibile che il tuo sistema particolare abbia ancora bisogno di avere pacchetti particolari installati per poter leggere e scrivere su di essi. Gli esempi perfetti sono le mie partizioni NTFS; puoi vedere che sto usando il driver ntfs-3g per accedervi.
The Scarier Stuff
Le prossime sezioni sono ciò che di solito spaventano i nuovi arrivati, ma non sono davvero così complicati. C'è una vasta gamma di opzioni disponibili, ma ce ne sono una manciata o molto comune. Diamo un'occhiata a loro. (L'opzione predefinita è prima, seguita da alternative, ma dato che le distro di Linux possono essere molto diverse, il tuo chilometraggio può variare.)
- auto / noauto: specifica se la partizione deve essere automaticamente montata all'avvio. Puoi bloccare partizioni specifiche dal montaggio all'avvio usando "noauto".
- exec / noexec: specifica se la partizione può eseguire binari. Se si dispone di una partizione scratch su cui si effettua la compilazione, ciò sarebbe utile, o forse se si ha / home su un file system separato. Se sei preoccupato per la sicurezza, cambia questo in "noexec".
- ro / rw: "ro" è di sola lettura e "rw" è di lettura-scrittura. Se vuoi essere in grado di scrivere su un file system come utente e non come root, dovrai specificare "rw".
- sync / async: questo è interessante. "Sync" impone che la scrittura avvenga immediatamente all'esecuzione del comando, che è l'ideale per i dischetti (quanto di un geek sei?) E le unità USB, ma non è del tutto necessaria per gli hard disk interni. Ciò che fa "async" è che il comando possa essere eseguito su un periodo di tempo trascorso, forse quando l'attività dell'utente si interrompe e così via. Hai mai ricevuto un messaggio che ti chiedeva "attendi che i cambiamenti vengano scritti sull'unità?" Di solito è questo il motivo.
- nouser / user: questo permette all'utente di avere i privilegi di montaggio e smontaggio. Una nota importante è che "utente" implica automaticamente "noexec", quindi se hai bisogno di eseguire binari e continuare a montare come utente, assicurati di usare esplicitamente "exec" come opzione.
Queste opzioni sono separate da una virgola e senza spazi e possono essere inserite in qualsiasi ordine. Se non si è sicuri delle impostazioni predefinite, è possibile specificare in modo esplicito le opzioni. Le cose che vengono montate da luoghi temporanei (come USB) non seguiranno questo schema di base a meno che tu non abbia creato voci per loro (da UUID) in fstab. È comodo quando vuoi che un disco rigido esterno si monti sempre in un modo particolare, perché le normali unità thumb drive e simili non saranno interessate.
È possibile vedere che le mie due unità di archiviazione hanno privilegi di montaggio utente abilitati, accesso in lettura-scrittura abilitato e l'auto-montaggio è attivato. Non compilo molto software, ma quando lo faccio aggiungo l'opzione "exec" alla fine dell'elenco.
Dumping e Fscking
L'opzione successiva è un valore binario ("0" per false e "1" per vero) per "dumping". Questo è un metodo di backup obsoleto per i casi in cui il sistema è andato giù. Dovresti lasciare questo come "0".
L'ultima opzione è un valore numerico per "passare". Questo indica al sistema l'ordine in cui fsck (pronunciare quello che ti piace), o eseguire un controllo del file system. Se un disco ha un'opzione di "0", verrà saltato, come le mie unità di archiviazione formattate NTFS. Il file system di root dovrebbe sempre essere "1" e altri file system possono andare in seguito. Questo funziona meglio per journaling di file system come ext3 / 4 e ReiserFS. I vecchi file system come FAT16 / 32 e ext2 possono richiedere un po 'di tempo, quindi è meglio spegnere il fscking e farlo periodicamente da soli.
Ora che sai cosa stai facendo, puoi impazzire con il montaggio automatico e simili. È molto comodo quando hai un sacco di partizioni che devono essere gestite. Ricordati sempre di fare un backup nel caso qualcosa vada storto, ma divertiti, e assicurati di lasciare le tue esperienze nei commenti!