BIOS-Update a la hp
Im Zuge einer doppelten Display- und Festplattentransplantation in meinem Notebook muss ich das Referenz-Windows[1] neu installieren. Da ich nun schon auf der Treiberseite von hp bin, fällt mir auf, dass es ein BIOS aus dem September 2007 gibt. Die Versionsnummer F.0C find ich zwar seltsam (installiert ist F.18 aus 2006), aber probieren wir das mal.
Es folgt ein Kampf mit jahrzehnte alter PC-Technik
Fußnoten
[1] ich installiere üblicherweise ein Windows XP in eine 3-GB-Partition auf jeder Platte eines Systems, für das ich Herstellersupport erwarte. Auf diese Weise kann ich einem renitenten Servicetechniker zeigen, dass der Hardwarefehler nicht nur mit diesem komischen Linuxdings auftritt, sondern auch mit dem Qualitätssystem des Marktführers. Habe ich bisher noch nie gebraucht, die Techniker von hp sind da ausgesprochen professionell ausgebildet.
Dieses neueste BIOS gibt es erstaunlicherweise - entgegen aller anderen BIOS-Updates auf der Seite - nicht als Windows-Programm (was für mich in dieser Situation - wir erinnern uns, ich war gerade dabei XP zu installieren - sehr praktisch gewesen wäre), sondern nur als "FreeDOS Bootable" in der Größe von 1.44 MB.
Superidee, hp, ein BIOS-Update für ein diskettenlaufwerkloses Notebook ausschließlich als bootbare Diskette anzubieten. Hat da mal wieder jemand nur bis zur eigenen Nasenspitze gedacht?
Das selbstextrahierende Archiv im handlichen und zeitgemäßen .exe-Format lässt sich natürlich mit unzip nicht auspacken (warum denn auch den Standardpacker benutzen, wenn das so schön proprietär geht), aber Wine führt das Archiv prima aus. Wir brechen den Vorgang dort, wo darum gebeten wird, eine Diskette in das nicht vorhandene Laufwerk A einzulegen ab und pulen uns den ausgepackten Inhalt des Archivs aus ~/.wine/fake_windows/Windows/profiles/mh/Desktop. Dort finden wir ein F0C.IMG und ein COPYDISK.EXE und ein wenig README. Das README lassen wir links liegen, was sich später als Fehler erweisen wird.
Das F0C.IMG lässt sich weder loopback mounten noch sagt file etwas anderes als schnödes "data". Mit most -b reingeguckt, sieht es entfernt aus wie ein Disketten-Bootsektor. Komisch, das. Aus dem IRC kommt der Hinweis auf losetup --offset, und schnell ist ermittelt, dass da 32 Bytes Extraheader vorne dran sind. Nun lässt sich das Image mounten.
Kurze Recherche später: FreeDOS von USB-Stick booten zu lassen geht zwar, ist aber auch dann, wenn man nach dem Boot den Stick nicht mehr braucht, ein Kampf. Wenn man den Stick danach noch verwenden will, braucht's auch noch einen USB-Treiber für DOS. Wir legen diese Idee zu den Akten.
Nächster Versuch: Das Diskettenimage direkt vom USB-Stick booten. Aber weder direkt mit dd auf /dev/sda geschrieben, noch in der Hoffnung eine Festplattenstruktur sei für das BIOS einfacher, ebenfalls mit dd auf /dev/sda4 geschrieben, gibt es etwas anderes als das seit 20 Jahren vertraute "Non system disk or disk error".
Mir platzt der Kragen und ich opfere einen CD-Rohling. Ein leeres Daten-CD-Projekt mit dem Floppy-Image als Bootimage (Floppyemulation, El Torito sei Dank) ist mit k3b schnell erstellt und gebrannt und das Notebook bootet.
Und beschwert sich, dass das zu flashende neue BIOS älter ist als das, was bereits installiert werden soll: Installiert ist F.18 von 2006, installiert werden soll F.0C vom 05. März 2004. Das README bestätigt, dass der Inhalt des Archivs über drei Jahre älter ist als das Datum, mit dem das Image auf der Webseite von hp angegeben ist (und natürlich, ganz oben steht).
Recht schönen Dank, hp, das habt Ihr mal wieder so richtig gut gemacht. Not.
Comments
Display comments as Linear | Threaded
Sven Hartge on :
Ich glaube, du suchst etwas wie memdisk aus dem syslinux-Projekt.
http://syslinux.zytor.com/memdisk.php
Ich habe in meiner menu.lst noch das folgende, dass ich zum Update meines T23 brauchte:
title BIOS upgrade root (hd0,0)
kernel /usr/lib/syslinux/memdisk initrd /boot/1AUJ20US.IMG
Hat bestens funktioniert.
opatios on :
Irgendwo hab ich mal gelesen, dass man ein BIOS-Update nur dann machen soll, wenn das neue etwas kann, was das alte nicht kann, man dies aber dringend benötigt, oder wenn das alte BIOS einen Fehler aufweist der einen wirklich stört.
Gab es denn wirklich einen Grund, der Möhre ein neueres BIOS zu verpassen, außer "weil es eins gibt"?
Marc 'Zugschlus' Haber on :
Ich mach das schonmal unnötigerweise, wenn ich eh grad am basteln bin, ein aktuelles Backup habe und sowieso schon wegen andererer Baustellen mit Datenverlust rechne.