dkpart(8) dkpart(8)
NAME
dkpart - Partitionstabellen verwalten
SYNTAX
dkpart -l [-b] [-n name] {devicename|textfile}
dkpart -e [-n name] {[-w] devicename|textfile}
dkpart {-d std|-f file} [-n name] [-w] devicename
dkpart -g geo [-d std] [-n name] textfile
dkpart -help
BESCHREIBUNG
Mit dkpart können Partitionstabellen verwaltet bzw. für neue Platten-
typen angelegt werden. Zur Änderung der Partitionstabelle für eine
vorhandene Platte muß bei dkpart der zeichenorientierte Gerätename der
Platte (devicename) angegeben werden. Außerdem kann dkpart zum Anle-
gen oder Ändern einer in textfile gespeicherten Partitionstabelle für
einen bestimmten Plattenlaufwerkstyp benutzt werden.
Die Partitionen werden in einem aus 16 Elementen bestehenden Array mit
den Nummern der Startzylinder und den Partitionslängen abgespeichert.
Mit dkpart wird ein regelbasiertes Konzept zur Einteilung einer Platte
in Partitionen eingeführt, durch das sichergestellt wird, daß Änderun-
gen an einer der Partitionen Auswirkungen auf andere Partitionen
haben. Dadurch wird die Gefahr einer versehentlichen Überlagerung von
Partitionen ausgeschaltet. dkpart stellt die Partitionseinteilung der
Platte auch grafisch in einem Belegungsdiagramm dar, um auf Fehler
hinzuweisen, die durch Partitionsüberlagerungen entstehen könnten.
OPTIONEN
-b Blockgröße ausgeben.
-d std Stellt Standardpartitionen für devicename ein oder schreibt
Standardpartitionen für geo nach textfile. Die Standardpar-
titionen werden in Abhängigkeit von der Plattengröße festge-
legt.
-e Ändert die Partitionstabelle für eine Platte bzw. eine in
einer Textdatei gespeicherte Partitionstabelle.
-f file Stellt Partitionen aus file für devicename ein. file ist
der Pfadname einer Textdatei, deren Format mit dem von
dkpart erstellten Format übereinstimmen muß. Wenn file nicht
im aktuellen Verzeichnis enthalten ist oder in file kein "/"
enthalten ist, sucht dkpart in /etc/default/diskinfo/dkpart
nach file.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
dkpart(8) dkpart(8)
-g geo Berechnet und ändert Partitionen für eine bestimmte Platten-
geometrie. geo kann ein Gerätename der Partition "0" einer
Platte sein oder ein Dateiname oder eine Plattengeometrie in
der Form
ncyls-reservedcyls:nheads:nsectors:sectsize
ncyls ist dabei die Gesamtzahl der Zylinder, reservedcyls
die Anzahl der Zylinder, die für Alternativspuren und Konfi-
gurationsinformationen reserviert werden sollen, nheads die
Anzahl der Spuren pro Zylinder, nsectors die Anzahl der Sek-
toren pro Spur und sectsize die Sektorgröße in Byte.
-l Gibt die Partitionstabelle für eine Platte bzw. eine in
einer Textdatei gespeicherte Partitionstabelle aus.
Bei Platten werden immer nur die Daten des Kerns ausgegeben.
Die Daten werden beim ersten open von der Platte gelesen
oder über dkpart options eingestellt. Bei einer "multi-
hosted"-Umgebung sind die Erläuterungen zu der Option -X des
Kommandos dksetup [siehe dksetup(8)] zu beachten.
-n name Setzt den Namen der Partitionstabelle auf name.
-w Es soll nicht versucht werden, die Partitionstabelle auf die
Speichermedien zu schreiben. Dies ist für schreibgeschützte
Medien wie z. B. die CD-ROM die Standardeinstellung.
devicename
Zeichenorientierter Gerätename der Partition "0" einer
Platte.
textfile Der Pfadname der Textdatei.
Mit dkpart können im Dialog die Regeln geändert werden, nach denen der
Anfang und das Ende einer Partition festgelegt werden. Bei einer Ände-
rung der Regeln zeigt dkpart die Auswirkungen auf die Partitionsgrö-
ßen, -einteilung und -überlagerung an. Sobald der Benutzer die Parti-
tionen nach seinen Wünschen geändert hat, wird die Partitionstabelle
aktualisiert.
Für jede Partition gibt es zwei Regeln, nach denen der Start- und der
Endzylinder einer Partition festgelegt werden. Diese Regeln können
folgendermaßen aussehen:
# Die absolute Nummer eines Zylinders (bei 0 beginnend).
#mb Eine Größenangabe in MByte (1 MByte = 2^20 bzw. 1.048.576
Byte). Alle MByte-Werte werden gegebenenfalls auf den näch-
sten Zylinder aufgerundet.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
dkpart(8) dkpart(8)
>pX Ein Ausdruck, der für den ersten Zylinder nach Partition X
steht.
<pX Ein Ausdruck, der für den Anfang von Partition X steht.
=pX Ein Ausdruck, der für die Größe von Partition X steht.
=pX/N Ein Ausdruck, der für 1/Ntel der Größe der Partition X
steht.
=pX*N Ein Ausdruck, der für das N-fache der Größe der Partition X
steht.
$ Ein Ausdruck, der für den Rest der Platte steht.
$/N Ein Ausdruck, der für 1/Ntel des Rests der Platte steht.
$/N*N Ein Ausdruck, der für den Rest der Platte steht, der auf ein
ganzzahliges Vielfaches von N Zylindern abgerundet wurde.
Die Partitionsgröße 0 bedeutet, daß die Partition nicht benutzt wird.
Das nachfolgende Beispiel zeigt die Standardregeln zur Einteilung
einer MP81 in Partitionen:
"MP81" Geometry 2694-2:9:85 (cyls:heads:sectors)
Sector size = 512 bytes 1006.3 Total Mbytes (1MB = 1024 * 1024 bytes)
Partition Start Rule End Rule First Cyl Last Cyl Cyl Count Size (MB)
0 >p10 70mb 6 193 188 70.2
1 >p0 128mb 194 536 343 128.1
2 >p1 200mb 537 1072 536 200.2
3 >p2 170mb 1073 1528 456 170.3
4 >p3 100mb 1529 1796 268 100.1
5 >p4 <p15 1797 2690 894 333.9
6 0 >p3 0 1528 1529 571.1
7 0 >p5 0 2690 2691 1005.2
8 >p6 >p7 1529 2690 1162 434.0
9 0 0 * * * Unused * * *
10 0 2mb 0 5 6 2.2
11 0 =p6/2 0 763 764 285.4
12 >p11 >p6 764 1528 765 285.8
13 >p12 =p8/2 1529 2109 581 217.0
14 >p13 >p7 2110 2690 581 217.0
15 2691 1 2691 2691 1 0.4
# Partition layout (not to scale):
|10-|-0-|---1----|------2------|-----3-----|--4---|-----------5-----------|15|
|--------------------6---------------------|--------------8---------------|
|------------------------------------7------------------------------------|
|----------11-----------|-------12---------|------13-------|-----14-------|
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98
dkpart(8) dkpart(8)
Die ersten Zeilen enthalten den Namen der Partitionstabelle (MP81),
die Plattengeometrie sowie die Größe der Platte in MByte. In der nach-
folgenden Zeile stehen die Überschriften für die Partitionseintei-
lungsregeln und Partitionsgrößen. Für jede Partition wird eine Regel
für den Partitionsbeginn, eine Regel für das Partitionsende, ein
Startzylinder, ein Endzylinder sowie seine Größe in Zylinder und MByte
angegeben. Auf die Partitionsübersicht folgt das Plattenbelegungsdia-
gramm, aus dem die Anordnung der Partitionen sowie eventuelle Partiti-
onsüberlagerungen hervorgehen. Das Belegungsdiagramm stellt die Größen
der Partitionen relativ und nicht maßstabsgetreu dar.
In obigem Beispiel für die Platte MP81 startet Partition 10 bei Zylin-
der 0 und hat eine Länge von ca. 2 MByte (aufgerundet auf ganze Zylin-
der). Diese Partition ist für boot2 vorgesehen. Der Anfang von Parti-
tion 0 kann mit Zylinder 6 oder mit >p10 (also auf Partition 10 fol-
gend) angegeben werden. Somit folgen die Partitionen 0, 1, 2, 3 und 4
auf die Partitionen 10, 0, 1, 2 und 3 (>p10, >p0, >p1, >p2, >p3) und
haben eine Länge von 188, 343, 536, 456 bzw. 268 Zylindern oder ca.
70, 128, 200, 170 bzw. 100 MByte. Partition 5 beginnt hinter Partition
4 (>p4) und endet vor Partition 15 (<p15). Partition 15 hat eine Länge
von einem Zylinder und ist als Statesave-Gerät vorgesehen, um Platten
zu spiegeln. Die Partitionen 0, 1, 2, 3, 4 und 5 sind für /, /swap,
/opt, /usr, /var und /home vorgesehen.
Partition 6 beginnt bei Zylinder 0 und endet mit Partition 3 (>p3).
Partition 7 beginnt bei Zylinder 0 und endet mit Partition 5, umfaßt
also die gesamte Platte ohne Partition 15. Partition 8 beginnt am Ende
von Partition 6 (>p6) und endet mit Partition 7 (>p7). Die Partition 9
ist unbenutzt. Die Partitionen 11 und 12 halbieren jeweils Partition
6, bzw. die Partitionen 13 und 14 halbieren jeweils Partition 8.
Beim Ändern von Partitionen müssen lediglich die Regeln für den Parti-
tionsanfang und das Partitionsende geändert werden; dadurch werden die
Offsets und Längen aller anderen Partitionen ebenso wie das Plattenbe-
legungsdiagramm automatisch neu berechnet.
Zum Ändern von Partitionen können folgende Kommandos benutzt werden:
h, j, k, l Um eine Regel nach links, unten, oben oder rechts bewegen.
Hier können auch die Pfeiltasten des Terminals (falls vor-
handen) eingesetzt werden.
n Namen dieser Partitionstabelle ändern.
TAB Um ein Feld nach rechts bewegen.
s Änderungen speichern.
w Partition in Textdatei schreiben.
q Ende.
Seite 4 Reliant UNIX 5.44 Gedruckt 11/98
dkpart(8) dkpart(8)
u Am Feld durchgeführte Änderungen rückgängig machen.
U Alle Änderungen rückgängig machen.
D Standardpartition errechnen.
? Hilfeinformationen über dkpart-Kommandos ausgeben.
r Hilfeinformationen über Partitionsregeln ausgeben.
BEISPIELE
Anzeige der Partitionen von Platte /dev/ios0/rsdisk000:
dkpart -l /dev/ios0/rsdisk000s0
Änderung der Partitionstabelle von Platte /dev/ios0/rsdisk001:
dkpart -e /dev/ios0/rsdisk001s0
Änderung der Partitionstabelle der Datei 2363:
dkpart -e 2363
Um eine Partitionstabelle für einen neuen Plattentyp mit 2611 Zylin-
dern, 11 reservierten Zylindern, 19 Spuren pro Zylinder, 18 Sektoren
pro Spur und 2048-Byte-Sektoren einzurichten, benutzen Sie NEWDISK
folgendermaßen:
dkpart -g 2611-11:19:18:2048 -n NEWDISK textfile
HINWEISE
Mit dkpart kann nicht überprüft werden, ob auf einer Platte sinnvolle
Daten enthalten sind; außerdem führt dieses Dienstprogramm keine
Sicherung oder Wiederherstellung von vorhandenen Daten durch. Das
Sichern von Daten, Wiederherstellen von Dateisystemen und/oder erneute
Laden von Datenbasen muß vom Benutzer erledigt werden.
dkpart wird im Normalfall vom Plattenformatierer aufgerufen, um die
Partitionsdaten nach PSDF (Pyramid Standard Disk Format) zu schreiben.
dkpart generiert die Standardpartitionseinteilung auf der Basis der
Plattengeometrie.
Ist mit dkpart die Partitionstabelle einer Platte verändert worden, so
müssen folgende Kommandos aufgerufen werden, um die Platte mit ihren
neuen Partitionen in der Verwaltungstabelle /etc/device.tab einzutra-
gen:
/usr/sadm/mkdbin/devtabupd -r devicename
/usr/sadm/mkdbin/devtabupd -a devicename
Seite 5 Reliant UNIX 5.44 Gedruckt 11/98
dkpart(8) dkpart(8)
wobei devicename der Name des Geräts ist, wie er im Kommando
autoconf(8) erscheint (z. B. ios0/sdisk014).
Es wird empfohlen, die Änderung der Partitionstabelle mit Hilfe von
sysadm(1M) oder Config vorzunehmen.
DATEIEN
/etc/default/diskinfo/dkpart/*
SIEHE AUCH
psdf(4), dksetup(8), dktune(8), format(8), setinfo(8).
Seite 6 Reliant UNIX 5.44 Gedruckt 11/98