10 fdisk-Befehle zum Verwalten von Linux-Festplattenpartitionen
fdisk steht für „Festplatte oder Festplatte formatieren“ und ist ein am häufigsten verwendetes befehlszeilenbasiertes Dienstprogramm zur Datenträgerbearbeitung für einen Linux/Unix-Systeme. Mit Hilfe des Befehls fdisk können Sie Partitionen auf einer Festplatte anzeigen, erstellen, in der Größe ändern, löschen, ändern, kopieren und verschieben, indem Sie eine eigene benutzerfreundliche, textbasierte, menügesteuerte Oberfläche verwenden.
Dieses Tool ist sehr nützlich, wenn es darum geht, Platz für neue Partitionen zu schaffen, Platz für neue Laufwerke zu organisieren, alte Laufwerke neu zu organisieren und Daten auf neue Festplatten zu kopieren oder zu verschieben. Sie können damit maximal vier neue primäre Partitionen und eine Anzahl logischer (erweiterter) Partitionen erstellen, basierend auf der Größe der Festplatte in Ihrem System.
In diesem Artikel werden 10 grundlegende fdisk-Befehle zum Verwalten einer Partitionstabelle in Linux-basierten Systemen erläutert. Sie müssen Root-Benutzer sein, um den fdisk-Befehl auszuführen, andernfalls erhalten Sie die Fehlermeldung „Befehl nicht gefunden“.
1. Sehen Sie sich alle Festplattenpartitionen in Linux an
Der folgende grundlegende Befehl listet alle vorhandenen Festplattenpartitionen auf Ihrem System auf. Das Argument „-l“ steht für (alle Partitionen auflisten) und wird mit dem Befehl fdisk verwendet, um alle verfügbaren Partitionen unter Linux anzuzeigen. Die Partitionen werden mit den Namen ihrer Geräte angezeigt. Zum Beispiel: /dev/sda, /dev/sdb oder /dev/sdc.
[[email ~]# fdisk -l
Disk /dev/sda: 637.8 GB, 637802643456 bytes
255 heads, 63 sectors/track, 77541 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 2624 20972857+ 83 Linux
/dev/sda3 2625 4582 15727635 83 Linux
/dev/sda4 4583 77541 586043167+ 5 Extended
/dev/sda5 4583 5887 10482381 83 Linux
/dev/sda6 5888 7192 10482381 83 Linux
/dev/sda7 7193 7845 5245191 83 Linux
/dev/sda8 7846 8367 4192933+ 82 Linux swap / Solaris
/dev/sda9 8368 77541 555640123+ 8e Linux LVM
2. Spezifische Festplattenpartition unter Linux anzeigen
Um alle Partitionen einer bestimmten Festplatte anzuzeigen, verwenden Sie die Option „-l“ mit dem Gerätenamen. Mit dem folgenden Befehl werden beispielsweise alle Festplattenpartitionen des Geräts /dev/sda angezeigt. Wenn Sie unterschiedliche Gerätenamen haben, schreiben Sie den Gerätenamen einfach als /dev/sdb oder /dev/sdc.
[[email ~]# fdisk -l /dev/sda
Disk /dev/sda: 637.8 GB, 637802643456 bytes
255 heads, 63 sectors/track, 77541 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 2624 20972857+ 83 Linux
/dev/sda3 2625 4582 15727635 83 Linux
/dev/sda4 4583 77541 586043167+ 5 Extended
/dev/sda5 4583 5887 10482381 83 Linux
/dev/sda6 5888 7192 10482381 83 Linux
/dev/sda7 7193 7845 5245191 83 Linux
/dev/sda8 7846 8367 4192933+ 82 Linux swap / Solaris
/dev/sda9 8368 77541 555640123+ 8e Linux LVM
3. Überprüfen Sie alle verfügbaren fdisk-Befehle
Wenn Sie alle für fdisk verfügbaren Befehle anzeigen möchten. Verwenden Sie einfach den folgenden Befehl, indem Sie den Namen der Festplatte angeben, z. B. /dev/sda, wie unten gezeigt. Mit dem folgenden Befehl erhalten Sie eine Ausgabe ähnlich der folgenden.
[root@tecmint ~]# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help):
Geben Sie „m“ ein, um die Liste aller verfügbaren Befehle von fdisk anzuzeigen, die auf der Festplatte /dev/sda ausgeführt werden können. Nachdem ich „m“ auf dem Bildschirm eingebe, sehen Sie alle verfügbaren Optionen für fdisk, die Sie auf dem Gerät /dev/sda verwenden können.
[root@tecmint ~]# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help):
4. Drucken Sie die gesamte Partitionstabelle unter Linux
Um die gesamte Partitionstabelle der Festplatte zu drucken, müssen Sie sich im Befehlsmodus einer bestimmten Festplatte befinden, z. B. /dev/sda.
[root@tecmint ~]# fdisk /dev/sda
Geben Sie im Befehlsmodus „p“ anstelle von „m“ ein, wie wir es zuvor getan haben. Wenn ich „p“ eingebe, wird die spezifische /dev/sda-Partitionstabelle gedruckt.
Command (m for help): p
Disk /dev/sda: 637.8 GB, 637802643456 bytes
255 heads, 63 sectors/track, 77541 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 2624 20972857+ 83 Linux
/dev/sda3 2625 4582 15727635 83 Linux
/dev/sda4 4583 77541 586043167+ 5 Extended
/dev/sda5 4583 5887 10482381 83 Linux
/dev/sda6 5888 7192 10482381 83 Linux
/dev/sda7 7193 7845 5245191 83 Linux
/dev/sda8 7846 8367 4192933+ 82 Linux swap / Solaris
/dev/sda9 8368 77541 555640123+ 8e Linux LVM
Command (m for help):
5. So löschen Sie eine Partition unter Linux
Wenn Sie eine bestimmte Partition (z. B. /dev/sda9) von einer bestimmten Festplatte löschen möchten, z. B. /dev/sda. Dazu müssen Sie sich im fdisk-Befehlsmodus befinden.
[root@tecmint ~]# fdisk /dev/sda
Geben Sie als Nächstes „d“ ein, um einen beliebigen Partitionsnamen aus dem System zu löschen. Wenn ich „d“ eingebe, werde ich aufgefordert, die Nummer der Partition einzugeben, die ich von der Festplatte /dev/sda löschen möchte. Angenommen, ich gebe hier die Nummer „4“ ein, dann wird die Partition mit der Nummer „4“ (d. h. /dev/sda4) auf der Festplatte gelöscht und „Frei“ angezeigt Platz in der Partitionstabelle. Geben Sie „w“ ein, um die Tabelle auf die Festplatte zu schreiben und zu beenden, nachdem Sie neue Änderungen an der Partitionstabelle vorgenommen haben. Die neuen Änderungen würden erst nach dem nächsten Neustart des Systems wirksam. Dies kann anhand der folgenden Ausgabe leicht verstanden werden.
[root@tecmint ~]# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): d
Partition number (1-4): 4
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
You have new mail in /var/spool/mail/root
Warnung: Seien Sie vorsichtig, wenn Sie diesen Schritt ausführen, da die Verwendung der Option „d“ die Partition vollständig aus dem System löscht und möglicherweise alle Daten in der Partition verloren geht.
6. So erstellen Sie eine neue Partition unter Linux
Wenn Sie auf einem Ihrer Geräte noch freien Speicherplatz haben, sagen Sie /dev/sda und möchten darunter eine neue Partition erstellen. Dann müssen Sie sich im fdisk-Befehlsmodus von /dev/sda befinden. Geben Sie den folgenden Befehl ein, um in den Befehlsmodus einer bestimmten Festplatte zu wechseln.
[root@tecmint ~]# fdisk /dev/sda
Nachdem Sie den Befehlsmodus aufgerufen haben, drücken Sie nun den Befehl „n“, um eine neue Partition unter /dev/sda mit einer bestimmten Größe zu erstellen. Dies kann anhand der folgenden Ausgabe demonstriert werden.
[root@tecmint ~]# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Beim Erstellen einer neuen Partition werden Sie nach zwei Optionen gefragt: „erweiterte“ oder „primäre“ Partitionserstellung. Drücken Sie „e“ für die erweiterte Partition und „p“ für die primäre Partition. Anschließend werden Sie aufgefordert, die folgenden zwei Eingaben einzugeben.
- Erste Zylindernummer der zu erstellenden Partition.
- Letzte Zylindernummer der zu erstellenden Partition (Letzter Zylinder, +Zylinder oder +Größe).
Sie können die Größe des Zylinders eingeben, indem Sie im letzten Zylinder „+5000M“ hinzufügen. Hier bedeutet „+“ Hinzufügung und 5000M bedeutet Größe der neuen Partition (d. h. 5000MB). Bitte beachten Sie, dass Sie nach dem Erstellen einer neuen Partition den Befehl „w“ ausführen sollten, um neue Änderungen in der Partitionstabelle zu ändern und zu speichern und schließlich Ihr System neu zu starten, um die neu erstellte Partition zu überprüfen.
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
7. So formatieren Sie eine Partition unter Linux
Nachdem die neue Partition erstellt wurde, überspringen Sie nicht die Formatierung der neu erstellten Partition mit dem Befehl „mkfs“. Geben Sie den folgenden Befehl in das Terminal ein, um eine Partition zu formatieren. Hier ist /dev/sda4 meine neu erstellte Partition.
[root@tecmint ~]# mkfs.ext4 /dev/sda4
8. So überprüfen Sie die Größe einer Partition unter Linux
Überprüfen Sie nach dem Formatieren der neuen Partition die Größe dieser Partition mithilfe des Flags „s“ (zeigt die Größe in Blöcken an) mit dem Befehl fdisk. Auf diese Weise können Sie die Größe eines bestimmten Geräts überprüfen.
[root@tecmint ~]# fdisk -s /dev/sda2
5194304
9. So korrigieren Sie die Reihenfolge der Partitionstabellen
Wenn Sie eine logische Partition gelöscht und erneut erstellt haben, bemerken Sie möglicherweise das Problem „Partition außer Betrieb“ oder eine Fehlermeldung wie „Partitionstabelleneinträge sind nicht in der Reihenfolge der Festplatte '.
Wenn beispielsweise drei logische Partitionen wie (sda4, sda5 und sda6) gelöscht und eine neue Partition erstellt werden, erwarten Sie möglicherweise die neue Der Partitionsname wäre sda4. Das System würde es jedoch als sda5 erstellen. Dies liegt daran, dass nach dem Löschen der Partition die Partition sda7 als sda4 verschoben wurde und der freie Speicherplatz an das Ende verschoben wurde.
Um solche Probleme mit der Partitionsreihenfolge zu beheben und sda4 der neu erstellten Partition zuzuweisen, geben Sie „x“ ein, um einen Abschnitt mit zusätzlichen Funktionen aufzurufen, und geben Sie dann „f<“ ein‘-Expertenbefehl, um die Reihenfolge der Partitionstabelle wie unten gezeigt festzulegen.
[root@tecmint ~]# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): x
Expert command (m for help): f
Done.
Expert command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
Nachdem Sie den Befehl „f“ ausgeführt haben, vergessen Sie nicht, den Befehl „w“ auszuführen, um zu speichern und den fdisk-Befehlsmodus zu verlassen. Sobald die Reihenfolge der Partitionstabellen festgelegt wurde, erhalten Sie keine Fehlermeldungen mehr.
10. So deaktivieren Sie das Boot-Flag (*) einer Partition
Standardmäßig zeigt der Befehl fdisk das Boot-Flag-Symbol (d. h. „*“) auf jeder Partition an. Wenn Sie das Boot-Flag auf einer bestimmten Partition aktivieren oder deaktivieren möchten, führen Sie die folgenden Schritte aus.
[root@tecmint ~]# fdisk /dev/sda
Drücken Sie den Befehl „p“, um die aktuelle Partitionstabelle anzuzeigen. Sie sehen, dass sich auf /dev/ ein Boot-Flag (Sternchen (*)-Symbol in oranger Farbe) befindet. sda1-Festplatte wie unten gezeigt.
[root@tecmint ~]# fdisk /dev/sda
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): p
Disk /dev/sda: 637.8 GB, 637802643456 bytes
255 heads, 63 sectors/track, 77541 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 2624 20972857+ 83 Linux
/dev/sda3 2625 4582 15727635 83 Linux
/dev/sda4 4583 77541 586043167+ 5 Extended
/dev/sda5 4583 5887 10482381 83 Linux
/dev/sda6 5888 7192 10482381 83 Linux
/dev/sda7 7193 7845 5245191 83 Linux
/dev/sda8 7846 8367 4192933+ 82 Linux swap / Solaris
/dev/sda9 8368 77541 555640123+ 8e Linux LVM
Geben Sie als nächstes den Befehl „a“ ein, um das Boot-Flag zu deaktivieren, und geben Sie dann die Partitionsnummer „1“ ein (in meinem Fall also /dev/sda1). . Dadurch wird das Boot-Flag auf der Partition /dev/sda1 deaktiviert. Dadurch wird das Sternchen-Flag (*) entfernt.
Command (m for help): a
Partition number (1-9): 1
Command (m for help): p
Disk /dev/sda: 637.8 GB, 637802643456 bytes
255 heads, 63 sectors/track, 77541 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 13 104391 83 Linux
/dev/sda2 14 2624 20972857+ 83 Linux
/dev/sda3 2625 4582 15727635 83 Linux
/dev/sda4 4583 77541 586043167+ 5 Extended
/dev/sda5 4583 5887 10482381 83 Linux
/dev/sda6 5888 7192 10482381 83 Linux
/dev/sda7 7193 7845 5245191 83 Linux
/dev/sda8 7846 8367 4192933+ 82 Linux swap / Solaris
/dev/sda9 8368 77541 555640123+ 8e Linux LVM
Command (m for help):
Ich habe mein Bestes versucht, fast alle Grundbefehle von fdisk-Befehlen einzubeziehen, aber fdisk enthält dennoch eine Vielzahl anderer Expertenbefehle, die Sie durch Eingabe von „x“ verwenden können. Ausführlichere Informationen finden Sie im Terminalbefehl „man fdisk“. Wenn ich einen wichtigen Befehl verpasst habe, teilen Sie mir dies bitte über den Kommentarbereich mit.
Lesen Sie auch:
- 12 „df“-Befehle zum Überprüfen des Speicherplatzes unter Linux
- 10 nützliche „du“-Befehle zum Ermitteln der Festplattennutzung von Dateien und Verzeichnissen