Come usare il comando mkfs su Linux

Un terminale Linux su un laptop con un desktop in stile Ubuntu.

Fatmawati Achmad Zaenuri/Shutterstock



È necessario creare un file system prima di poter utilizzare qualsiasi dispositivo di archiviazione dati connesso a un computer Linux. Impara a usare |_+_| e altre utilità per fare proprio questo per tutti i tipi di file system. Ti mostriamo come.

|_+_| Crea file system

Il |_+_| comando crea file system . Su altri sistemi operativi, viene chiamata la creazione di un file system formattazione . Indipendentemente dal suo nome, è il processo che prepara una partizione in modo che possa memorizzare i dati. La partizione ha bisogno di un modo per archiviare i file, sì. Ma ha anche bisogno di un meccanismo per memorizzare i nomi e le posizioni di quei file, insieme ai loro metadati come il timestamp di creazione del file, il timestamp di modifica del file, la dimensione del file e così via. Una volta |_+_| ha creato la struttura necessaria per la gestione e l'archiviazione dei metadati dei file, è possibile iniziare ad aggiungere file alla partizione.





La sintassi è molto semplice. Devi solo dire |_+_| la partizione del dispositivo su cui si desidera creare il file system e il tipo di file system desiderato. Questo è a prima vista. Dietro le quinte, è un po' diverso. Da qualche tempo sulla maggior parte delle distribuzioni Linux |_+_| è stato un involucro per |_+_|. Il |_+_| comando chiama il |_+_| comando e gli passa le opzioni che hai specificato. Povero vecchio |_+_| fa tutto il lavoro ma non ottiene la gloria.

La sintassi di |_+_| è stato aggiornato e il vecchio formato è stato deprecato. Entrambe le forme funzioneranno, ma useremo lo stile moderno in questo articolo.



La scelta dei file system

Il modo moderno di usare |_+_| è quello di digitare mkfs. e poi il nome del file system che si desidera creare.

Annuncio pubblicitario

Per vedere i file system che |_+_| può creare, digitare mkfs e quindi premere il tasto Tab due volte. Non c'è spazio dopo mkfs, basta premere Tab due volte.



L'elenco dei file system disponibili viene visualizzato nella finestra del terminale. Lo screenshot è di Ubuntu 18.04 LTS. Altre distribuzioni possono offrire più o meno opzioni. Li esamineremo e li descriveremo brevemente. Dopo una breve parola sull'inserimento nel diario.

Il journaling è un concetto importante nei file system. I file system registrano le scritture di file in sospeso su un journal. Man mano che ogni file viene scritto, il journal viene aggiornato e i record di scrittura in sospeso vengono aggiornati. Ciò consente al file system di riparare file rotti e parzialmente scritti che si sono verificati a causa di un evento catastrofico come un'interruzione di corrente. Alcuni dei file system meno recenti non supportano l'inserimento nel journal. Quelli che non lo fanno, scrivono sul disco meno frequentemente perché non hanno bisogno di aggiornare il journal. Possono funzionare più velocemente, ma sono più soggetti a danni a causa di scritture di file interrotte.

    Est2: Il primissimo file system per Linux è stato il file system MINIX. Successivamente è stato sostituito dal primo file system mai scritto specificamente per Linux, che era Ext . Ext2 era Il successore di Ext . Ext2 non è un file system journaling. Est3: Questo era il successore di Ext2 e può essere pensato come Ext2 con journaling, che protegge il file system dalla corruzione dei dati causata da arresti anomali e improvvise interruzioni di corrente. Est4Nota: Ext4 è il file system standard per molte distribuzioni Linux. È un file system solido, provato e affidabile. Ha caratteristiche che ridurre la frammentazione dei file e può essere utilizzato con unità, partizioni e file più grandi rispetto a Ext3. BFS: Questo è il File system di avvio , che è progettato per un solo lavoro: per gestire i file nella partizione di avvio. È raro che crei manualmente un file system di avvio. Il tuo processo di installazione di Linux lo farà per te. GRASSO: Il Tabella di allocazione dei file Il file system è stato progettato per i floppy disk da un consorzio di pesi massimi dell'industria informatica. È stato introdotto nel 1977. L'unico motivo per cui utilizzeresti questo file system senza journaling è la compatibilità con i sistemi operativi non Linux. NTFS: Il File system di nuova tecnologia è un file system journaling di Microsoft introdotto con Windows NT. Era il successore di FAT. L'unico motivo per cui utilizzeresti questo file system è la compatibilità con i sistemi operativi non Linux. MINIX: Originariamente creato da Andrew S. Tanenbaum come aiuto educativo, MINIX è un sistema operativo mini-Unix. Al giorno d'oggi, ha lo scopo di fornire un auto-guarigione e tollerante ai guasti sistema operativo . Il MINIX file system è stato progettato come un versione semplificata di Unix File System . Forse se stai sviluppando in modo incrociato su un computer Linux e prendi di mira una piattaforma MINIX, potresti usare questo file system. O forse hai bisogno della compatibilità con un computer MINIX per altri motivi. I casi d'uso per questo file system su un computer Linux non mi saltano all'occhio, ma è disponibile. VFAT: Tabella di allocazione dei file virtuali , è stato introdotto con Windows 95 e ha rimosso il limite di otto caratteri per i nomi di file. Sono diventati possibili nomi di file fino a 255 caratteri. L'unico motivo per cui utilizzeresti questo file system è la compatibilità con i sistemi operativi non Linux. CRAMFS: Il File system ROM compresso è un file system di sola lettura progettato per sistemi embedded e usi specialistici di sola lettura, come nei processi di avvio dei computer Linux. È comune avere un piccolo file system transitorio caricato per primo in modo che i processi di bootstrap possano essere avviati per preparare il vero sistema di avvio da montare. MSDOS: Il file system del Sistema operativo disco Microsoft . Rilasciato nel 1981, è un file system elementare che è il più semplice possibile. La prima versione non aveva nemmeno le directory. Occupa un posto di rilievo nella storia dell'informatica ma, al di là della compatibilità con i sistemi legacy, ci sono poche ragioni per usarlo oggi.

