Inhalt

6. BIOS Probleme mit großen Platten

Das System in meinem Büro hat eine 1GB IDE-Platte. Das BIOS erkennt nur die ersten 504MB dieser IDE-Platte (1MB bedeutet 2**10 bytes, nicht 10**6 bytes). Deswegen habe ich MS-DOS auf einer 350MB Partition /dev/hda1 und meine Linux Root-Partition auf einer 120MB Partition /dev/hda2.

MS-DOS war nicht in der Lage, sich auf der neuen Platte selbst zu installieren. Novell DOS 7 hatte die gleichen Probleme. Glücklicherweise vergaß »Options by IBM« die »OnTrack« Diskette dem Packet mit der Platte beizulegen. Die Platte sollte mit dem »OnTrack Disk Manager« Programm ausgeliefert werden, die für ein Nur-DOS-System, soviel ich weiß, auch benutzt werden muß.

Ich erstellte aber eine Partitionstabelle mit fdisk von Linux. MS-DOS 6.2 verweigerte aber die Installation auf /dev/hda1. Die Fehlermeldung lautete ungefähr so: »Diese Version von MS-DOS ist für Neu-Installationen. Ihr Computer hat aber schon ein MS-DOS installiert, deshalb benötigen Sie eine Upgrade-Version von Ihrem Händler.« Dabei war die Platte aber brandneu.

So ein Blödsinn! Ich startete also das Linux fdisk erneut und löschte Partition 1 aus der Tabelle. Das stellte MS-DOS 6.2 zufrieden. Es kreierte anschließend die exakt gleiche Partition 1, welche ich gerade gelöschte hatte und konnte sich darauf installieren. MS-DOS 6.2 schrieb zwar seinen Master Boot Record auf die Platte, aber konnte trotzdem nicht starten.

Glücklicherweise hatte ich noch einen Slackware Kernel auf einer Diskette, welche von dem Slackware Installationsprogramm setup erstellt wurde. Mit diesem Kernel bootete ich dann Linux und überschrieb den defekten MBR von MS-DOS mit LILO. Das funktionierte endlich. Hier ist die /etc/lilo.conf Datei, die ich benutzte:

boot = /dev/hda
map = /lilo-map
delay = 100
ramdisk = 0             # schaltet ramdisk im Slackware Kernel aus
timeout = 100
prompt
disk = /dev/hda         # BIOS sieht nur die ersten 500 MB.
   bios = 0x80          # gibt an, daß die erste IDE-Platte benutzt wird
   sectors = 63         # die Geometriedaten aus der HD Dokumentation
   heads = 16
   cylinders = 2100
image = /vmlinuz
  append = "hd=2100,16,63"
  root = /dev/hda2
  label = linux
  read-only
  vga = extended
other = /dev/hda1
  label = msdos
  table = /dev/hda
  loader = /boot/chain.b

Danach installierte ich diese Partitionen und überprüfte, daß die Partition mit dem zImage, boot.b, map, chain.b und den message Files, ein MSDOS-Dateisystem benutzen konnte, wenn dieses nicht mit »Stacker« oder »Doublespace« behandelt war. So konnte ich dann DOS von der 500MB Partition /dev/hda1 booten.

Ich habe auch gelernt, daß »OnTrack« eine um ein paar Bytes versetzte Partitionstabelle geschrieben hätte. Es ist zwar möglich den Linux IDE Treiber zu ändern, damit er diese erkennt, aber die Installation wäre unmöglich mit dem kompilierten Slackware Kernel. Schließlich erhielt ich doch noch die »OnTrack« Diskette. Ich rief OnTracks Technischen Support an, welcher mir erzählte, daß Linux fehlerhaft sei, da es nicht das BIOS benutzt. Ich habe ihre Diskette dann verschenkt.


Inhalt