Website-Suche

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.

  1. Erste Zylindernummer der zu erstellenden Partition.
  2. 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:

  1. 12 „df“-Befehle zum Überprüfen des Speicherplatzes unter Linux
  2. 10 nützliche „du“-Befehle zum Ermitteln der Festplattennutzung von Dateien und Verzeichnissen