IMPARENTATO: Quale file system Linux dovresti usare?

Un modo sicuro per sperimentare con i file system

La creazione di un file system su una partizione è distruttiva per tutti i dati che potrebbero già risiedere su quella partizione. L'utilizzo di un disco rigido di riserva, o anche di un computer di riserva, è il modo perfetto per sperimentare la creazione e l'utilizzo di diversi file system. Ma ovviamente, molte persone non hanno hardware di riserva in giro, in attesa di essere sperimentato.

Tuttavia, possiamo creare un file immagine e creare file system al suo interno. Una volta montato, possiamo usarlo come se fosse una normale partizione. Possiamo esplorare e sperimentare con i file system senza bisogno di hardware di riserva. Useremo il |_+_| comando a crea il nostro file immagine .

Il file immagine viene creato prendendo i dati di origine e inserendoli in un'immagine. Dobbiamo dire |_+_| dove ottenere i suoi dati di origine. Useremo il |_+_| (file di input) opzione per dire |_+_| usare /dev/zero come origine dati di input. Questo sarà un flusso di zeri.

Annuncio pubblicitario

Il |_+_| (file di output) ci consente di fornire un nome per il file di immagine. Lo chiameremo howtogeek.img.

La dimensione del file immagine è determinata dalla dimensione e dal numero di blocchi che aggiungiamo. Stiamo usando |_+_| (dimensione del blocco) per richiedere una dimensione del blocco di 1 MB e l'opzione |_+_| possibilità di richiedere 250 blocchi. Questo ci darà un file system di 250 MB. Quando emetti questo comando, regola il numero di blocchi in base alle tue esigenze e alla capacità di riserva che hai sul tuo computer Linux.

mkfs

dd if=/dev/zero of=~/howtogeek.img bs=1M count=250

Il file è creato per noi e |_+_| segnala che sono stati creati 250 blocchi per noi, come richiesto.

Possiamo guardare il nostro file immagine con |_+_| :

mkfs

Sono 250 MB come previsto, il che è incoraggiante.

Creazione del file system

Scegliamo un file system da usare. Torneremo indietro nel tempo e utilizzeremo Ext2, che è la prima versione di Ext che questa implementazione di |_+_| può creare. Questo è un file system non journaling, quindi non archiviare nulla di prezioso in esso senza avere backup altrove. Usiamo il |_+_| variante del |_+_| comando e gli diciamo di usare il nostro file immagine come destinazione.

mkfs

Il file system viene creato e vengono visualizzati alcuni dettagli del file system.

Annuncio pubblicitario

Come puoi vedere dal testo evidenziato, |_+_| fa un'apparizione.

Ora abbiamo un contenitore per il file system, il file immagine, che in questo scenario sostituisce un disco rigido. All'interno di quel contenitore, abbiamo creato un file system. Ora dobbiamo montare il file system in modo da poterlo utilizzare.

Questa è una configurazione temporanea, quindi faremo un punto di montaggio all'interno di /mnt chiamato geek. Lo rimuoveremo quando avremo finito.

mkfs

Ora possiamo montare il nostro file immagine.

mkfs

Dobbiamo cambiare il proprietà del file del punto di montaggio in modo da potervi accedere in lettura e scrittura.

mkfs

E ora dovremmo essere in grado di usare il nostro nuovo file system. Entriamo nel file system e copiamo alcuni file su di esso.

mke2fs mkfs

