Linux Bootkonfiguration

wildding

Cadet 3rd Year
Registriert
Sep. 2002
Beiträge
50
Hallo,

ich bin Linux-Noob und habe hier ein uraltes Linux-System (SUSE 8.0), das auf einer SATA-Platte installiert ist, die an einem 3ware RAID-Controller hängt. Ursprünglich lief das Ganze als RAID 1 inzwischen aber als Single-Disk.

Die Platte würde ich jetzt gerne am Onboard-Controller betreiben. Sie wird von Linux auch erkannt, allerdings jetzt als "hda" statt, wie am RAID-Controller, als "sda". Der Bootvorgang bricht dann natürlich mit einer Kernelpanik ab, weil das Root-Filesystem nicht gefunden wird.

Die entsprechende Anpassung der "lilo.conf" und die Übernahme der Änderungen mit "/sbin/lilo" brachten keine Veränderung. Ist die Platte am RAID-Controller angeschlossen, bootet das System weiterhin, am Onboard-Controller hingegen nicht.

boot = /dev/sda
change-rules
reset
read-only
menu-scheme = Wg:kw:Wg:Wg
lba32
prompt
timeout = 80
message = /boot/message

image = /boot/vmlinuz
label = linux
root = /dev/sda2
vga = 788
initrd = /boot/initrd
# append = "hdb=ide-scsi acpi=off"

image = /boot/vmlinuz.suse
label = failsafe
root = /dev/sda2
vga = 788
initrd = /boot/initrd.suse
# append = "ide=nodma apm=off acpi=off"
optional

image = /boot/memtest.bin
label = memtest86

boot = /dev/hda
change-rules
reset
read-only
menu-scheme = Wg:kw:Wg:Wg
lba32
prompt
timeout = 80
message = /boot/message

image = /boot/vmlinuz
label = linux
root = /dev/hda2
vga = 788
initrd = /boot/initrd
# append = "hdb=ide-scsi acpi=off"

image = /boot/vmlinuz.suse
label = failsafe
root = /dev/hda2
vga = 788
initrd = /boot/initrd.suse
# append = "ide=nodma apm=off acpi=off"
optional

image = /boot/memtest.bin
label = memtest86

Kann mir jemand sagen, warum das System weiterhin von "sda" statt von "hda" bootet?
 
Ich glaube das hda der "normale" Sata Controller ist. Das sda zeigt (meiner Meinung nach) einen SCSI Controller an, so in etwa. Was dein Raid Controller wohl auch ist. Also für Linux. Ich kann natürlich auch was verwechseln.

Genau wird das hier erklärt.
https://www.debian.org/releases/wheezy/ia64/apcs04.html.de
 
Was steht in /etc/fstab ?
Was für einen Onboard IDE Controler ist auf dem Motherboard vorhanden ? ( Da sollte es Meldungen in /var/log/messages geben, auch wenn du vom 3ware Controler bootest )
 
@Burki73 :
Ich denke, du liegst mit deiner Vermutung richtig, aber die Frage ist, wie ich Linux dazu kriege, von "hda" statt von "sda" zu booten.

@mkossmann :
Der IDE- (bzw.) SATA-Controller ist wohl in die VIA VT8237A Southbridge integriert. Hier die Meldungen, die ich diesbezüglich in boot.msg finden konnt:

<6>Uniform Multi-Platform E-IDE driver Revision: 6.31
<4>ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
<4>PCI_IDE: unknown IDE controller on PCI bus 00 device 78, VID=1106, DID=0591
<4>PCI_IDE: chipset revision 128
<4>PCI_IDE: 100%% native mode on irq 21
<4> ide0: BM-DMA at 0xd480-0xd487, BIOS settings: hda:pio, hdb:pio
<4> ide1: BM-DMA at 0xd488-0xd48f, BIOS settings: hdc:pio, hdd:pio
<4>VP_IDE: IDE controller on PCI bus 00 dev 79
<4>VP_IDE: chipset revision 7
<4>VP_IDE: not 100%% native mode: will probe irqs later
<4>VP_IDE: Unknown VIA SouthBridge, contact Vojtech Pavlik <vojtech@ucw.cz>

Fstab sieht wie folgt aus:
/dev/sda2 / ext2 defaults 1 2
/dev/cdrecorder /media/cdrecorder auto ro,noauto,user,exec 0 0
/dev/cdrom /media/cdrom auto ro,noauto,user,exec 0 0
/dev/sda3 /daten ext2 defaults 1 2
devpts /dev/pts devpts defaults 0 0
proc /proc proc defaults 0 0
usbdevfs /proc/bus/usb usbdevfs noauto 0 0
/dev/sda1 swap swap pri=42 0 0
/dev/sdb1 /media/sdb1 auto noauto,user,exec 0 0 #HOTPLUG B3Fu.ngryVBGo2S2
/dev/sdc1 /media/sdc1 auto noauto,user,exec 0 0 #HOTPLUG B3Fu.xNgj6FBt3XF
 
Wenn die Festplatte tatsächlich als hda erkannt wird, dann musst du die Einträge in /etc/fstab auch dementsprechend ändern. Andernfalls kann z.B. die root-Partition nicht gemountet werden.
Ich nehme mal an, dass du ein Backup und eine Live-CD zur Hand hast für den Ernstfall? ;)
 
Backup und Live-CD sind natürlich zur Hand ;)

Die Änderung der Einträge in /etc/fstab hat aber leider nichts gebracht. Ich erhalte weiterhin die gleiche Fehlermeldung (s. Screenshot).

810320

