Sådan bruger du mkfs-kommandoen på Linux

Du skal oprette et filsystem, før du kan bruge nogen datalagringsenhed, der er tilsluttet en Linux-computer. Lær, hvordan du bruger mkfs og andre hjælpeprogrammer til at gøre netop det for alle slags filsystemer. Vi viser dig hvordan.

mkfs laver filsystemer

mkfs kommandoen laver filsystemer. På andre operativsystemer kaldes oprettelse af et filsystem formatering. Uanset navnet er det den proces, der forbereder en partition, så den kan gemme data. Partitionen har brug for en måde at gemme filer på, ja. Men det har også brug for en mekanisme til at gemme navnene og placeringerne af disse filer sammen med deres metadata, såsom filoprettelsestidsstemplet, det filmodificerede tidsstempel, filens størrelse og så videre. Når mkfs har bygget de nødvendige rammer til håndtering og lagring af filmetadata, kan du begynde at tilføje filer til partitionen.

Syntaksen er meget enkel. Du skal bare fortælle mkfs hvilken enhedspartition du vil have filsystemet oprettet på, og hvilken type filsystem du ønsker. Det er på forsiden af ​​det. Bag kulisserne er det lidt anderledes. I nogen tid nu på de fleste Linux-distributioner har mkfs været en indpakning til mke2fs. Kommandoen mkfs kalder kommandoen mke2fs og sender den de muligheder, du har angivet. Stakkels gamle mke2fs udfører alt arbejdet men får intet af æren.

Syntaksen for mkfs er blevet opdateret, og det gamle format er blevet forældet. Begge former fungerer, men vi bruger den moderne stil i denne artikel.

Valget af filsystemer

Den moderne måde at bruge mkfs på er at skrive “mkfs.” og derefter navnet på det filsystem, du ønsker at oprette.

For at se de filsystemer, som mkfs kan oprette, skal du skrive “mkfs” og derefter trykke på Tab-tasten to gange. Der er ingen plads efter “mkfs”, bare tryk på Tab to gange.

Listen over tilgængelige filsystemer vises i terminalvinduet. Skærmbilledet er fra Ubuntu 18.04 LTS. Andre distributioner kan tilbyde flere eller færre muligheder. Vi vil gennemgå disse og beskrive hver enkelt kort. Efter et hurtigt ord om journalføring.

Journalføring er et vigtigt begreb i filsystemer. Filsystemerne registrerer de afventende filskrivninger til en journal. Efterhånden som hver fil skrives til, opdateres journalen, og de ventende skriveposter opdateres. Dette gør det muligt for filsystemet at reparere ødelagte, delvist skrevne filer, der er opstået på grund af en katastrofal hændelse, såsom et strømafbrydelse. Nogle af de ældre filsystemer understøtter ikke journalføring. De, der ikke gør det, skriver sjældnere til disken, fordi de ikke behøver at opdatere journalen. De kan fungere hurtigere, men de er mere tilbøjelige til at blive beskadiget på grund af afbrudt filskrivning.

  Sådan installeres Terminus på Linux

