sfdisk(8) eine Plattenpartitionstabelle anzeigen oder verändern

ÜBERSICHT

sfdisk [Optionen] Gerät [-N Partitionsnummer]

sfdisk [Optionen] Befehl

BESCHREIBUNG

sfdisk ist ein Skript-orientiertes Werkzeug zur Partitionierung beliebiger Blockgeräte.

Seit Version 2.26 unterstützt sfdisk Festplattenbezeichnungen im Stil von MBR (DOS), GPT, SUN und SGI, jedoch ist die CHS-Addressierung (Zylinder-Kopf-Sektor) nicht mehr möglich. CHS war für Linux nie von Bedeutung, daher ergibt dieses Adressierungskonzept für neue Geräte keinen Sinn.

Seit Version 2.26 richtet sfdisk Beginn und Ende der Partitionen an den E/A-Grenzen des blockorientierten Gerätes aus, wenn relative Größen angegeben sind oder die Standardwerte verwendet werden.

sfdisk erzeugt keine Standard-Systempartitionen für SGI- und SUN-Festplattenbezeichnungen, wie es fdisk(8) tut. Es ist notwendig, alle Partitionen einschließlich der die gesamte Festplatte umfassenden Systempartitionen explizit zu erzeugen.

BEFEHLE

Die Befehle schließen sich gegenseitig aus.
[-N Partitionsnummer] Gerät
In der Voreinstellung liest sfdisk die Spezifikation für die gewünschte Partitionierung des Geräts aus der Standardeingabe und ändert dann die Partitionstabellen auf diesem Blockgerät. Nachfolgend finden Sie eine Beschreibung des Eingabeformats. Wenn sfdisk ermittelt, dass die Standardeingabe ein Terminal ist, startet es eine interaktive Sitzung.

Wenn die Option -N angegeben ist, werden die Änderungen auf die Partition angewendet, auf welche die Partitionsnummer verweist. Nicht angegebene Felder der Partition werden nicht verändert.

Beachten Sie, dass Sie mit -N auch ungenutzte Partitionen bearbeiten können. Beispielsweise enthält der MBR stets vier Partitionen, aber die Anzahl der tatsächlich genutzten Partitionen kann kleiner sein. In diesem Fall folgt sfdisk den Standardwerten der Partitionstabelle und wendet nicht die voreingestellten Werte auf die mit -N angegebenen ungenutzten Partitionen an. Siehe auch --append.

-A, --activate Gerät [Partitionsnummer…]
schaltet die Bootfähig-Markierung für die angegebenen Partitionen ein oder aus. Falls keine Partitionsnummer angegeben ist, werden alle Partitionen aufgelistet, die als bootfähig markiert sind.
--delete Gerät [Partitionsnummer…]
löscht alle oder die angegebenen Partitionen.
-d, --dump Gerät
gibt die Partitionen eines Gerätes in einem Format aus, das von sfdisk als Eingabe verarbeitet werden kann. Weitere Informationen finden Sie im Abschnitt SICHERUNG DER PARTITIONSTABELLE.
-g, --show-geometry [Gerät…]
listet die Geometrie aller oder der angegebenen Geräte auf.
-J, --json Gerät
gibt die Partitionen eines Geräts im JSON-Format aus. Beachten Sie, dass JSON von sfdisk nicht als Eingabeformat verarbeitet werden kann.
-l, --list [Gerät…]
listet alle Partitionen von allen oder den angegebenen Geräten auf. Dieser Befehl kann zusammen mit --verify verwandt werden.
-F, --list-free [Gerät …]
listet die freien unpartitionierten Bereiche aller oder der angegebenen Geräte auf.
--part-attrs Gerät Partitionsnummer [Attribute]
Change the GPT partition attribute bits. If attributes is not specified, then print the current partition settings. The attributes argument is a comma- or space-delimited list of bits. The currently supported attribute bits are: RequiredPartiton, NoBlockIOProtocol, LegacyBIOSBootable and GUID-specific bits in the range from 48 to 63. For example, the string "RequiredPartiton,50,51" sets three bits.
--part-label Gerät Partitionsnummer [Bezeichnung]
ändert den GPT-Partitionsnamen (Bezeichnung). Falls Bezeichnung nicht angegeben ist, dann wird die aktuelle Partitionsbezeichnung ausgegeben.
--part-type Gerät Partitionsnummer [Typ]
Change the partition type. If type is not specified, then print the current partition type. The type argument is hexadecimal for MBR, or a GUID for GPT. For backward compatibility the options -c and --id have the same meaning as this one.
--part-uuid Gerät Partitionsnummer [UUID]
Change the GPT partition UUID. If uuid is not specified, then print the current partition UUID.
-r, --reorder Gerät
Renumber the partitions, ordering them by their start offset.
-s, --show-size [device…]
listet die Größen aller oder der angegebenen Geräte auf.
-T, --list-types
gibt alle unterstützten Typen für die aktuelle Plattenbezeichnung oder die durch --label angegebene Bezeichnung aus.
-V, --verify [Gerät…]
prüft, ob die Partitionstabelle und die Partitionen korrekt erscheinen.

