So verwenden Sie den mkfs-Befehl unter Linux

Sie müssen ein Dateisystem erstellen, bevor Sie ein an einen Linux-Computer angeschlossenes Datenspeichergerät verwenden können. Erfahren Sie, wie Sie es verwenden mkfs und andere Dienstprogramme, um genau das für alle Arten von Dateisystemen zu tun. Wir zeigen Ihnen wie.

mkfs Macht Dateisysteme

Die mkfs Befehl macht Dateisysteme. Auf anderen Betriebssystemen heißt das Erstellen eines Dateisystems Formatierung. Unabhängig vom Namen ist es der Prozess, der eine Partition so vorbereitet, dass sie Daten speichern kann. Die Partition benötigt eine Möglichkeit, Dateien zu speichern, ja. Es benötigt jedoch auch einen Mechanismus, um die Namen und Speicherorte dieser Dateien zusammen mit ihren Metadaten wie dem Zeitstempel der Dateierstellung, dem Zeitstempel der geänderten Datei, der Größe der Datei usw. zu speichern. Wenn mkfs das erforderliche Framework für die Handhabung und Speicherung von Dateimetadaten erstellt hat, können Sie mit dem Hinzufügen von Dateien zur Partition beginnen.

Die Syntax ist sehr einfach. Du sagst es einfach mkfs die Gerätepartition, auf der das Dateisystem erstellt werden soll, und den gewünschten Dateisystemtyp. Das ist auf den ersten Blick. Hinter den Kulissen sieht es etwas anders aus. Seit einiger Zeit auf den meisten Linux-Distributionen mkfs war ein Verpackung zum mke2fs. Die mkfs Befehl ruft die mke2fs Befehl und übergibt ihm die von Ihnen angegebenen Optionen. Armer alter mke2fs macht die ganze arbeit bekommt aber nichts von der Herrlichkeit.

Die Syntax von mkfs wurde aktualisiert und das alte Format ist veraltet. Beide Formen funktionieren, aber wir werden in diesem Artikel den modernen Stil verwenden.

Die Wahl der Dateisysteme

Die moderne Art der Nutzung mkfs ist, “mkfs” einzugeben. und dann den Namen des Dateisystems, das Sie erstellen möchten.


Um die Dateisysteme anzuzeigen, die mkfs erstellen können, geben Sie „mkfs“ ein und drücken Sie dann zweimal die Tabulatortaste. Es gibt kein Leerzeichen nach „mkfs“, drücken Sie einfach zweimal die Tabulatortaste.

Die Liste der verfügbaren Dateisysteme wird im Terminalfenster angezeigt. Der Screenshot stammt von Ubuntu 18.04 LTS. Andere Distributionen bieten möglicherweise mehr oder weniger Optionen. Wir werden diese durchgehen und jeden einzelnen kurz beschreiben. Nach einem kurzen Wort zum Journaling.