Das die Festplatte tatsächlich als "hda" erkannt wird, sieht man auf folgendem Screenshot:

810321
 
Zuletzt bearbeitet:
Der Kernel meckert über ein fehlendes Rootfs.
"cannot open root device"

Vermutung: Der Treiber für den VIA HDD Anschluss ist wird nicht geladen.
Grund: Der Treiber für den VIA HDD Chip ist nicht im Kernel image / initrd enthalten.

Außerdem Kernel-Ladeparameter "root=" prüfen
 
Ich dachte, da die Festplatte als "hda" erkannt wird, wird sie über den IDE-Treiber angesprochen. Aber ich habe gerade gelesen, dass es beim Kernel 2.4.18 wohl Probleme mit VIA SATA-Controllern gab und ein Kernelupdate konnt für mich, als blutigen Anfänger, wohl eher nicht in Frage. Zumal es schwierig sein dürfte, noch ein Update für so einen alten Kernel zu bekommen.

Da könnte es vielleicht einfacher sein, das System in eine Virtuelle Maschine umzuwandeln, oder?

Mit dem Kernel-Ladeparameter "root=" ist der Eintrag in der lilo.conf gemeint?
 
wildding schrieb:
Mit dem Kernel-Ladeparameter "root=" ist der Eintrag in der lilo.conf gemeint?
Ja, aber

Lilo ist ein Bootloader, der den Kernel lädt. Zeile mit image=
Dieser Kernel hat bestimmte Features - manche fest eingebaut.
iirc sind andere dynamisch nachladbar von der initrd / initramfs (später ab 2.6) zB -
Das Feature "VIA SATA" ist im Kernel nicht eingebaut und vermutlich nicht in der initrd, weshalb der Boot scheitert.
Die Tools dazu sollten in der Doku von Suse stehen (anzeigen der .ko module in initrd) / irgendwo auffindbar sein - die aktuelle Version der KB hilft glaube ich nicht
 
Ich fürchte fast, es gibt keine Möglichkeit diesen Controller unter dem Kernel zum Laufen zu bringen. Das Standardmodul unterstützt ihn nicht, für libata braucht man mindestens Kernel 2.4.27 und der proprietäre Treiber von VIA läuft erst ab Kernel 2.4.20.

Über Widerspruch würde ich mich freuen ;)
 
Keine Ahnung wie alt deine Platform ist, aber 486 mit einem LTS Kernel sind lauffähig. 486 mit 4.14.x gentoo
Fall etwas "neues" probiert werden soll - das alte Zeug hat vermutlich auch ein paar Sicherheitslücken bei Betrieb am Internet.

wildding schrieb:
VIA läuft erst ab Kernel 2.4.20
Suse 8.2 hat den Kernel 2.4.20 - die alten Versionen gibts oft genug in Bibliotheken oder bei Ebay - da Suse ja keine ISOs damals zur Verfügung gestellt hat.
 
Mein Haupanliegen ist, den Betrieb des Systems (Software) in dieser Form sicherzustellen. Auf dem System läuft eine selbstgestrickte Webanwendung (die allerdings nur im Intranet genutzt wird), welche zum Betrieb wohl auf bestimmte Versionen von MySQL und PHP (3.23.52 bzw. 4.1.0) angewiesen ist.

Die entsprechenden Versionen laufen wohl auf neueren Kernels (ab 2.6) nicht mehr und den Code der Webanwendung auf neuere Versionen anzupassen, ist mir nicht möglich. Auf den Entwickler, der das Ganze damals programmiert hat, kann ich leider nicht mehr zurückgreifen und mir fehlen die entsprechenden Kenntnisse.

Mit dem Kernel 2.4.20 würde das Ganze zwar wahrscheinlich funktionieren und ich habe auch einen FTP-Server gefunden, von dem ich Suse 8.2 herzunterladen könnte, allerdings komme ich immer mehr zu der Überzeugung, dass ich die Zeit besser in den Versuch investiere, das System als virtuelle Maschine zum Laufen zu bekommen.

Damit wäre ich dann komplett hardwareunabhängig und das Backup wäre auch deutlich komfortabler. Vielleicht kann mir ja hier jemand sagen, wie die Erfolgsaussichten dafür sind und welche Virtualisierungslösung man für eine sehr alte Linux-Version als Gastsystem am besten verwendet.
 
wildding schrieb:
MySQL und PHP (3.23.52 bzw. 4.1.0)
Das ist beinahe Software-Archäologie ;)
Schau dir dann die EOL bei PHP 4 : hier und entsprechen bei MySQL an.

wildding schrieb:
Virtualisierungslösung man für eine sehr alte Linux-Version als Gastsystem am besten verwendet.
Das sollte fast egal sein.
Virtualbox kann ab "Linux 2.2" VMs erstellen - also es ist jedenfalls ein Hardwareprofil dafür da - wie "gut" das klappt - der Textmodus mit einer Suse Linux 8 CD aus dem Internet Archiv Übersicht der Suse CD/DVDs)
funktioniert bei mir - also sollte dann auch der Server mit MySQL und PHP grundsätzlich funktionieren - da wird kein X11 Grafik gebraucht.

Prinzipiell kann qemu das gleiche wie VirtualBox - ist aber auf Linux Hosts besser integriert/kompatibel.
Ergänzung ()

Edit: Mit den dokumentierten EOL Daten hast du einen Anhaltspunkt welche Distributionen, die in dem Zeitraum erschienen sind eventuell noch in Frage kommen könnten.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: wildding
Das werde ich mir mal in Ruhe anschauen. Vielen Dank für die Tipps! :)
 
Zurück
Oben