sfdisk
sfdisk
ist eine gescriptete Version von fdisk
Es ist Teil vonutil-linux
, genau wie fdisk
, daher sollte die Verfügbarkeit gleich sein.
Eine Partitionstabelle mit einer einzelnen Partition, die die gesamte Festplatte belegt, kann erstellt werden mit:
echo 'type=83' | sudo sfdisk /dev/sdX
und komplexere Partitionstabellen werden unten erläutert.
Um ein Beispielskript zu generieren, rufen Sie das Setup einer Ihrer Festplatten ab:
sudo sfdisk -d /dev/sda > sda.sfdisk
Beispielausgabe auf meinem Lenovo T430 Windows 7 / Ubuntu Dual Boot:
label: dos
label-id: 0x7ddcbf7d
device: /dev/sda
unit: sectors
/dev/sda1 : start= 2048, size= 3072000, type=7, bootable
/dev/sda2 : start= 3074048, size= 195430105, type=7
/dev/sda3 : start= 948099072, size= 28672000, type=7
/dev/sda4 : start= 198504446, size= 749594626, type=5
/dev/sda5 : start= 198504448, size= 618891264, type=83
/dev/sda6 : start= 940277760, size= 7821312, type=82
/dev/sda7 : start= 817397760, size= 61437952, type=83
/dev/sda8 : start= 878837760, size= 61437500, type=83
Sobald Sie das Skript in einer Datei gespeichert haben, können Sie es anwenden sdX
mit:
sudo sfdisk /dev/sdX < sda.sfdisk
Bei der sfdisk
Eingabe können Sie einfach die Gerätenamen weglassen und Zeilen vom Typ verwenden:
start= 2048, size= 3072000, type=7, bootable
Sie werden nur ignoriert, wenn vorhanden, und der Gerätename wird aus dem Befehlszeilenargument übernommen.
Einige Erklärungen:
- Kopfzeilen: alle optional:
Trennlinien:
start
: Versatz innerhalb der Festplatte, an der die Partition beginnt.
start
hat sehr gute Standardeinstellungen und kann oft weggelassen werden:
- In der ersten Zeile
start
steht 2048, dh 1 MB (2048 + 512). Dies ist eine vernünftige Standardeinstellung für die Plattenkompatibilität
- Weitere
start
Standardeinstellung ist die erste nicht zugewiesene Position
size
: man sfdisk
Sagt: The default value of size indicates "as much as possible"
. So füllen Sie die Festplatte mit einer einzelnen Partition:/dev/sda : start=2048, type=83
type
: magisches Byte, das im Bootsektor für jeden Partitionseintrag gespeichert ist . Mögliche Werte: https://en.wikipedia.org/wiki/Partition_type In diesem Beispiel beobachten wir:
7
( sda1
, 2
und 3
): Dateisysteme, die Windows unterstützt. Vorinstallierte Windows- und Lenovo-Wiederherstellungspartitionen. sudo blkid
Etiketten helfen, sie zu identifizieren.
5
( sda4
): Erweiterte primäre Partition, die andere logische Partitionen enthält (da wir nur 4 primäre Partitionen mit MBR haben können)
83
( sda5
, 7
Und 8
): Partitionen , die Linux unterstützt. Für mich ein home
und zwei Roots mit unterschiedlichen Ubuntu-Versionen
82
( sd6
): tauschen
fdisk
Sie können sfdisk
Skripte auch mit dem I
Befehl lesen , der sie während einer interaktiven fdisk
Sitzung als "Quelle" verwendet. Auf diese Weise können Sie weitere Anpassungen vornehmen, bevor Sie die Partition schreiben.
Getestet unter Ubuntu 16.04, sfdisk
2.27.1.
Formatieren und füllen Sie die Partitionen einer Image-Datei ohne sudo
Dies ist eine gute Möglichkeit, die Verwendung zu erlernen, sfdisk
ohne die Festplatten in die Luft zu jagen: https://stackoverflow.com/questions/10949169/how-to-create-a-multi-partition-sd-disk-image-without-root- Privilegien / 52850819 # 52850819