Journaling ist ein wichtiges Konzept in Dateisystemen. Das Dateisystem zeichnet die anstehenden Dateischreibvorgänge in einem Journal auf. Wenn in jede Datei geschrieben wird, wird das Journal aktualisiert und die anstehenden Schreibdatensätze werden aktualisiert. Auf diese Weise kann das Dateisystem beschädigte, teilweise geschriebene Dateien reparieren, die aufgrund eines katastrophalen Ereignisses wie einem Stromausfall aufgetreten sind. Einige der älteren Dateisysteme unterstützen kein Journaling. Diejenigen, die dies nicht tun, schreiben weniger häufig auf die Festplatte, da sie das Journal nicht aktualisieren müssen. Sie können schneller arbeiten, sind jedoch anfälliger für Schäden durch unterbrochene Dateischreibvorgänge.

  • Ext2: Das allererste Dateisystem für Linux war das MINIX-Dateisystem. Es wurde später durch das erste Dateisystem ersetzt, das jemals speziell für Linux geschrieben wurde Ext. Ext2 war Nachfolger von Ext. Ext2 ist kein Journaling-Dateisystem.
  • Ext3: Das war der Nachfolger von Ext2, und kann als Ext2 mit Journaling betrachtet werden, das Ihr Dateisystem vor Datenbeschädigung durch Abstürze und plötzlichen Stromausfall schützt.
  • Ext4: Ext4 ist das Standarddateisystem für viele Linux-Distributionen. Es ist ein solides, bewährtes und vertrauenswürdiges Dateisystem. Es hat Funktionen, die Dateifragmentierung reduzieren und kann mit größeren Laufwerken, Partitionen und Dateien als Ext3 verwendet werden.
  • BFS: Dies ist das Boot-Dateisystem, die nur für einen Job konzipiert ist: die Dateien in der Boot-Partition zu handhaben. Es kommt selten vor, dass Sie ein Boot-Dateisystem von Hand erstellen. Ihr Linux-Installationsprozess wird dies für Sie tun.
  • FETT: Die Dateizuordnungstabelle Dateisystem wurde von einem Konsortium von Schwergewichten der Computerindustrie für Disketten entwickelt. Es wurde 1977 eingeführt. Der einzige Grund, warum Sie dieses Nicht-Journaling-Dateisystem verwenden würden, ist die Kompatibilität mit Nicht-Linux-Betriebssystemen.
  • NTFS: Die Dateisystem mit neuer Technologie ist ein Microsoft-Journaling-Dateisystem, das mit Windows NT eingeführt wurde. Es war der Nachfolger von FAT. Der einzige Grund, warum Sie dieses Dateisystem verwenden würden, ist die Kompatibilität mit Nicht-Linux-Betriebssystemen.
  • MINIX: Ursprünglich erstellt von Andrew S. Tanenbaum als pädagogische Hilfe, MINIX ist ein „Mini-Unix“-Betriebssystem. Heutzutage zielt es darauf ab, ein selbstheilendes und fehlertolerantes Betriebssystem bereitzustellen. Das MINIX Dateisystem wurde als ein vereinfachte Version des Unix-Dateisystems. Vielleicht können Sie dieses Dateisystem verwenden, wenn Sie auf einem Linux-Computer übergreifend entwickeln und auf eine MINIX-Plattform abzielen. Oder vielleicht benötigen Sie aus anderen Gründen die Kompatibilität mit einem MINIX-Computer. Anwendungsfälle für dieses Dateisystem auf einem Linux-Computer fallen mir nicht auf, aber es ist verfügbar.
  • VFAT: Virtuelle Dateizuordnungstabelle, wurde mit Windows 95 eingeführt und entfernte die Beschränkung auf acht Zeichen für Dateinamen. Dateinamen mit bis zu 255 Zeichen wurden möglich. Der einzige Grund, warum Sie dieses Dateisystem verwenden würden, ist die Kompatibilität mit Nicht-Linux-Betriebssystemen.
  • CRAMFS: Die Komprimiertes ROM-Dateisystem ist ein schreibgeschütztes Dateisystem, das für eingebettete Systeme und spezielle schreibgeschützte Anwendungen entwickelt wurde, z. B. in den Bootprozessen von Linux-Computern. Es ist üblich, zuerst ein kleines, vorübergehendes Dateisystem zu laden, damit Bootstrap-Prozesse gestartet werden können, um das Einhängen des „echten“ Bootsystems vorzubereiten.
  • MSDOS: Das Dateisystem des Microsoft-Festplattenbetriebssystem. Es wurde 1981 veröffentlicht und ist ein elementares Dateisystem, das so einfach wie möglich ist. Die erste Version hatte nicht einmal Verzeichnisse. Es nimmt einen herausragenden Platz in der Computergeschichte ein, aber abgesehen von der Kompatibilität mit Legacy-Systemen gibt es kaum einen Grund, es heute zu verwenden.

Welches Linux-Dateisystem sollten Sie verwenden?

Eine sichere Methode zum Experimentieren mit Dateisystemen

