News Profil Themen Bücher Magazine Links Kontakt
eisfair FDFormat1.8 SYSLinux2.02 Google lspci

Neue Serverkonfiguration

2003-03-09 Mich hat immer geärgert, das es ohne das Öffnen des PC's nicht möglich war herauszubekommen welche Netzwerkkarte im Rechner steckt. Schön wäre es doch, wenn die Bootdiskette das selber herausfände bzw. zumindestens eine Hilfe anzeigen würde.

Da bietet sich /proc/pci an. Das Format ist für unsere begrenzten Möglichkeiten aber zu kompliziert.

Ich bin dann auf lspci gestoßen. Zusammen mit einer Definitionsdatei (läuft aber auch ohne diese) kann man recht ausführlich Informationen über den PCI-Bus abfragen. Ich habe lspci und die Definitionsdatei einfach von meiner Suse 8.0 DVD kopiert.

lspci -m -n liefert eine schnelle Übersicht über den Bus. Unter anderem ist auch eine Angabe der Device-Klasse enthalten. Und da Netzwerkkarten alle in dem Bereich 02xx angesiedelt sind reicht ein einfaches

lspci -m -n | grep "lass 02"

um alle Netzwerkkarten zu finden. Ich habe in opt.tgz in das Setup-Script erstmal an der Stelle, wo der "Aber isch habe gar keine Netzwerkkarte"-Abbruch kommt, eine Schleife eingebaut, die alle vorhandenen Netzwerkkarten auf dem Bildschirm ausgibt.

        
ifconfig $eth_name >/tmp/$eth_name

if [ $? != 0 ]
then
    colecho "Did not found your network interface. Exit!" br x br

    for x in `lspci -n -m | grep "lass 02"`
    do
        case "$x" in
            [0-9][0-9]:?*) # device number
                lspci -s $x -n
                lspci -s $x -vv
                ;;
            *) # none
                ;;
        esac
    done

    exit 1
fi
        

Dieses grep war auch der Grund warum wir im ersten Schritt BusyBox ersetzt haben. Ich bekam bei jedem Aufruf einen Segmentation Fault der mit der Version 0.60.5 behoben war.

Leider habe ich bis jetzt noch keine Möglichkeit gefunden den Bildschirm in 80x60- oder 132x60-Modus umzustellen. syslinux trägt den Modus korrekt in die Startup-Parameter des Kernels ein, dieser scheint diesen dann aber nicht auszuwerten. Schade eigentlich ...

wird fortgesetzt ...