BIOS-Update ohne optisches Laufwerk unter Linux: Unterschied zwischen den Versionen

Aus ThinkPad-Wiki
K (GRUB 1/GRUB Legacy – Gliederungsebene angepaßt)
(Neues Kapitel grub4dos)
Zeile 1: Zeile 1:
== Einleitung ==
= Einleitung =
Dieser Artikel beschreibt das Ausführen eines BIOS-Update unter Ubuntu mithilfe von Grub2 und SysLinux. Zur Durchführung wird weder ein optisches Laufwerk noch ein USB-Speicherstick benötigt. Diese Anleitung funktioniert auch unter allen anderen Distributionen mit GRUB1/2, nur das syslinux Paket heißt eventuell anders oder fehlt (auf die Version achten siehe [http://thinkpad-wiki.org/BIOS-Update_ohne_optisches_Laufwerk_unter_Linux#Ubuntu_10.04 10.04] !).
Dieser Artikel beschreibt das Ausführen eines BIOS-Update für Linux-Benutzer. Dazu kommt entweder GRUB4DOS auf einem USB-Stick oder der Bootloader des installierten Linux-Systems zum Einsatz.
 
= GRUB4DOS mit USB-Stick =
 
== Voraussetzungen ==
* Ein frisch mit FAT formatierter, leerer USB Stick
* ISO-Image des BIOS-Updates als Download von der [http://support.lenovo.com/en_US/detail.page?LegacyDocID=TPAD-MATRIX Lenovo Website]
 
== Erstellen des bootfähigen USB-Sticks ==
=== ISO-Image auf den Stick kopieren ===
cp cp /pfad/zur/iso-datei /media/stick/thinkpadbios.iso
sync
 
=== GRUB4DOS herunterladen, auspacken und installieren ===
wget http://download.gna.org/grub4dos/grub4dos-0.4.4.zip
unzip grub4dos-0.4.4.zip
cd grub4dos-0.4.4
cp grldr /media/name-des-sticks
 
Für den folgenden Schritt wird das korrekte Device sdX des Sticks benötigt. Dazu dient unmittelbar nach dem Anstecken folgendes Kommando:
dmesg | grep "Attached SCSI removable disk" | tail -1
In der Ausgabe ist das gesuchte Device sdX zu sehen:
[ 1234.567890] sd 0:0:0:0: [sdX] Attached SCSI removable disk
'''<u>Vorsicht:</u> eine falsche Angabe des Device kann katastrophale Auswirkungen auf das installierte System haben, so ist sda in der Regel die Systemplatte.'''
 
Das Device sdX setzt man nun in folgendes Kommando ein und führt es aus:
sudo ./bootlace.com /dev/sdX
Ausgabe:
Disk geometry calculated according to the partition table:
        Sectors per track = xx, Number of heads = yyy
Success.
 
=== GRUB4DOS konfigurieren ===
Zuletzt erstellt man die Datei '''menu.lst''' auf dem Stick:
gedit /media/name-des-sticks/menu.lst
Inhalt:
color blue/green yellow/red white/magenta white/magenta
timeout 30
default /default
title ThinkPad BIOS Update
map (hd0,0)/thinkpadbios.iso (hd32)
map --hook
chainloader (hd32)
boot
 
=== Ausführung ===
Die Ausführung des Update ist am Ende dieses Artikels zusammengefaßt.  
 
= System-Bootloader mit Syslinux =
 
<u>Hinweis:</u> dieser Abschnitt funktioniert sinngemäß auch unter anderen Distributionen mit GRUB 1/2, nur das Paket '''syslinux''' heißt eventuell anders oder fehlt (auf die Version achten, siehe [[10.04|BIOS-Update_ohne_optisches_Laufwerk_unter_Linux#Ubuntu_10.04 10.04]]!).


== Voraussetzungen ==
== Voraussetzungen ==
* Ubuntu 10.04, 10.10 oder 11.04 auf Festplatte installiert (kein Livesystem!)
* Ubuntu 10.04 oder höher auf Festplatte installiert (kein Livesystem!)
* GRUB 2 (ist bei einem neu installierten Ubuntu automatisch der Fall)
* GRUB 2 (ist bei einem neu installierten Ubuntu automatisch der Fall)
* ISO-Image des BIOS-Updates als Download von der [http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=TPAD-MATRIX Lenovo Website].
* ISO-Image des BIOS-Updates als Download von der [http://support.lenovo.com/en_US/detail.page?LegacyDocID=TPAD-MATRIX Lenovo Website] Lenovo Website].
<u>Hinweis:</u> die hier beschriebene Vorgehensweise ''funktioniert nicht'' mit einer <u>EFI</u>-Installation (im Paket '''grub-efi-amd64''' fehlt das Modul '''linux16''').
<u>Hinweis:</u> die hier beschriebene Vorgehensweise ''funktioniert nicht'' mit einer <u>EFI</u>-Installation (im Paket '''grub-efi-amd64''' fehlt das Modul '''linux16''').


Zeile 11: Zeile 62:
=== ISO-Image kopieren ===
=== ISO-Image kopieren ===
Den Download kopiert man nach '''/boot''':
Den Download kopiert man nach '''/boot''':
  sudo cp /pfad/zur/iso-datei /boot/biosupdate.iso
  sudo cp /pfad/zur/iso-datei /boot/thinkpadbios.iso


=== SysLinux einrichten ===
=== Syslinux einrichten ===
==== Ubuntu 10.10 und 11.04 ====
==== Ubuntu 10.10 und höher ====
Zu installieren ist das Paket
Zu installieren ist das Paket
* '''syslinux'''
* '''syslinux'''
Zeile 23: Zeile 74:


==== Ubuntu 10.04 ====
==== Ubuntu 10.04 ====
Mit dem in Ubuntu 10.04 enthaltenen SysLinux-Paketen funktioniert das BIOS-Update nicht.
Mit dem in Ubuntu 10.04 enthaltenen Syslinux-Paketen funktioniert das BIOS-Update nicht.


Daher lädt man  das [http://packages.ubuntu.com/maverick/all/syslinux-common/download Paket syslinux-common aus 10.10] herunter, entpackt es mit
Daher lädt man  das [http://packages.ubuntu.com/maverick/all/syslinux-common/download Paket syslinux-common aus 10.10] herunter, entpackt es mit
Zeile 36: Zeile 87:
       set root='(hd0,1)' # diese Zeile analog den vorhandenen Einträgen in /boot/grub/grub.cfg anpassen!
       set root='(hd0,1)' # diese Zeile analog den vorhandenen Einträgen in /boot/grub/grub.cfg anpassen!
       linux16 /boot/memdisk iso
       linux16 /boot/memdisk iso
       initrd16 /boot/biosupdate.iso
       initrd16 /boot/thinkpadbios.iso
  }
  }


Zeile 43: Zeile 94:
       set root='(hd0,1)' # diese Zeile analog den vorhandenen Einträgen in /boot/grub/grub.cfg anpassen!
       set root='(hd0,1)' # diese Zeile analog den vorhandenen Einträgen in /boot/grub/grub.cfg anpassen!
       linux16 /memdisk iso
       linux16 /memdisk iso
       initrd16 /biosupdate.iso
       initrd16 /thinkpadbios.iso
  }
  }


Um beim Systemstart das Grub-Bootmenü anzuzeigen, sind in der Datei '''/etc/default/grub''' die beiden folgenden Zeilen wie gezeigt mit '#' auszukommentieren:
Um beim Systemstart das GRUB-Bootmenü anzuzeigen, sind in der Datei '''/etc/default/grub''' die beiden folgenden Zeilen wie gezeigt mit '#' auszukommentieren:
  #GRUB_HIDDEN_TIMEOUT=0
  #GRUB_HIDDEN_TIMEOUT=0
  #GRUB_HIDDEN_TIMEOUT_QUIET=true
  #GRUB_HIDDEN_TIMEOUT_QUIET=true
Zuletzt werden alle Änderungen an Grub aktiviert mit
Zuletzt werden alle Änderungen an GRUB aktiviert mit
  sudo update-grub
  sudo update-grub


=== GRUB 1/GRUB Legacy ===
=== GRUB 1 / GRUB Legacy ===
Falls man noch eine Distribution mit GRUB 1 (GRUB-legacy) hat (z.B. Archlinux), dann kann man das Iso ebenfalls einbinden.
Falls man noch eine Distribution mit GRUB 1 (GRUB Legacy) verwendet (z.B. Archlinux), dann kann man das ISO ebenfalls einbinden.
Dazu fügt man in '''/boot/grub/menu.lst''' folgendes hinzu:
Dazu fügt man in '''/boot/grub/menu.lst''' folgendes hinzu:
  # BiosUpdate
  # BiosUpdate
Zeile 59: Zeile 110:
  root (hd0,0) # Analog den anderen Einträgen anpassen
  root (hd0,0) # Analog den anderen Einträgen anpassen
  kernel /boot/memdisk iso
  kernel /boot/memdisk iso
  initrd /boot/biosupdate.iso
  initrd /boot/thinkpadbios.iso


Man muss wie bei GRUB 2 ebenfalls syslinux installieren und die memdisk sowie das biosupdate.iso nach /boot kopieren.
Man muss wie bei GRUB 2 '''syslinux''' installieren und '''memdisk''' sowie das '''thinkpadbios.iso''' nach '''/boot''' kopieren.


== BIOS Update ausführen ==
= BIOS Update ausführen =
'''Wichtig: das BIOS-Update unbedingt mit geladenem Akku und angeschlossenen Netzteil durchführen!'''
'''Wichtig: das BIOS-Update unbedingt mit geladenem Akku und angeschlossenen Netzteil durchführen!'''


Zeile 77: Zeile 128:
* sobald das ThinkPad-Logo erscheint, Gerät kurz ausschalten
* sobald das ThinkPad-Logo erscheint, Gerät kurz ausschalten


== Quellen und Links ==
= Quellen und Links =
*  [http://www.thinkwiki.org/wiki/BIOS_Upgrade/X_Series#Approach_10:_Booting_the_Lenovo_ISO_image_using_Grub_and_SysLinux 1], [http://www.thinkwiki.org/wiki/BIOS_update_without_optical_disk 2] - Anleitungen auf thinkwiki.org
*  [http://www.thinkwiki.org/wiki/BIOS_Upgrade/X_Series#Approach_10:_Booting_the_Lenovo_ISO_image_using_Grub_and_SysLinux 1], [http://www.thinkwiki.org/wiki/BIOS_update_without_optical_disk 2], [http://www.thinkwiki.org/wiki/BIOS_Upgrade#Using_grub4dos_.28also_for_Linux.29 3]- Anleitungen auf thinkwiki.org
* [http://wiki.ubuntuusers.de/GRUB_2/Konfiguration GRUB 2] - Konfiguration des Bootloaders
* [http://wiki.ubuntuusers.de/GRUB_2/Konfiguration GRUB 2] - Konfiguration des Bootloaders
* [http://thinkpad-forum.de/threads/116691-X220-BIOS-Update-mit-USB-Stick?p=1112220&viewfull=1#post1112220 X220 - BIOS Update mit USB-Stick] unter Windows mit Ultraiso
* [http://thinkpad-forum.de/threads/116691-X220-BIOS-Update-mit-USB-Stick?p=1112220&viewfull=1#post1112220 X220 - BIOS Update mit USB-Stick] unter Windows mit Ultraiso
* [http://thinkpad-forum.de/threads/116842-HOWTO-BIOS-Update-ohne-optisches-Laufwerk-unter-Windows?p=1113922#post1113922 BIOS-Update ohne optisches Laufwerk unter Windows] mit Grub4DOS
* [http://thinkpad-forum.de/threads/116842-HOWTO-BIOS-Update-ohne-optisches-Laufwerk-unter-Windows?p=1113922#post1113922 BIOS-Update ohne optisches Laufwerk unter Windows] mit GRUB4DOS


[[Category:Linux]]  
[[Category:Linux]]  
[[Category:BIOS]]
[[Category:BIOS]]
[[Category:Ubuntu]]
[[Category:Ubuntu]]

Version vom 13. Mai 2012, 16:14 Uhr

Einleitung

Dieser Artikel beschreibt das Ausführen eines BIOS-Update für Linux-Benutzer. Dazu kommt entweder GRUB4DOS auf einem USB-Stick oder der Bootloader des installierten Linux-Systems zum Einsatz.

GRUB4DOS mit USB-Stick

Voraussetzungen

  • Ein frisch mit FAT formatierter, leerer USB Stick
  • ISO-Image des BIOS-Updates als Download von der Lenovo Website

Erstellen des bootfähigen USB-Sticks

ISO-Image auf den Stick kopieren

cp cp /pfad/zur/iso-datei /media/stick/thinkpadbios.iso
sync

GRUB4DOS herunterladen, auspacken und installieren

wget http://download.gna.org/grub4dos/grub4dos-0.4.4.zip
unzip grub4dos-0.4.4.zip
cd grub4dos-0.4.4
cp grldr /media/name-des-sticks

Für den folgenden Schritt wird das korrekte Device sdX des Sticks benötigt. Dazu dient unmittelbar nach dem Anstecken folgendes Kommando:

dmesg | grep "Attached SCSI removable disk" | tail -1

In der Ausgabe ist das gesuchte Device sdX zu sehen:

[ 1234.567890] sd 0:0:0:0: [sdX] Attached SCSI removable disk

Vorsicht: eine falsche Angabe des Device kann katastrophale Auswirkungen auf das installierte System haben, so ist sda in der Regel die Systemplatte.

Das Device sdX setzt man nun in folgendes Kommando ein und führt es aus:

sudo ./bootlace.com /dev/sdX

Ausgabe:

Disk geometry calculated according to the partition table:
       Sectors per track = xx, Number of heads = yyy
Success.

GRUB4DOS konfigurieren

Zuletzt erstellt man die Datei menu.lst auf dem Stick:

gedit /media/name-des-sticks/menu.lst

Inhalt:

color blue/green yellow/red white/magenta white/magenta
timeout 30
default /default

title ThinkPad BIOS Update
map (hd0,0)/thinkpadbios.iso (hd32)
map --hook
chainloader (hd32)
boot

Ausführung

Die Ausführung des Update ist am Ende dieses Artikels zusammengefaßt.

System-Bootloader mit Syslinux

Hinweis: dieser Abschnitt funktioniert sinngemäß auch unter anderen Distributionen mit GRUB 1/2, nur das Paket syslinux heißt eventuell anders oder fehlt (auf die Version achten, siehe BIOS-Update_ohne_optisches_Laufwerk_unter_Linux#Ubuntu_10.04 10.04!).

Voraussetzungen

  • Ubuntu 10.04 oder höher auf Festplatte installiert (kein Livesystem!)
  • GRUB 2 (ist bei einem neu installierten Ubuntu automatisch der Fall)
  • ISO-Image des BIOS-Updates als Download von der Lenovo Website Lenovo Website].

Hinweis: die hier beschriebene Vorgehensweise funktioniert nicht mit einer EFI-Installation (im Paket grub-efi-amd64 fehlt das Modul linux16).

Installation

ISO-Image kopieren

Den Download kopiert man nach /boot:

sudo cp /pfad/zur/iso-datei /boot/thinkpadbios.iso

Syslinux einrichten

Ubuntu 10.10 und höher

Zu installieren ist das Paket

  • syslinux
sudo apt-get install syslinux

Anschließend ist das enthaltene Werkzeug memdisk nach /boot zu kopieren

sudo cp /usr/lib/syslinux/memdisk /boot/

Ubuntu 10.04

Mit dem in Ubuntu 10.04 enthaltenen Syslinux-Paketen funktioniert das BIOS-Update nicht.

Daher lädt man das Paket syslinux-common aus 10.10 herunter, entpackt es mit

cd /pfad/zum/paket/
dpkg -X syslinux-common_VERSION_all.deb .

und kopiert das Werkzeug memdisk nach /boot

sudo cp ./usr/lib/syslinux/memdisk /boot/

GRUB 2 konfigurieren

Mit einem Editor mit Root-Rechten bearbeitet man die Datei /etc/grub.d/40_custom und fügt folgende Zeilen am Ende hinzu:

menuentry "ThinkPad BIOS Update" {
      set root='(hd0,1)' # diese Zeile analog den vorhandenen Einträgen in /boot/grub/grub.cfg anpassen!
      linux16 /boot/memdisk iso
      initrd16 /boot/thinkpadbios.iso
}

Hat man für /boot eine separate Partition eingerichtet, lauten die Einträge so:

menuentry "ThinkPad BIOS Update" {
      set root='(hd0,1)' # diese Zeile analog den vorhandenen Einträgen in /boot/grub/grub.cfg anpassen!
      linux16 /memdisk iso
      initrd16 /thinkpadbios.iso
}

Um beim Systemstart das GRUB-Bootmenü anzuzeigen, sind in der Datei /etc/default/grub die beiden folgenden Zeilen wie gezeigt mit '#' auszukommentieren:

#GRUB_HIDDEN_TIMEOUT=0
#GRUB_HIDDEN_TIMEOUT_QUIET=true

Zuletzt werden alle Änderungen an GRUB aktiviert mit

sudo update-grub

GRUB 1 / GRUB Legacy

Falls man noch eine Distribution mit GRUB 1 (GRUB Legacy) verwendet (z.B. Archlinux), dann kann man das ISO ebenfalls einbinden. Dazu fügt man in /boot/grub/menu.lst folgendes hinzu:

# BiosUpdate
title ThinkPad BIOS Update
root (hd0,0) # Analog den anderen Einträgen anpassen
kernel /boot/memdisk iso
initrd /boot/thinkpadbios.iso

Man muss wie bei GRUB 2 syslinux installieren und memdisk sowie das thinkpadbios.iso nach /boot kopieren.

BIOS Update ausführen

Wichtig: das BIOS-Update unbedingt mit geladenem Akku und angeschlossenen Netzteil durchführen!

System(neu)start ausführen und im Grub-Bootmenü den Eintrag

  • "ThinkPad BIOS Update"

auswählen. Den Anweisungen des Programms folgen.

Nach dem Update empfiehlt es sich, die BIOS-Einstellungen auf Defaults (Werkseinstellungen) zurückzusetzen:

  • Beim Systemstart mit [F1] ins BIOS
  • [F9] (Setup Defaults) [Enter] (Yes)
  • eigene Anpassungen (z.B. SATA-Modus) wieder einpflegen
  • [F10] (Save and Exit) [Enter] (Yes)
  • sobald das ThinkPad-Logo erscheint, Gerät kurz ausschalten

Quellen und Links