Das Erstellen eines Dateisystems auf einer Partition ist für alle Daten destruktiv, die sich möglicherweise bereits auf dieser Partition befinden. Die Verwendung einer Ersatzfestplatte – oder sogar eines Ersatzcomputers – ist der perfekte Weg, um mit der Erstellung und Verwendung verschiedener Dateisysteme zu experimentieren. Aber natürlich haben viele Leute keine freie Hardware herumliegen, die darauf wartet, damit experimentiert zu werden.

Wir können jedoch eine Image-Datei erstellen und darin Dateisysteme erstellen. Sobald wir es gemountet haben, können wir es verwenden, als ob es eine normale Partition wäre. Wir können Dateisysteme erkunden und mit ihnen experimentieren, ohne dass zusätzliche Hardware benötigt wird. Wir werden die verwenden dd Befehl an Erstellen Sie unsere Bilddatei.

Die Bilddatei wird erstellt, indem Quelldaten genommen und in ein Bild eingefügt werden. Wir müssen es erzählen dd wo man seine Quelldaten erhält. Wir werden die verwenden if (Eingabedatei) Option zum Erzählen dd benutzen /dev/zero als Eingangsdatenquelle. Dies wird ein Strom von Nullen sein.


Die of (Ausgabedatei) ermöglicht es uns, einen Namen für die Bilddatei anzugeben. Wir nennen es „howtogeek.img“.

Die Größe der Bilddatei wird durch die Größe und Anzahl der Blöcke bestimmt, die wir hinzufügen. Wir verwenden die bs (Blockgröße) Option, um eine Blockgröße von 1 MB anzufordern und die count Möglichkeit, 250 Blöcke anzufordern. Dadurch erhalten wir ein Dateisystem von 250 MB. Wenn Sie diesen Befehl ausführen, passen Sie die Anzahl der Blöcke an Ihre Bedürfnisse und die freie Kapazität Ihres Linux-Computers an.

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

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

Die Datei wird für uns erstellt und dd berichtet, dass wie gewünscht 250 Blöcke für uns erstellt wurden.

Wir können unsere Bilddatei mit ansehen ls :

ls -hl

Es sind wie erwartet 250 MB, was ermutigend ist.

Erstellen des Dateisystems

Wählen wir ein zu verwendendes Dateisystem aus. Wir gehen in der Zeit zurück und verwenden Ext2, die früheste Version von Ext, die diese Implementierung von mkfs kann erstellen. Dies ist ein Nicht-Journaling-Dateisystem, also speichern Sie nichts Wertvolles darin, ohne an anderer Stelle Backups zu erstellen. Wir nehmen das mkfs.ext2 Variante des mkfs Befehl, und wir weisen ihn an, unsere Bilddatei als Ziel zu verwenden.

mkfs.ext2 ~/howtogeek.img

Das Dateisystem wird erstellt und einige Details des Dateisystems werden angezeigt.


Wie Sie dem hervorgehobenen Text entnehmen können, mke2fs tritt auf.

Jetzt haben wir einen Container für das Dateisystem – die Image-Datei – die in diesem Szenario für eine Festplatte steht. In diesem Container haben wir ein Dateisystem erstellt. Jetzt müssen wir das Dateisystem mounten, damit wir es verwenden können.

Dies ist eine vorübergehende Einrichtung, also machen wir eine Einhängepunkt innerhalb von /mnt als “Geek” bezeichnet. Wir werden es entfernen, wenn wir fertig sind.

sudo mkdir /mnt/geek

Jetzt können wir unsere Image-Datei mounten.

sudo mount ~/howtogeek.img /mnt/geek

Wir müssen das ändern Dateibesitz des Mount-Punkts, damit wir Lese- und Schreibzugriff darauf haben.

sudo chown dave:users /mnt/geek/

Und jetzt sollten wir unser neues Dateisystem verwenden können. Wechseln wir in das Dateisystem und kopieren einige Dateien dorthin.

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

Dadurch werden alle Dateien mit einer aus einem Buchstaben bestehenden Erweiterung aus dem Verzeichnis ~/Documents/Code in unser neues Dateisystem kopiert. Lassen Sie uns überprüfen, ob sie kopiert wurden.

ls