OPTIONEN

-a, --append
erzeugt keine neue Partitionstabelle, sondern hängt nur die angegebenen Partitionen an.
-b, --backup
sichert die Sektoren der aktuellen Partitionstabelle, bevor mit der Partitionierung begonnen wird. Der voreingestellte Name der Sicherungsdatei ist ~/sfdisk-<Gerät>-<Position>.bak. Einen anderen Namen können Sie mit der Option -O (--backup-file) angeben.
--color[=WANN]
färbt die Ausgabe ein. Das optionale Argument WANN kann auto, never oder always sein. Ist WANN nicht angegeben, wird auto verwendet. Die Farben können deaktiviert werden, die aktuelle Voreinstellung erhalten Sie mit der Option --help. Weitere Informationen finden Sie im Abschnitt FARBEN.
-f, --force
deaktiviert alle Konsistenzprüfungen.
--Linux
Veraltete und ignorierte Option. Standardmäßig ist die Partitionierung mit Linux (und anderen modernen Betriebssystemen) kompatibel.
-n, --no-act
führt alles außer dem Schreiben auf das Gerät selbst durch.
--no-reread
Do not check through the re-read-partition-table ioctl whether the device is in use.
-O, --backup-file Pfad
setzt den voreingestellten Namen der Sicherungsdatei außer Kraft. Beachten Sie, dass der Gerätename und die Position stets an den Dateinamen angehängt werden.
--move-data[=Pfad]
Move data after partition relocation, for example when moving the beginning of a partition to another place on the disk. The size of the partition has to remain the same, the new and old location may overlap. This option requires option -N in order to be processed on one specific partition only.

The path overrides the default log file name (the default is ~/sfdisk-<devname>.move). The log file contains information about all read/write operations on the partition data.

Note that this operation is risky and not atomic. Don't forget to backup your data!

In the example below, the first command creates a 100MiB free area before the first partition and moves the data it contains (e.g. a filesystem), the next command creates a new partition from the free space (at offset 2048), and the last command reorders partitions to match disk order (the original sdc1 will become sdc2).

echo '+100M,' | sfdisk --move-data /dev/sdc -N 1
echo '2048,' | sfdisk /dev/sdc --append
sfdisk /dev/sdc --reorder

-o, --output Liste
legt fest, welche Ausgabespalten ausgegeben werden sollen. Mit --help bekommen Sie eine Liste aller unterstützten Spalten.

Die voreingestellte Liste der Spalten kann erweitert werden, indem Sie die Liste im Format +list angeben (zum Beispiel -o +UUID).

-q, --quiet
unterdrückt zusätzliche Informationsmeldungen.
-u, --unit S
Veraltete Option. Nur die Einheit »sector« wird unterstützt.
-X, --label type
Specify the disk label type (e.g. dos, gpt, ...). If this option is not given, then sfdisk defaults to the existing label, but if there is no label on the device yet, then the type defaults to dos.
-Y, --label-nested Typ
Force editing of a nested disk label. The primary disk label has to exist already. This option allows to edit for example a hybrid/protective MBR on devices with GPT.