Questo copierà tutti i file con un'estensione a lettera singola dalla directory ~/Documents/Code nel nostro nuovo file system. Verifichiamo che siano stati copiati.

mke2fs

Annuncio pubblicitario

I file sono stati copiati, quindi il nostro file system è stato creato, montato e utilizzato. O così pensiamo. Controlliamo due volte. Dalla nostra home directory, lo faremo smontare il file system . Nota che c'è solo un n in smontare .

mke2fs

Ora, se torniamo a /mnt/geek e controlliamo i file, non dovremmo trovarne nessuno perché sono all'interno del nostro file immagine e questo è stato smontato.

mkfs mkfs

IMPARENTATO: Come montare e smontare i dispositivi di archiviazione dal terminale Linux

Ulteriori esplorazioni

Ora che abbiamo risolto il processo, provare un altro file system dovrebbe essere facile. Questa volta utilizzeremo il file system MINIX. Nella nostra home directory, possiamo creare un nuovo file system all'interno del nostro file immagine esistente.

Stai attento! Se ci sono file importanti nel file system all'interno del file immagine, monta il file immagine e recuperali prima di crei un nuovo file system.

mkfs

Senza alcun suggerimento di chiederti se sei sicuro, il nuovo file system viene creato su quello vecchio. Possiamo montare il nostro file immagine esattamente con lo stesso comando di prima:

dd

Passiamo al nuovo file system in /mnt/geek e vediamo se possiamo creare un file.

dd

if

Annuncio pubblicitario

E, in modo semplice e veloce, abbiamo creato un nuovo file system, lo abbiamo montato e possiamo usarlo.

Rimozione del punto di montaggio

Quando hai finito, possiamo rimuovere il punto di montaggio geek. Per farlo useremo rmdir :

dd of

Giocoleria con il fuoco

Con Linux, come con la maggior parte delle cose, si impara facendo. Il problema con alcuni comandi è che sono potenzialmente distruttivi. Il dilemma è come esercitarsi a usarli senza mettere a rischio il sistema o i dati?

Ora hai un metodo semplice per creare e provare i file system con |_+_| che lascia il tuo computer intatto.

Comandi Linux
File catrame · pv · gatto · tac · chmod · presa · differenza · sed · Con · uomo · spinto · popd · fsck · testdisk · seguito · fd · pandoc · cd · $PATH · awk · giuntura · jq · piega · unico · journalctl · coda · stato · ls · fstab · buttato fuori · meno · chgrp · chown · rev · Guarda · stringhe · genere · rinominare · cerniera lampo · decomprimere · montare · smontare · installare · fdisk · mkfs · rm · rmdir · rsync · df · gpg · noi · nano · mkdir · a partire dal · ln · toppa · convertire · rclone · brandello · SRM
Processi alias · schermo · superiore · Bello · renice · progresso · strace · sistema · tmux · chsh · storia · in · lotto · libero · quale · dmesg · usermod · ps · chroot · xargs · tty · mignolo · lsof · vmstat · tempo scaduto · parete · · uccisione · dormire · sudo · il suo · volta · gruppoaggiungi · usermod · gruppi · lshw · spegnimento · riavviare · fermare · spegni · passwd · lscpu · crontab · Data · bg · fg
Rete netstat · ping · traceroute · ip · ss · chi è · fail2ban · bmon · voi · dito · nmap · ftp · arricciare · wget · chi · chi sono · In · iptables · ssh-keygen · ufw

IMPARENTATO: I migliori laptop Linux per sviluppatori e appassionati

LEGGI SUCCESSIVO
  • & rsaquo; Come usare il comando fsck su Linux
  • › Come installare Arch Linux su un PC
  • › 5 siti Web che ogni utente Linux dovrebbe aggiungere ai segnalibri
  • › Come trovare il tuo Spotify Wrapped 2021
  • & rsaquo; Cyber ​​Monday 2021: le migliori offerte tecnologiche
  • › Che cos'è la protezione anticaduta MIL-SPEC?
  • › Funzioni e formule in Microsoft Excel: qual è la differenza?
  • › La cartella del computer è 40: come la star di Xerox ha creato il desktop
Foto del profilo di Dave McKay Dave McKay
Dave McKay ha usato per la prima volta i computer quando era in voga il nastro di carta perforata, e da allora ha programmato. Dopo oltre 30 anni nel settore IT, ora è un giornalista tecnologico a tempo pieno. Durante la sua carriera ha lavorato come programmatore freelance, manager di un team internazionale di sviluppo software, project manager di servizi IT e, più recentemente, come Data Protection Officer. I suoi scritti sono stati pubblicati da howtogeek.com, cloudavvyit.com, itenterpriser.com e opensource.com. Dave è un evangelista di Linux e un sostenitore dell'open source.
Leggi la biografia completa

Articoli Interessanti