IT-Dienstleistungen

Diagnose und Problembehandlung bevor FreeBSD den Login Bildschirm erreicht

Auf dieser Seite:

FreeBSD erlaubt es, den Startvorgang Ihres Rechners genau zu beobachten. Kenntisse zum FreeBSD Bootvorgang sind hilfreich.

 

loader.conf(5): Informattionsgehalt von dmesg erhöhen

Der System Message Buffer gibt Auskunft, wenn in einer frühren Phase des FreeBSD Startvorgangs Probleme auftreten. Man kann ihn über dmesg(8) auslesen. Die Größe des Message Buffers ist mit normalen Einstellungen angemessen. Mit zusätzlichen Diagnoseinhalten und Zeitstempeln muss die Größe jedoch erhöht werden.

Auch ohne Veranlassung lohnen sich die zusätzlichen Informationen aus einem Aufruf von dmesg(8) mit zusätzlichem Inhalt, z.B. als Referenz für einen gesunden Systemzustand, wenn wirklich Probleme auftreten.

# dmesg Buffer Größe auf 1 MiB erhöhen
kern.msgbuf.size="1048576"

# Zeitstempel bis auf Mikrosekunden genau
kern.msgbuf_show_timestamp="2"

# Informationsgehalt erhöhen
boot_verbose="yes"
 

loader.conf(5): Den FreeBSD Startvorgang über eine serielle Verbindung beobachten

Sollte die serielle Verbindung nicht funktionieren sind ggf. Einstellungen im BIOS anzupassen. Derartige Problemstellungen tauchen manchmal auf, wenn Out of Band Systeme im Spiel sind, z.B. IPMI oder herstellergebundene Lösungen. Suchen Sie nach Einstellungen zu Begrifflichkeiten wie "COM", "IRQ" und I/O Einstellungen wie "0x3f8" (oder ähnliche hexadezimale Notationen) was COM1 entspricht. Diese Seite handelt nicht von solchen Fragestellungen. What is a Serial Port und die sachverwandte Quick Help sind gute Anhaltspunkte bei möglichen Problemen.

# Output auf dem Bildschirm und über die serielle Verbindung
boot_multicons="YES"

# siehe loader.conf(5) für weitere Optionen wie "efi" und "nullconsole"
console="comconsole,vidconsole"

# Bootmeldungen über die serielle Schnittstelle aktivieren
boot_serial="YES"

# Baudrate einstellen, dies sollte die voreingestellte Geschwindigkeit sein
comconsole_speed="115200"
 

FreeBSD vom Loader Prompt aus wiederherstellen

FreeBSD lässt sich über den Loader Prompt auch mit einem anderen ZFS Dataset starten. Durch Drücken einer Pfeiltaste bei Erscheinen des Beastie Screens gelangt man in den Loader Prompt. Sollte dies versehentlich geschehen sein so genügt die Eingabe von boot und anschließendem Bestätigen mit Enter, um den Startvorgang fortzusetzen.

### BEASTIE SCREEN HIER ###
Exiting menu!
Type '?' for a list of commands, 'help' for more detailed help.
OK [hier Loader Prompt Kommandos eingeben]

# Mögliche Tippfehler in der loader.conf Datei lassen sich hier korrigieren
unset amdgpu_load="YES"
set hw.pci.do_power_nodriver="0"

# vorhandene ZFS Pools anzeigen, z.B. Poolname = zmypool
OK lsdev
zfs devices:
    zfs:zmypool

# Prüfen, ob der ZFS Pool enthält, was er enthalten soll
OK lszfs zmypool

# 'default' muss an dieser Stelle des Pools vorhanden sein
OK lszfs zmypool/ROOT
default

# aktuelles Bootmedium anzeigen, was bei Eingabe von 'boot' aktiv wäre
OK show currdev
 
# Bootumgebung neu einlesen
OK reloadbe

# Kernel und ZFS Kernelmodul laden
OK load /boot/kernel/kernel
OK load /boot/kernel/zfs.ko

# ZFS Dataset für den Bootvorgang definieren
# die Syntax erfordert doppelte Anführungszeichen und beide Doppelpunkte
OK set currdev="zfs:zmypool/ROOT/default:"

# HINWEIS: ähnliche Syntax für UFS Dateisysteme oder CDs
# ufs:/dev/da0s1a
# cd9660:/dev/cd0 ro

# nun kann von 'zmypool' gestartet werden
OK boot

# mit Enter bestätigen

Zahlung veranlassen