Die Dateien wurden kopiert, also wurde unser Dateisystem erstellt, gemountet und verwendet. So denken wir zumindest. Lassen Sie uns das noch einmal überprüfen. Von unserem Home-Verzeichnis aus werden wir das Dateisystem aushängen. Beachten Sie, dass es nur ein “n” in gibt ummount.

sudo umount /mnt/geek

Wenn wir nun zu /mnt/geek zurückkehren und nach Dateien suchen, sollten wir keine finden, da sie sich in unserer Image-Datei befinden und diese ausgehängt wurde.

cd /mnt/geek
ls

So mounten und trennen Sie Speichergeräte vom Linux-Terminal

Weitere Erkundung

Jetzt haben wir den Prozess ausgearbeitet, das Ausprobieren eines anderen Dateisystems sollte einfach sein. Wir werden dieses Mal das MINIX-Dateisystem verwenden. In unserem Home-Verzeichnis können wir innerhalb unserer bestehenden Image-Datei ein neues Dateisystem erstellen.

Vorsichtig sein! Wenn sich im Dateisystem der Image-Datei wichtige Dateien befinden, mounten Sie die Image-Datei und rufen Sie sie ab, bevor Sie ein neues Dateisystem erstellen.

mkfs.minix ~/howtogeek.image

Ohne den Hinweis, Sie zu fragen, ob Sie sicher sind, wird das neue Dateisystem über dem alten erstellt. Wir können unsere Image-Datei mit genau dem gleichen Befehl wie zuvor mounten:

sudo mount ~/howtogeek.img /mnt/geek

Lassen Sie uns in das neue Dateisystem unter /mnt/geek wechseln und sehen, ob wir eine Datei erstellen können.

touch geek.txt

ls -ahl geek.txt


Und so einfach und schnell haben wir ein neues Dateisystem erstellt, gemountet und können es verwenden.

Entfernen des Mount-Punkts

Wenn Sie fertig sind, können wir den Mount-Punkt “Geek” entfernen. Dazu verwenden wir rmdir:

cd /mnt
sudo rmdir geek

Jonglieren mit Feuer

Bei Linux lernt man, wie bei den meisten Dingen, durch Handeln. Das Problem bei einigen Befehlen besteht darin, dass sie potenziell destruktiv sind. Das Dilemma besteht darin, wie Sie ihre Verwendung üben können, ohne Ihr System oder Ihre Daten zu gefährden?

Sie haben jetzt eine einfache Methode zum Erstellen und Ausprobieren von Dateisystemen mit mkfs das lässt Ihren Computer unberührt.

Linux-Befehle
DateienTeer · pv · Katze · tac · chmod · grep · unterschied · sed · Mit · Mann · geschoben · popd · fsck · Testdisk · seq · fd · pandoc · CD · $PFAD · awk · beitreten · jq · falten · einzigartig · journalctl · Schwanz · stat · ls · fstab · Echo · weniger · chgrp · chown · Rev · aussehen · Saiten · Typ · umbenennen · Postleitzahl · entpacken · montieren · ummount · Installieren · fdisk · mkfs · rm · rmdir · rsync · df · gpg · wir · Nano · mkdir · von · ln · Patch · Konvertieren · rclon · Fetzen · srm
Prozessealias · Bildschirm · oben · nett · renice · Fortschritt · strace · System · tmux · chsh · Geschichte · bei · Charge · kostenlos · welcher · dmesg · chfn · Benutzermod · ps · chroot · xargs · tty · kleiner Finger · lsof · vmstat · Auszeit · Mauer · Jawohl · töten · Schlaf · sudo · es ist · Zeit · groupadd · Benutzermod · Gruppen · lshw · abschalten · neustarten · Halt · ausschalten · passwd · lscpu · crontab · Datum · bg · fg
Vernetzungnetstat · Klingeln · Traceroute · ip · ss · Wer ist · fail2ban · bmon · Sie · Finger · nmap · ftp · curl · wget · Wer · Wer bin ich · w · iptables · ssh-keygen · ufw

Beste Linux-Laptops für Entwickler und Enthusiasten

Related Posts