GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verwenden des mkfs-Befehls in Linux zum Formatieren des Dateisystems auf einer Festplatte oder Partition

Die Buchstaben in mkfs stehen für "Dateisystem erstellen". Der Befehl wird häufig zum Verwalten von Speichergeräten in Linux verwendet. Sie können sich mkfs als ein Befehlszeilentool zum Formatieren einer Festplatte in ein bestimmtes Dateisystem vorstellen.

mkfs -t [fs type] [target device]

Sie können den mkfs-Befehl auch folgendermaßen verwenden.

mkfs.[fs type] [target device]

In diesem Tutorial werde ich allgemein erläutern, was ein Dateisystem ist. Ich werde auch Beispiele für die effektive Verwendung des mkfs-Befehls geben.

Da der mkfs-Befehl Festplatten und Partitionen verarbeitet, müssen Sie entweder root oder sudo-Benutzer mit Zugriffsrechten sein, um Admin-Befehle auszuführen.

mkfs ist ein mächtiges Werkzeug. Es ist wichtig, die möglichen Folgen einer Änderung des Dateisystems zu verstehen. Wenn Sie den falschen Geräteknoten auswählen, werden alle Daten auf diesem Gerät gelöscht. Verwenden Sie diesen Befehl auf eigene Gefahr. Sie wurden gewarnt

Was ist noch mal ein Dateisystem?

Ein Dateisystem (fs) bezieht sich auf die Struktur und Logik, die Daten auf einem Gerät verwalten. Das Dateisystem steuert, wie Daten gespeichert und abgerufen werden.

Es gibt viele Arten von Dateisystemen und jedes hat seine eigenen Vor- und Nachteile. Hier sind die gängigsten Dateisysteme:

  • FETT*
  • NTFS
  • ext*
  • APFS
  • HFS*

Sie sind wahrscheinlich schon einmal auf einen oder mehrere dieser Dateisystemtypen gestoßen. Sie können die Typen sogar den jeweiligen Betriebssystemen zuordnen.

Im Allgemeinen sind FAT/NTFS für Windows konzipiert, Ext wird für Linux-Systeme verwendet und APFS/HFS sind macOS-Dateisysteme. Jede davon behandelt die Logik der Dateistruktur anders, was zu Problemen führen kann.

Aus diesem Grund ist es wichtig, darüber nachzudenken, bevor Sie einen Dateisystemtyp deklarieren oder Ihr Gerät "formatieren". Jeder Anwendungsfall ist anders, und es liegt an Ihnen, zu entscheiden, welches Dateisystem für Ihre Anforderungen am besten geeignet ist.

Beispiele für mkfs-Befehle

Lassen Sie mich Ihnen einige der häufigsten Verwendungen des mkfs-Befehls zeigen.

Bitte versuchen Sie keinen dieser Befehle blind auf Ihrem aktuellen System. Es formatiert das Zielgerät/die Zielfestplattenpartition und löscht alle Daten.

mkfs ohne Option erstellt ein ext2-Dateisystem

Wenn Sie den Dateisystemtyp für das Zielgerät nicht angeben, wird es das standardmäßige ext2-Dateisystem verwenden.

sudo mkfs /dev/sdb1

Dateityp mit mkfs angeben

Die Verwendung von ext2 ist nicht sehr bequem oder ratsam. Die meisten Linux-Systeme empfehlen heutzutage die Verwendung von ext4. Sie können das Dateisystem folgendermaßen angeben:

sudo mkfs -t ext4 /dev/sdb1

Sie können es auch so verwenden:

sudo mkfs.ext4 /dev/sdb1

Überprüfen Sie ein Gerät auf fehlerhafte Blöcke

Sie können auf einem Gerät auch nach fehlerhaften Blöcken suchen, aber denken Sie daran, dass die Überprüfung oft lange dauert.

sudo mkfs -c /dev/sdb1

Bonus-Tipp:Überprüfen Sie den Dateisystemtyp eines Geräts

Möglicherweise möchten Sie den Typ des Dateisystems eines Geräts überprüfen, das Sie gerade mit dem Befehl mkfs formatiert haben. Zu diesem Zweck können Sie den Dateibefehl verwenden.

sudo file -sL /device

Hier ist ein Beispiel, das zeigt, welche Art von Ausgabe angezeigt werden könnte:

[email protected]:~$ sudo file -s /dev/nvme0n1p2
/dev/nvme0n1p2: Linux rev 1.0 ext4 filesystem data, UUID=34daa4b7-a2c4-4983-b5cc-df9baa6a6543 (extents) (64bit) (large files) (huge files)

Realer Anwendungsfall:Verwenden des mkfs-Befehls zum Erstellen einer Datei System auf einem USB-Gerät

Nachdem Sie nun einige Hintergrundinformationen haben, können Sie mit der Verwendung von mkfs beginnen.

Die praktischste Demonstration, die mir einfällt, ist das Formatieren eines USB-Flash-Speicherlaufwerks. Dieselben Prinzipien gelten für jede Art von Speicherung, die Sie wählen.

Ihr Gerät finden

Zuerst müssen Sie Ihr Gerät finden. Eine Methode, die Sie verwenden können, ist sudo fdisk -l . Dadurch werden alle Festplattenknoten aufgelistet, die derzeit gemountet sind.

