SuSE GmbH

SuSE Support-Datenbank

Titel: OS/2 Partitionen und Linux

----------

Übersicht o Stichwortsuche o History o Versionen o Kategorien o Alle Artikel

----------

OS/2 Partitionen und Linux

Die Regel:

Wenn ein neu installiertes Linux mit einem vorhandenen OS/2 koexistieren soll, müssen die neuen Linux-Partitionen - vor allem die logischen - zunächst mit OS/2 fdisk angelegt und danach erst mit Linux fdisk in Linux-Partitionen (Typ 0x83) umgewandelt werden.

Andernfalls erkennt OS/2 diese neuen Partitionen u. U. nicht und sieht die Partitionierung als fehlerhaft an :-(

Der Grund:

OS/2 fdisk begnügt sich bei der Buchführung über die vorhandenen Partitionen (in den MBRs der Festplatten und den Partitionssektoren der erweiterten und logischen Partitionen) nicht mit den konventionellen, allgemein verständlichen Einträgen, sondern nutzt freien Platz in diesen Sektoren zum Speichern von Zusatzinformationen. Sind diese inkonsistent, so sieht OS/2 fdisk die Partitionstabelle als fehlerhaft an und verweigert auch Bootmanager-Dienste. Die fdisk-Programme anderer Betriebssysteme pflegen diese Zusatzinformationen natürlich nicht... Konflikte sind vorprogrammiert.

Erweiterte und logische Partitionen: Allgemeines

Generell enthält die erste Spur einer erweiterten, 2. logischen, 3. logischen ... Partition nur eine Partitionstabelle am Ende des ersten Sektors (Aufbau wie im MBR), und ansonsten lauter Nullen. Der Nutzbereich beginnt dann mit der zweiten Spur.

Dabei sind die Partitionstabellen-Einträge Zeiger mit folgender Bedeutung:


Partitionstabelle in ...  |  verweist auf ...
--------------------------+----------------------------------
erweiterter Partition     |  Nutzbereich 1. log. Partition
                          |  Anfang 2. logische Partition
                          |
2. log. Partition         |  Nutzbereich 2. log. Partition
                          |  Anfang 3. logische Partition
                          |
......                    |  ......
                          |
letzte log. Partition     |  Nutzbereich letzte log. Partition

Erweiterte Partitionen: OS/2 vs. Linux

OS/2

Eine erweiterte Partition kann mit OS/2 fdisk nicht direkt angelegt oder verändert werden; die Anpassung geschieht automatisch beim Definieren der logischen Partitionen. Die erweiterte Partition geht stets von der ersten bis zur letzten logischen Partition, ohne freien Platz am Anfang oder Ende. (Mittendrin können allerdings "Löcher" durch Löschen von logischen Partitionen erzeugt werden.)

Linux

Die erweiterte Partition ist mit Linux fdisk eigens zu definieren. Veränderungen bei logischen Partitionen beeinflussen ihre Lokation und Größe nicht. (Natürlich können logische Partitionen nur innerhalb von zusammenhängendem freien Platz in der erweiterten Partition angelegt werden.)

Technische Einzelheiten: Logische OS/2 Partitionen

No Warranty!

Die hier beschriebenen Informationen wurden durch "Nachschauen und Deuten", ohne Zuhilfenahme offizieller Dokumentation, gewonnen. Sie sind nach bestem Wissen hier wiedergegeben; irgendwelche Gewährleistung kann jedoch nicht gegeben werden.

Der erste Sektor einer mit OS/2 angelegten erweiterten oder logischen Partition (dabei betreffen die Daten zu Beginn der erweiterten Partition die erste logische P.) enthält über die Partitionstabelle hinaus etwas mehr:

                                BM-Menu-Bit
                                      |
0x180: 00 00 00 00 00 00 00 00-00 00 01 4F 53 32 4D 61 ...........OS2Ma
0x190: 69 6E 74 00 30 30 30 63-31 36 65 30 00 00 00 00 int.000c16e0....
0x1A0: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
0x1B0: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 80 01 Partitionstab. ab 0x1BE
0x1C0: 41 16 06 0F FF 11 3F 00-00 00 01 D0 07 00 00 00 (diese log. P.)
0x1D0: C1 12 05 0F FF FF 10 CC-0B 00 80 A0 0F 00 00 00 (nächste log.P.)
0x1E0: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
0x1F0: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 55 AA
(zu sehen mit einem Disk-Editor oder, einfacher, mit Linux fdisk, Expert Command x d ).

Deutung:

  Offset            |  Bedeutung
  ------------------+----------------------------------------------
  0x18A             |   01, falls im Bootmanager-Menu ("startbar"),
                    |   00 sonst.
                    |
  0x18B bis 0x192   |   Name dieser Partition im Bootmanager-Menu:
                    |   hier: OS2Maint 
                    |
  0x194 bis 0x19B   |   Logische Sektornummer des Anfangssektors 
                    |   der nächsten logischen Partition 
                    |   (durchgezählt vom Beginn der Platte ab 0),
                    |   und zwar als ASCII-Text(!!) Gibt es keine 
                    |   nächste, so 00000000.
Wenn das oben also etwa der Anfang von hda6 wäre, hieße das, dass hda7 bei Sektor 0x000C16E0 der Festplatte beginnt.

Natürlich läßt sich das auch aus den Partitionstabellen selbst errechnen, aber OS/2 will es eben nochmal extra haben. Warum? Wir wissen es nicht ... Linux fdisk läßt den Bereich vor 0x1BE natürlich unberührt, und das stört OS/2, wenn ab 0x18A noch irgendwelcher veraltete Datenmüll steht.

Unterschiedliche Reihenfolge (Verzeigerung) der logischen Partitionen

OS/2

Es geht streng nach der physikalischen Anordnung auf der Disk: jede logische Partition zeigt auf ihren "physikalischen Nachfolger", der mit der niedrigsten Zylindernummer hinter ihrem Ende anfängt. Diese Anordnung wird erhalten, auch wenn logische Laufwerke nachträglich erzeugt oder gelöscht werden.

Beispiel:

 Zylinder  | 300-599     800-1099    1100-1512
 Partition | hda5  -->   hda6  -->   hda7
Nach Neuanlegen von 600-799:
 Zylinder  | 300-599     600-799     800-1099    1100-1512
 Partition | hda5  -->   hda6  -->   hda7  -->   hda8
Nach Löschen von 800-1099:
 Zylinder  | 300-599     600-799     1100-1512
 Partition | hda5  -->   hda6  -->   hda7

LINUX

verfährt beim Löschen genauso, aber beim Neuanlegen wird die "Neue" hinten angehängt:

 Zylinder  | 300-599     800-1099    1100-1512   600-799
 Partition | hda5  -->   hda6  -->   hda7  -->   hda8

Nebenwirkung hier im letzten Beispiel: ist hda8 eine Partition vom DOS-Typ, so wirkt sich die berüchtigte 1024-Zylinder-Grenze (1024_Zylinder.html) dahingehend aus, daß MS-DOS die hda8 nicht sehen kann, obwohl sie vollständig unter dieser Grenze liegt. Denn der "Weg" zu hda8 führt eben durch die Partitionstabelle in hda7, und die ist off limits ...

Und eine letzte Anmerkung zum OS/2 Bootmanager: er belegt viel zu viel Platz auf der Platte!!
Der eigentliche Code ist unter 20kB lang, und dennoch belegt er auf einer Standardplatte mit 16 heads und 63 Sektoren/Spur ganze 3 Zylinder zu 504 kB!

Nun, einen Zylinder muss er als selbständige Partition wohl bekommen, aber den Rest kann man ihm, etwa mit Linux fdisk, ohne jeden Schaden wegnehmen und anderweitig verbraten! (mehrfach ausprobiert :-) Am besten gibt man ihm den Zylinder 0, denn der ist - wegen der MBR-Spur - um eine Spur kürzer!

----------

Siehe auch:

----------

Stichwörter: OS/2, OS2, BOOTEN, LILO, PARTITIONEN, PARTITIONIEREN

----------

Kategorien: Andere Betriebssysteme

----------

Feedback willkommen: Send Mail to kgw@suse.de (Geben Sie bitte folgendes Stichwort an: SDB-kgw_os2.partitionen)

----------

Übersicht o Stichwortsuche o History o Versionen o Kategorien o Alle Artikel

----------

SDB-kgw_os2.partitionen, Copyright SuSE GmbH, Nuremberg, Germany - Version: 13. Jun 1997
SuSE GmbH - Zuletzt generiert: 03. Oct 1999 22:36:24 by maddin with sdb_gen 1.00.0