Ext2: Det allerførste filsystem til Linux var MINIX-filsystemet. Det blev senere erstattet af det første filsystem nogensinde skrevet specifikt til Linux, hvilket var Udv. Ext2 var Exts efterfølger. Ext2 er ikke et journaliseringsfilsystem.
Ext3: Dette var efterfølger til Ext2, og kan opfattes som Ext2 med journalføring, som beskytter dit filsystem mod datakorruption forårsaget af nedbrud og pludseligt strømtab.
Ext4: Ext4 er standardfilsystemet til maj Linux-distributioner. Det er et solidt, gennemprøvet og pålideligt filsystem. Det har funktioner, der reducere filfragmentering og kan bruges med større drev, partitioner og filer end Ext3.
BFS: Dette er Boot filsystem, som er designet til ét job og kun ét: til at håndtere filerne i boot-partitionen. Det er sjældent, at du vil oprette et boot-filsystem i hånden. Din Linux installationsproces vil gøre dette for dig.
FEDT: Den Filfordelingstabel filsystemet blev designet til disketter af et konsortium af sværvægtere fra computerindustrien. Det blev introduceret i 1977. Den eneste grund til, at du ville bruge dette ikke-journalføringsfilsystem, er for kompatibilitet med ikke-Linux-operativsystemer.
NTFS: Den Ny teknologi filsystem er et Microsoft journaling filsystem introduceret med Windows NT. Det var efterfølgeren til FAT. Den eneste grund til, at du vil bruge dette filsystem, er for kompatibilitet med ikke-Linux-operativsystemer.
MINIX: Oprindeligt skabt af Andrew S. Tanenbaum som pædagogisk hjælpemiddel, MINIX er et “mini-Unix” operativsystem. I dag er det rettet mod at give et selvhelbredende og fejltolerant operativsystem. MINIX-filsystemet blev designet som en forenklet version af Unix-filsystemet. Hvis du krydsudvikler på en Linux-computer og målretter mod en MINIX-platform, kan du måske bruge dette filsystem. Eller måske har du brug for kompatibilitet med en MINIX-computer af andre årsager. Brugstilfælde til dette filsystem på en Linux-computer springer ikke ud af mig, men det er tilgængeligt.
VFAT: Virtuel filfordelingstabel, blev introduceret med Windows 95 og fjernede grænsen på otte tegn for filnavne. Filnavne på op til 255 tegn blev mulige. Den eneste grund til, at du vil bruge dette filsystem, er for kompatibilitet med ikke-Linux-operativsystemer.
CRAMFS: Den Komprimeret ROM-filsystem er et skrivebeskyttet filsystem designet til indlejrede systemer og specialiserede skrivebeskyttede anvendelser, såsom i opstartsprocesserne på Linux-computere. Det er almindeligt at have et lille, forbigående filsystem indlæst først, så bootstrap-processer kan startes for at forberede det “rigtige” boot-system, der skal monteres.
MSDOS: Filsystemet for Microsoft Disk operativsystem. Udgivet i 1981, det er et elementært filsystem, der er så grundlæggende, som det bliver. Den første version havde ikke engang mapper. Det har en fremtrædende plads i computerhistorien, men ud over kompatibilitet med ældre systemer er der ringe grund til at bruge det i dag.

  Sådan installeres Paper GTK-temaet på Linux

En sikker måde at eksperimentere med filsystemer

Oprettelse af et filsystem på en partition er ødelæggende for alle data, der allerede findes på den partition. Brug af en ekstra harddisk – eller endda en ekstra computer – er den perfekte måde at eksperimentere med at oprette og bruge forskellige filsystemer. Men selvfølgelig har mange mennesker ikke ekstra hardware liggende og venter på at blive eksperimenteret med.

Vi kan dog oprette en billedfil og oprette filsystemer inden for den. Når vi først har monteret det, kan vi bruge det, som om det var en almindelig partition. Vi kan udforske og eksperimentere med filsystemer uden behov for ekstra hardware. Vi bruger dd-kommandoen til oprette vores billedfil.

Billedfilen oprettes ved at tage kildedata og lægge dem ind i et billede. Vi er nødt til at fortælle dd, hvor dens kildedata skal hentes. Vi bruger muligheden if (inputfil) til at fortælle dd at den skal bruges /dev/nul som inputdatakilde. Dette vil være en strøm af nuller.

Indstillingen af ​​(outputfil) giver os mulighed for at give et navn til billedfilen. Vi kalder det “wdzwdz.img”.

Størrelsen på billedfilen bestemmes af størrelsen og antallet af blokke, vi tilføjer til den. Vi bruger muligheden bs (blokstørrelse) til at anmode om en blokstørrelse på 1 MB og optællingsmuligheden til at anmode om 250 blokke. Dette vil give os et filsystem på 250 MB. Når du udsteder denne kommando, skal du justere antallet af blokke, så det passer til dine behov og den ledige kapacitet, du har på din Linux-computer.

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

Filen er oprettet til os og dd rapporterer, at der var oprettet 250 blokke til os, som ønsket.

