SuSE Support-Datenbank

Titel: Erweiterte Partitionen nicht erkannt

---

Übersicht ---- Stichwortsuche ---- History ---- Versionen ---- Kategorien ---- Alle Artikel
English
---

Erweiterte Partitionen nicht erkannt

Symptom:

Beim Versuch, Linux zu installieren, wird auf der IDE Platte nur die erste Partition erkannt, der Rest wird mit Dateisystem "UNKNOWN" angezeigt; unter anderem auch eine sicher vorhandene "erweiterte Partition".

Ursache:

Uns ist dieses Verhalten erst neuerdings bekannt geworden. Hintergrund ist, daß jede Partition eine Typkennung bekommt. In bestimmten proprietären (Fenster-betonten) Systemen werden offenbar seit kurzem die "erweiterten Partitionen" mit einer bisher ungebräuchlichen Kennung (hexadezimal "0x0f") versehen. Die übliche Konvention besagt, daß "erweiterte Partitionen" mit "0x05" zu kennnzeichnen sind.

Für Linux und das Linux fdisk sind Partitionen vom Typ "0x0f" dagegen normale "primäre Partitionen" wie alle anderen auch. Nach "logischen Partitionen" darin wird natürlich nicht gesucht, so daß der gesamte von dieser Partition belegte Festplattenplatz als nicht verfügbar angesehen wird, auch wenn für logische Partitionen noch freier Platz wäre.

Natürlich wird die (wahlweise) Behandlung von "0x0f"-Partitionen als "erweitert" bald in Linux und Linux fdisk Eingang finden. Wir empfehlen Ihnen, unseren Webserver oder die einschlägigen Newsgruppen (comp.os.linux.development.system u.a.) im Auge zu behalten.

Update-Info (Juli 98): 0x0f erweiterte Partition werden unterstützt vom Linux-Kernel 2.0.34 und dem fdisk im neuen Paket util (Serie a), die Sie von unserem ftp-Server herunterladen können.

Lösung:

Bitte um Feedback

Könnten Sie vor und nach der Prozedur, die ich Ihnen weiter unten beschreiben werde, den vollständigen Zustand der Partitionstabelle ermitteln und uns zukommen lassen? Sie helfen uns damit, unsere Support-Erfahrung zu erweitern und Sie und andere S.u.S.E. Linux Anwender in Zukunft besser und gezielter zu unterstützen.

Gehen Sie dazu am besten vor wie folgt:


Legen Sie eine Datei fdisk.in an mit folgendem Inhalt (verschiedene Lesebefehle für fdisk -- es wird NICHTS geschrieben). Die Zeilen mit den Scheren natürlich weglassen!

--------------8<---  Anfang  fdisk.in  ----------8<------------
p
x
p
e
d
q
--------------8<----  Ende   fdisk.in  ----------8<------------
Seien Sie hier bitte sorgfältig -- Sie schreiben eine Befehlsliste für fdisk!!

Geben Sie dann als Kommando ein:

fdisk /dev/Ihre_Festplatte <fdisk.in >>fdisk.log 2>>fdisk.errlog
(Ihre_Festplatte dürfte hda sein).

Sollten Sie mehrere Festplatten im System haben, wiederholen Sie den Befehl für jede einzelne Festplatte.

Abschließend schicken Sie uns bitte die beiden Logfiles per e-Mail zu.


Vorgehensweise

Im Grunde umfaßt die nötige Änderung auf Ihrer Platte ein einziges Byte in der Partitionstabelle im MBR, nämlich die Änderung der Kennung der erweiterten Partition von 0x0f auf 0x05.

Der herkömmliche Weg ist, die ganze erweiterte Partition samt enthaltenen logischen Partitionen zu sichern, zu löschen und nach Neupartitionierung mit einem "anständigen" fdisk (z. B. Linux fdisk) wieder einzuspielen.

