(die hier vorgestellen Verfahren wurden unter linbo 1.1.18-1 getestet)
Der Speichertester memtest86+ (GPL) wird üblicherweise über eine CD gebootet und überprüft dann intensiv den Speicher des Computer mit mehreren Tests.
Mit linbo stehen dafür 3 verschiedene Umsetzungsmöglichkeiten zur Verfügung:
Memtest86+ ist technisch ein spezieller Linux-Kernel. Diesen gibt es in verschiedenen Verpackungen, als normalen Linux-Kernel (memtest86+.bin); als Kernel, der per Netzwerk oder mit kexec gestartet werden kann (sogenannter ELF-Kernel, www.smop.co.uk, download) und verpackt in iso-Dateien (CD-Boot) oder Floppy-images.
Zunächst auf dem Server die „memtest86+.bin
“ - Datei installieren (liegt dann in /boot/
):
# aptitude install memtest86+
Dieses Debian-Paket liefert eine relative alte Version von memtest86+ (v1.65). Aktuellere Kernel (v4.0) muss man sich direkt bei den Entwicklern besorgen. Aktuellere Kernel unterstützen dann auch mehr Chipsätze.
Namensgebung zu folgenden Beispielen: Den Platzhalter <HWK>
in den folgenden Abschnitten muss man durch den Namen der Hardwareklasse ersetzen. Falls nichts anderes angegeben, liegen die Dateien unter /var/linbo/
.
Im folgenden wird angemommen, dass der linbo-cache auf sda6 (hd0,5) liegt. Dies ggf. den eigenen Verhältnissen anpassen.
Dazu die start.conf.<HWK>
um folgenden Eintrag ergänzen. Hier wird linbo „missbraucht“ um den Kernel als „BaseImage“ in den linbo-cache zu laden.
... [OS] Name = memtest86+ BaseImage = memtest86+.bin Root = /dev/sda6 Boot = /dev/sda6 Kernel = grub.exe Append = keeppxe --config-file=pxe; default 0; timeout 0; hiddenmenu; title memtest; kernel (hd0,5)/memtest86+.bin StartEnabled = yes NewEnabled = no SyncEnabled = no Hidden = yes Autostart = no ...
Nun am Server den „memtest86+.bin
“ Kernel nach /var/linbo/
kopieren. Zuletzt am Server:
# update-linbofs
Den Client über Netzwerk booten und zunächst den Cache aktualisieren (über linbo-Tab „Imaging“). Dann Reboot des Client und „memtest“ mit „Start“ auswählen.
Auf dem Server die Datei /var/linbo/menu.lst.<HWK>
erstellen:
timeout 3 default 0 title Linbo Starten root (hd0,5) kernel /linbo quiet vga=771 initrd /linbofs.<HWK>.gz title memtest86 root (hd0,5) kernel memtest86+.bin
Nun kann linbo „missbraucht“ werden, um den memetst86+ Kernel in die Cache-Partition (hier sda6 bzw (hd0,5) ) zu laden. Dazu die start.conf.<HWK>
um folgenden Eintrag ergänzen:
... [OS] Name = memtest86+ BaseImage = /boot/memtest86+.bin StartEnabled = no NewEnabled = no SyncEnabled = no Hidden = yes Autostart = no ...
Schließlich am Server:
# update-linbofs
Den Client über Netzwerk booten und zunächst den Cache aktualisieren (über linbo-Tab „Imaging“). Danach im BIOS des Clients auf lokalen Boot umstellen.
Für diese Umsetzungsmöglichkeit habe ich bisher keinen memtest86 Kernel gefunden, der korrekt startet.
Zunächst muss die Datei /var/linbo/pxelinux.cfg/<HWK>
der Hardwareklasse editiert werden:
DEFAULT LINBO PROMPT 1 TIMEOUT 300 KBDMAP /german/kbd DISPLAY /boot/msg LABEL LINBO KERNEL linbo APPEND initrd=linbofs.vmware.gz vga=771 acpi=off quiet
Beim Booten erscheint dann ein PROMPT und man kann einen Kernel durch direkte Eingabe des Dateinamens starten. Die Kernel-Datei muss unter /var/linbo/
liegen.