-w, --wipe WANN
Wipe filesystem, RAID and partition-table signatures from the device, in order to avoid possible collisions. The argument when can be auto, never or always. When this option is not given, the default is auto, in which case signatures are wiped only when in interactive mode. In all cases detected signatures are reported by warning messages before a new partition table is created. See also wipefs(8) command.

-v, --version
zeigt Versionsinformationen an und beendet das Programm.
-h, --help
zeigt diese Hilfe an und beendet das Programm.

EINGABEFORMATE

sfdisk unterstützt zwei Eingabeformate und generische Header-Zeilen.

Header-Zeilen

The optional header lines specify generic information that apply to the partition table. The header-line format is:

<Name>: <Wert>

Folgende Header werden derzeit akzeptiert:
unit
legt die Partitionierungseinheit fest. Die einzige unterstützte Einheit ist sectors.
label
legt den Partitionierungstabellentyp fest. Beispielsweise dos oder gpt.
label-id
Specify the partition table identifier. It should be a hexadecimal number (with a 0x prefix) for MBR and a UUID for GPT.

Beachten Sie, dass Sie Header-Zeilen in der Eingabe nur vor der ersten Partition angeben können.

Unnamed-fields format

start size type bootable

wobei jede Zeile einen Partitionsdeskriptor darstellt.

Fields are separated by whitespace, comma or semicolon possibly followed by whitespace; initial and trailing whitespace is ignored. Numbers can be octal, decimal or hexadecimal; decimal is the default. When a field is absent, empty or specified as '-' a default value is used. But when the -N option (change a single partition) is given, the default for each field is its previous value.

The default value of start is the first non-assigned sector aligned according to device I/O limits. The default start offset for the first partition is 1 MiB. The offset may be followed by the multiplicative suffixes (KiB, MiB, GiB, TiB, PiB, EiB, ZiB and YiB) then the number is interpreted as offset in bytes.

The default value of size indicates "as much as possible"; i.e. until the next partition or end-of-device. A numerical argument is by default interpreted as a number of sectors, however if the size is followed by one of the multiplicative suffixes (KiB, MiB, GiB, TiB, PiB, EiB, ZiB and YiB) then the number is interpreted as the size of the partition in bytes and it is then aligned according to the device I/O limits. A '+' can be used instead of a number to enlarge the partition as much as possible. Note '+' is equivalent to the default behaviour for a new partition; existing partitions will be resized as required.

The partition type is given in hex for MBR (DOS), without the 0x prefix, a GUID string for GPT, or a shortcut:

L
Linux; bedeutet 83 für MBR und 0FC63DAF-8483-4772-8E79-3D69D8477DE4 für GPT.
S
Swap-Bereich (Auslagerungsspeicher); bedeutet 82 für MBR und 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F für GPT
E
erweiterte Partition; bedeutet 5 für MBR
H
home-Partition; bedeutet 933AC7E1-2EB4-4F13-B844-0E14E2AEF915 für GPT
X
Linux erweiterte Partition, bedeutet 85 für MBR.
U
EFI System partition, means EF for MBR and C12A7328-F81F-11D2-BA4B-00A0C93EC93B for GPT

Der Vorgabe-Typ-Wert ist L.

bootable is specified as [*|-], with as default not-bootable. The value of this field is irrelevant for Linux - when Linux runs it has been booted already - but ir might play a role for certain boot loaders and for other operating systems.

Named-fields Format

This format is more readable, robust, extendible and allows to specify additional information (e.g. a UUID). It is recommended to use this format to keep your scripts more readable.

[Gerät :] Name[=Wert], …

Das Gerät-Feld ist optional. sfdisk ermittelt die Partitionsnummer aus dem Gerätenamen. Es erlaubt die Angabe der Partitionen in willkürlicher Reihenfolge. Diese Funktionalität wird meist von --dump verwendet. Verwenden Sie diese nicht, wenn Sie sich nicht sicher sind.

Der Wert kann zwischen Anführungszeichen angegeben werden (zum Beispiel name="Partitionsname"). Derzeit werden folgende Felder unterstützt:

start=Zahl
The first non-assigned sector aligned according to device I/O limits. The default start offset for the first partition is 1 MiB. The offset may be followed by the multiplicative suffixes (KiB, MiB, GiB, TiB, PiB, EiB, ZiB and YiB) then the number is interpreted as offset in bytes.
size=Zahl
gibt die Partitionsgröße in Sektoren an. Der Zahl können multiplikative Suffixe folgen (KiB, MiB, GiB, TiB, PiB, EiB, ZiB und YiB), in diesem Fall wird die Größe als Bytes interpretiert und an den E/A-Grenzen des Gerätes ausgerichtet.
bootable
markiert die Partition als bootfähig.
attrs=Zeichenkette
gibt die Partitionsattribute an, üblicherweise die GPT-Partitionsattribut-Bits. In --part-attrs finden Sie weitere Details zum GPT-Bitformat.
uuid=Zeichenkette
gibt die GPT-Partitions-UUID an.
name=Zeichenkette
GPT-Partitionsname
type=Code
Hexadezimalzahl (ohne 0x) für eine MBR-Partition beziehungsweise GUID für eine GPT-Partition. Zwecks Abwärtskompatibilität hat das Feld Id= die gleiche Bedeutung.

SICHERUNG DER PARTITIONSTABELLE

Es wird empfohlen, das Layout Ihrer Geräte zu sichern. sfdisk unterstützt dies auf zwei Arten:

Verwenden Sie die Option --dump, um eine Beschreibung der Geräteaufteilung in einer Textdatei zu speichern. Das Speicherformat ist für die spätere Verarbeitung in sfdisk geeignet. Beispiel:

sfdisk --dump /dev/sda > sda.dump

Dies kann später wie folgt zurückgespielt werden:

sfdisk /dev/sda < sda.dump

If you want to do a full (binary) backup of all sectors where the partition table is stored, then use the --backup option. It writes the sectors to ~/sfdisk-<device>-<offset>.bak files. The default name of the backup file can be changed with the --backup-file option. The backup files contain only raw data from the device. Note that the same concept of backup files is used by wipefs(8). For example:

sfdisk --backup /dev/sda

Der GPT-Header kann später folgendermaßen wiederhergestellt werden:

dd  if=~/sfdisk-sda-0x00000200.bak  of=/dev/sda  \
seek=$((0x00000200))  bs=1  conv=notrunc

Beachten Sie, dass die Option -I zur Wiederherstellung von Sektoren in sfdisk seit Version 2.26 nicht mehr verfügbar ist. Die benötigte Funktionalität stellt dd (1) bereit.

FARBEN

Implizites Einfärben wird deaktiviert, wenn die Datei /etc/terminal-colors.d/sfdisk.disable leer ist.

Lesen Sie terminal-colors.d(5) über die Einfärbekonfiguration. Die von sfdisk unterstützten logischen Farbnamen sind:

header
Die Kopfzeilen der ausgegebenen Tabellen.
warn
Die Warnmeldungen.
welcome
Die Begrüßungsnachricht.

ANMERKUNGEN

Seit Version 2.26 sind die Optionen -R oder --re-read, welche das erneute Einlesen der Partitionstabelle erzwingen, in sfdisk nicht mehr verfügbar. Verwenden Sie stattdessen blockdev --rereadpt.

Seit Version 2.26 sind die Optionen --DOS, --IBM, --DOS-extended, --unhide, --show-extended, --cylinders, --heads, --sectors, --inside-outer und --not-inside-outer in sfdisk nicht mehr verfügbar.

UMGEBUNGSVARIABLEN

SFDISK_DEBUG=all
aktiviert die Debug-Ausgabe für sfdisk.
LIBFDISK_DEBUG=all
aktiviert die Debug-Ausgabe für libfdisk.
LIBBLKID_DEBUG=all
aktiviert die Debug-Ausgabe.
LIBSMARTCOLS_DEBUG=all
aktiviert die Debug-Ausgabe für libsmartcols.

AUTOR

Karel Zak <[email protected]>

Die aktuelle Sfdisk-Implementierung basiert auf dem ursprünglichen Sfdisk von Andries E. Brouwer.

VERFÜGBARKEIT

Der Befehl sfdisk ist Teil des Pakets util-linux und kann von ftp://ftp.kernel.org/pub/linux/utils/util-linux/ heruntergeladen werden.

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <[email protected]> und Mario Blättermann <[email protected]> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <[email protected]>.