[email protected]:~$ sudo fdisk -l
Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
Disk model: VBOX HARDDISK   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x3c62c49c

Device     Boot    Start      End  Sectors  Size Id Type
/dev/sda1  *        4096  1023998  1019903  498M 83 Linux
/dev/sda2        1024000 44036094 43012095 20.5G 83 Linux
/dev/sda3       44036096 52424702  8388607    4G 82 Linux swap / Solaris

Disk /dev/sdb: 28.93 GiB, 31040995328 bytes, 60626944 sectors
Disk model: Patriot Memory  
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 91A34D6F-E67B-E54D-B19C-5CC828DAAB9A

Device     Start      End  Sectors  Size Type
/dev/sdb1   2048 60626910 60624863 28.9G Linux filesystem

Ihre Ausgabe wird offensichtlich variieren. Bitte seien Sie sehr vorsichtig, wenn Sie Ihr gewünschtes Laufwerk identifizieren . Wenn Sie sich nicht sicher sind, entfernen Sie die Diskette und führen Sie fdisk -l aus erneut befehlen. Wenn Sie das richtige Gerät haben, wird es nicht aufgelistet, wenn keine Verbindung besteht.

Partition überprüfen

Das Gerät, das ich verwende, ist ein Patriot Memory USB und befindet sich unter /dev/sdb . Zusätzlich zur Identifizierung der richtigen Festplatte müssen Sie sicherstellen, dass Sie die fs der gewünschten Partition ändern.

Ich habe fdisk-Tools verwendet, um vorhandene Daten zu löschen und eine neue Partitionstabelle zu schreiben. Während ich das tat, erstellte ich eine neue Partition zum Schreiben. Diese Partition wird unser Ziel sein:/dev/sdb1 .

Bereitstellung aufheben

Bevor Sie versuchen, das Dateisystem zu ändern, müssen Sie es mit umount unmounten Befehl.

[email protected]:~$ sudo umount /dev/sdb1

Dateisystem erstellen

Nachdem Sie Ihr Ziel überprüft und das Laufwerk ausgehängt haben, können Sie mit der Erstellung des Dateisystems fortfahren.

Ich habe das -v hinzugefügt verbose-Option hier, um während der Ausführung weitere Informationen anzuzeigen.

[email protected]:~$ sudo mkfs.ext4 /dev/sdb1 -v
mke2fs 1.45.5 (07-Jan-2020)
fs_types for mke2fs.conf resolution: 'ext4'
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1896832 inodes, 7578107 blocks
378905 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2155872256
232 block groups
32768 blocks per group, 32768 fragments per group
8176 inodes per group
Filesystem UUID: 73882769-7599-4c79-a00b-ef317ccd921d
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done 

Dieser Vorgang kann einige Zeit dauern, sollte aber in weniger als 20 Minuten abgeschlossen sein, es sei denn, das Ziel ist größer als 2 TB.

Ich hatte mehrere Probleme mit dem Programm, das am letzten Element hing. Leider gibt es keine Fortschrittsanzeige und ich hatte keine Fehler geworfen.

Überprüfen Sie das neu erstellte Dateisystem

Überprüfen Sie zunächst das Dateisystem des gerade verwendeten Geräts. Ist es das, was Sie wollten?

sudo file -sL /dev/sdb1

Es ist wichtig sicherzustellen, dass das Gerät auf den Systemen erkannt wird, mit denen Sie es verwenden werden. Ich habe einen Ordner namens test und darin eine Datei namens test.txt erstellt.

Um Zeit zu sparen, können Sie meine Befehle hier kopieren und einfügen.

mkdir test && cd test
touch test.txt
echo "THIS IS ONLY A TEST" > test.txt
cat test.txt

Wenn alles funktioniert hat, sollten Sie in der Lage sein, das Laufwerk auf Ihren gewünschten Systemen bereitzustellen und auf die Dateien zuzugreifen. Wenn Sie nicht auf die Dateien auf Ihrem System zugreifen können, liegt wahrscheinlich ein Kompatibilitätsproblem vor.

Schlussfolgerung

Ich hoffe, Sie finden diese Kurzanleitung zu mkfs Befehl nützlich. Wenn Ihnen dieses Tutorial gefällt, teilen Sie es bitte in den sozialen Medien.

Wenn Sie Kommentare oder Fragen haben, hinterlassen Sie diese bitte unten. Wenn Sie Vorschläge für Themen haben, die Sie gerne behandelt sehen möchten, können Sie diese auch gerne hinterlassen.


Linux
  1. Fehlerbehebung mit dem proc-Dateisystem unter Linux

  2. Verwenden der Kraft in der Linux-Befehlszeile

  3. Verwenden von Google Drive über die Linux-Befehlszeile

  4. mkfs.ext4-Befehlsbeispiele unter Linux

  5. Entfernen Sie eine Datei unter Linux mithilfe der Inode-Nummer

So verwenden Sie den Touch-Befehl unter Linux

Verwenden des kostenlosen Linux-Befehls

So löschen Sie eine Festplatte und Datei sicher mit dem Linux-Befehl shred

Tutorial zur Verwendung des Timeout-Befehls unter Linux

So formatieren Sie Festplattenpartitionen unter Linux

mkfs-Befehlsbeispiele in Linux