Vi kan se på vores billedfil med ls :

ls -hl

Det er 250 MB som forventet, hvilket er opmuntrende.

Oprettelse af filsystemet

Lad os vælge et filsystem at bruge. Vi går tilbage i tiden og bruger Ext2, som er den tidligste version af Ext, som denne implementering af mkfs kan skabe. Dette er et filsystem uden journalføring, så gem ikke noget værdifuldt i det uden at have sikkerhedskopier andre steder. Vi bruger mkfs.ext2-varianten af ​​mkfs-kommandoen, og vi fortæller den at bruge vores billedfil som målet.

mkfs.ext2 ~/wdzwdz.img

Filsystemet oprettes, og nogle detaljer om filsystemet vises.

Som du kan se af den fremhævede tekst, dukker mke2fs op.

  Sådan bruger du YouTube Music på Linux-skrivebordet

Nu har vi en beholder til filsystemet – billedfilen – som står for en harddisk i dette scenarie. Inde i den container har vi oprettet et filsystem. Nu skal vi montere filsystemet, så vi kan bruge det.

Dette er en midlertidig opsætning, så vi laver en monteringspunkt indenfor /mnt kaldet “nørd.” Vi fjerner det, når vi er færdige.

sudo mkdir /mnt/geek

Nu kan vi montere vores billedfil.

sudo mount ~/wdzwdz.img /mnt/geek

Vi er nødt til at ændre fil ejerskab af monteringspunktet, så vi har læse- og skriveadgang til det.

sudo chown dave:users /mnt/geek/

Og nu skulle vi kunne bruge vores nye filsystem. Lad os skifte til filsystemet og kopiere nogle filer til det.

cd /mnt/geek
cp ~/Documents/Code/*.? .

Dette vil kopiere alle filer med en enkeltbogstavs-udvidelse fra ~/Documents/Code-mappen til vores nye filsystem. Lad os tjekke, at de blev kopieret.

ls

Filerne er blevet kopieret, så vores filsystem er blevet oprettet, monteret og brugt. Eller det tror vi. Lad os dobbelttjekke. Fra vores hjemmemappe afmonterer vi filsystemet. Bemærk, at der kun er et “n” i umount.

sudo umount /mnt/geek

Nu, hvis vi går tilbage til /mnt/geek og tjekker for filer, burde vi ikke finde nogen, fordi de er inde i vores billedfil, og den er blevet afmonteret.

cd /mnt/geek
ls

Yderligere Udforskning

Nu har vi løst processen, og det burde være nemt at prøve et andet filsystem. Vi bruger MINIX-filsystemet denne gang. I vores hjemmemappe kan vi oprette et nyt filsystem inde i vores eksisterende billedfil.

Vær forsigtig! Hvis der er vigtige filer på filsystemet inde i billedfilen, skal du montere billedfilen og hente dem, før du opretter et nyt filsystem.

mkfs.minix ~/wdzwdz.image

Uden nogen antydning af at spørge dig “hvis du er sikker”, oprettes det nye filsystem over det gamle. Vi kan montere vores billedfil med nøjagtig samme kommando som før:

sudo mount ~/wdzwdz.img /mnt/geek

Lad os skifte til det nye filsystem på /mnt/geek og se om vi kan oprette en fil.

touch geek.txt

ls -ahl geek.txt

Og så enkelt og så hurtigt som det, vi har oprettet et nyt filsystem, monteret det, og vi kan bruge det.

Fjernelse af monteringspunktet

Når du er færdig, kan vi fjerne “nørd”-monteringspunktet. For at gøre det vil vi bruge rmdir:

cd /mnt
sudo rmdir geek

Jonglering med ild

Med Linux, som med de fleste ting, lærer du ved at gøre. Problemet med nogle kommandoer er, at de er potentielt ødelæggende. Dilemmaet er, hvordan man øver sig i at bruge dem uden at sætte dit system eller data i fare?

Du har nu en simpel metode til at oprette og afprøve filsystemer med mkfs, som efterlader din computer uberørt.