:-((

Viel einfacher ist es, die obengenannten Updates für Kernel und fdisk herunterzuladen und einen neuen Kernel zu bauen und in Betrieb zu nehmen.

Die folgende Information betrifft vor allem User, die nicht an das obengenannte Update herankommen oder die vor ihrer Erstinstallation stehen und die nötigen Neuerungen für Kernel/fdisk nicht im Installationssystem haben (S.u.S.E. Linux Versionen vor 5.3).

Mit den älteren Linux fdisk Versionen kommt man, wie gesagt, nicht weiter. Da in Linux jedoch grundsätzlich alles irgendwie geht ;-), gibt es natürlich die Möglichkeit, das anstößige 0x0f Byte in der Partitionstabelle auf eigene Faust von Hand zu ändern: mit einem genügend "skrupellosen" Disk-Editor.

Wenn Sie keinen haben, können Sie wie folgt verfahren. Bitte berücksichtigen Sie jedoch, daß dies zu verstehen ist als

ohne jede Gewähr
und

nicht Gegenstand für Installationssupport-Anfragen.
Daß hier

höchste Sorgfalt

angebracht ist, muß wohl nicht näher erläutert werden.

Sie brauchen einen Hex-fähigen Editor. Im Installationssystem und im Rettungssystem gibt es leider keinen. Sie können jedoch von der Installationsdiskette die "CD-ROM Demo" starten (linuxrc Hauptmenu), zu der die letzte S.u.S.E. Linux-CD (Live-Filesystem) verwendet wird. Dies ist ein Linux-System, das von einer RAM-Disk und dieser CD läuft. Es enthält den /usr/bin/elvis Editor (einen vi-Clone), der einen Hexeditor-Modus hat.

  1. Demo-System starten, Login als root.
  2. WICHTIG! Backup des MBR auf eine (besser zwei!) minix-Floppy (Ihre_Festplatte dürfte hda sein):
       badblocks -v /dev/fd0 1440
       mkfs.minix /dev/fd0
       mkdir /floppy
       mount /dev/fd0 /floppy
       dd if=/dev/Ihre_Festplatte of=/floppy/mieser.br bs=512 count=1
       ls -l /floppy
    
  3. Arbeitskopie in ein schreibbares Verzeichnis:
       cp /floppy/mieser.br /root/guter.br
    
  4. Arbeitskopie editieren:
       /usr/bin/elvis /root/guter.br
    
    Im elvis: Display auf hexedit umschalten:
       <Esc> :display hex
    
    Die Partitions-Kennung 0x0f muß an genau einem der Offsets 0x1c2, 0x1d2, 0x1e2, 0x1f2 stehen. An keinem dieser Offsets darf 0x05 stehen! Andernfalls nicht fortfahren!!

    Cursor hinfahren und 0f ersetzen durch 05:

      
       r Strg-V Strg-E
    
    (r = Zeichen unterm Cursor ersetzen, Strg-E ist ASCII 0x05, Strg-V ist die Ein-Zeichen-Quotierung im vi)

    VORSICHT! Sonst NICHTS ändern! Dann sichern und Ende:

       :x
    
  5. Gepatchte Arbeitskopie in MBR zurück: VORSICHT! Kontrollieren Sie genau die Angabe für Ihre_Festplatte !
       dd if=/root/guter.br of=/dev/Ihre_Festplatte bs=512 count=1
    
  6. Sofort anschließend: Reboot!
Danach ist die bisher "geheime" erweiterte Partition eine gewöhnliche erweiterte Partition, die auch von Linux so erkannt wird.

Ist etwas schiefgegangen, so können Sie das S.u.S.E. Linux Rettungssystem booten und anhand Ihrer Sicherheitskopie den bisherigen MBR wiederherstellen. (vgl. Handbuch Abschnitt 8.5.3 - Entfernen von LILO)

---

Stichwörter: FDISK, PARTITIONEN, INSTALL, IDE, PLATTE, BOOTEN, YAST

---

Übersicht ---- Stichwortsuche ---- History ---- Versionen ---- Kategorien ---- Alle Artikel
English
---

SDB-sw_0x0b, Copyright SuSE GmbH, Nuremberg, Germany - Version: 19. Jun 1998
Impressum - Zuletzt generiert: 24. Feb 1999 12:54:30 by maddin with sdb_gen 1.00.0