[gelöst] Probleme mit grub / SATA

  • Hallo Leute,


    die (IDE)-Platte in meinem vdr wurde mir zu eng, deshalb hab ich eine größere SATA implantiert.
    Ich hab die neue Festplatte partitioniert, exakt nach dem Vorbild der alten - nur sda6 (auf der die videos landen) ist natürlich deutlich größer, was ja Zweck der Übung war. Auf sda1 hab ich mittels partimage die Systempartition rückgesichert. So weit, so gut.


    Jetzt friemel ich schon seit Tagen an grub rum, alldieweil es mir nicht gelingen will, von der neuen Platte zu booten.


    Meine device.map:


    Code
    (hd0)     /dev/sda


    Meine menu.lst:


    fdisk -l zeigt folgendes:

    Code
    Platte /dev/sda: 500.1 GByte, 500107862016 Byte
    255 Köpfe, 63 Sektoren/Spuren, 60801 Zylinder
    Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
    
    
        Gerät  boot.     Anfang        Ende     Blöcke   Id  System
    /dev/sda1               1         498     4000153+  83  Linux
    /dev/sda2             499       60801   484383847+   5  Erweiterte
    /dev/sda5             499         686     1510078+  82  Linux Swap / Solaris
    /dev/sda6             687       60801   482873706   83  Linux


    Hier noch die /etc/fstab:


    Code
    # /etc/fstab: static file system information.
    #
    # <file system> <mount point>   <type>  <options>       <dump>  <pass>
    proc            /proc           proc    defaults        0       0
    /dev/sda1       /               ext3    defaults,errors=remount-ro 0       1
    /dev/sda6       /var/lib/video.00 ext3    defaults        0       2
    /dev/sda5       none            swap    sw              0       0
    /dev/hdc        /media/cdrom0   udf,iso9660 user,noauto     0       0
    /dev/hdc        /cdfs   udf,cdfs user,noauto     0       0


    Sieht doch soweit alles gut aus....??...


    Wenn ich aber booten will, bleibt die Kiste im BIOS mit folgender Meldung stehen:


    Code
    Searching for Boot Record from BBS-0:[WDC WD50000AAKS-0    ]...Ok


    Danach passiert nix mehr.


    Kann mich bitte jemand in die richtige Richtung schubsen?


    TIA
    Peter

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5

    Einmal editiert, zuletzt von Homer Simpson ()

  • Hassu den MBR auch auf /dev/sda installiert (grub-install)?


    Scheint, dass das BIOS zwar versucht den MBR von der richtigen Platte zu lesen, aber dort nichts findet.


    uwe

    server: yavdr trusty testing, 2 * L5420, 32GB, 64TB RAID6 an OctopusNet (DVBS2- 8 ) + minisatip@dsi400 (DVBS2- 4 )
    frontends: kodi und xine

  • Yo,


    hab ich.


    grub-install /dev/sda1 --recheck


    lief fehlerfrei durch.


    Brachte lediglich die irrelevante Meldung, daß meine device.map um den Eintrag


    fd0 blablubb


    irgendein Floppy-Laufwerk erweitert wurde.


    Oder...


    muss es statt wie o.a.


    grub-install /dev/sda


    lauten? sda statt sda1??

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5

  • Genau das ist es!
    /dev/sda1 beginnt ja nicht gleich auf dem ersten Sektor der Platte. Vorher kommen noch MBR und die Partition Table.


    Das BIOS sucht im MBR nach dem Bootcode, der in Deinem Fall aus irgendwas, aber keinem sinnvollen Code besteht.


    uwe

    server: yavdr trusty testing, 2 * L5420, 32GB, 64TB RAID6 an OctopusNet (DVBS2- 8 ) + minisatip@dsi400 (DVBS2- 4 )
    frontends: kodi und xine

  • Yo,


    bin ein Stückchen weiter. Die Kiste würde nun booten.... wenn sie denn könnte.
    Soll heißen, der Boot-Prozeß wird zwar jetzt angestossen - es wird aber weiter nach der nicht mehr vorhandenen hda geschrien. Etwa so:


    Code
    Waiting 16 seconds for /sys/block/hda/dev to show up 
    /bin/cat: /sys/block/hda/dev: No such file or directory


    An dieser Stelle bricht der Bootvorgang ab.


    Mein Verdacht fiel schnell auf die initrd, die ich mir mal genauer angeschaut habe (indem ich ihr die extension .gz angehängt und mit gunzip ausgepackt habe).
    In der Tat sind die strings 'hda' und 'hda1' darin zu finden.


    Wie mache ich mir denn nun eine neue, passende initrd?


    Der folgende Versuch jedenfalls war nicht von Erfolg gekrönt:


    Code
    cookie:# update-initrd 2.6.16-ct-1
    /usr/sbin/update-initrd: could not find any kernel modules in
    /lib/modules/2.6.16-ct-1



    la guerre contine

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5

  • Dumme Frage: brauchst Du denn die initrd?


    Zitat

    /usr/sbin/update-initrd: could not find any kernel modules in /lib/modules/2.6.16-ct-1


    Kommt mir komisch vor. Was sagt den "uname -a" welcher Kernel am Laufen ist. Und ein "lsmod"?


    uwe

    server: yavdr trusty testing, 2 * L5420, 32GB, 64TB RAID6 an OctopusNet (DVBS2- 8 ) + minisatip@dsi400 (DVBS2- 4 )
    frontends: kodi und xine

  • Ööhm... dumme Antwort: Keine Ahnung, ob die initrd benötigt wird.
    Ich hab den Kernel seinerzeit nicht selbst kompiliert, das wurde so von der c't-CD (Distribution ctvdr5) eingerichtet.
    Ich persönlich könnte schon darauf verzichten ;)


    uname und lsmod sagen im derzeitigen Zustand goanix. Der Kernel oder zumindest die Pfade sind noch nicht so richtig da, alldieweil der Bootvorgang ja nicht erfolgreich beendet werden kann.
    Ich komme zwar auf einen Prompt, aber so arg viel kann ich da nicht machen. Immerhin gibt es ein mount-Kommando:


    Code
    # uname -a
    /bin/dash: uname: not found
    # ls
    /bin/dash: ls: not found
    # mount
    rootfs on / type rootfs (rw)
    sysfs on /sys type sysfs (rw)
    proc on /proc type proc (rw)


    Wie dem auch sei: uname -a würde Kernel version 2.6.16 ausgeben, wenn es denn könnte. Das hab ich vor etwa einem Jahr installiert (auf der IDE hda damals) und seither nix geändert.
    Ich hab zwar vor, den Kernel auf eine aktuelle Version upzudaten, aber zuerst muß die Kiste mal wieder booten.


    Ich hab jetzt mal per Knoppix-CD gebootet und die initrd-Zeilen in der menu.lst auskommentiert.
    Der darauffolgende Bootversuch von sda1 endet in einer kernel panic:


    Code
    [...]
    VFS: Cannot open root device "sda1" or unknown block(0,0)
    Please append a correct "root=" boot optionj
    Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)


    Unnu?

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5

  • Na, das gibt Dir dann die Antwort: Du brauchst die initrd, weil der Treiber für die Platte erst geladen werden muss.


    Die initrd ist ein komprimiertes cpio-Archive, das Du auspacken, bearbeiten und wieder einpacken kannst. Google findet bestimmt ein paar Howtos.


    uwe

    server: yavdr trusty testing, 2 * L5420, 32GB, 64TB RAID6 an OctopusNet (DVBS2- 8 ) + minisatip@dsi400 (DVBS2- 4 )
    frontends: kodi und xine

    Einmal editiert, zuletzt von umaier ()

  • Ok, hab ich gemacht.


    Ich hab es so versucht:


    1) Kopie der 'alten' initrd in ein leeres Arbeitsverzeichnis schieben
    2) dort auspacken mit gunzip und cpio


    Es kommt (u.a.) ein file namens init zum Vorschein, das in der Tat die strings 'hda' und 'hda1' enthält.


    3) Dieses file per vi editieren und sämtliche 'hda' und 'sda' ändern
    4) neue initrd daraus erstellen, also mit cpio und gzip wieder einpacken
    5) alte initrd durch neue initrd ersetzen
    6) reboot


    Dadurch hat sich folgendes geändert:
    Beim booten kommt jetzt nicht mehr die Fehlermeldung


    Code
    Waiting 16 seconds for /sys/block/hda/dev to show up 
    /bin/cat: /sys/block/hda/dev: No such file or directory


    stattdessen:


    Code
    Waiting 16 seconds for /sys/block/sda/dev to show up 
    /bin/cat: /sys/block/sda/dev: No such file or directory


    :wand


    Kann mich mal bitte jemand an die Hand nehmen und mir eine passende initrd verschaffen? So langsam bin ich am Verzweifeln.


    TIA ohne Ende
    Peter

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5

    Einmal editiert, zuletzt von Homer Simpson ()

  • Zitat

    Original von Homer Simpson
    [...]
    Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)


    Unnu?


    Wenn das Modul für den SATA Controller mit compiliert wurde , das in die initrd , wenn nicht , im Bios SATA auf "compatible mode" oder wie das bei dir heißt stellen - dann sollte es funzen .


    Dann wirste um nen neuen Kernel nicht umhin kommen .


    HJS

  • Oh wie schön - schon eine Antwort!


    Tja, ob das Modul für den SATA-Kontroller mitkompiliert wurde, entzieht sich leider völlig meiner Kenntnis. Wie kann ich denn das herausfinden?


    Ich werd mal jetzt probehalber die 'alte' initrd (also die mit den 'hda'-strings in der init) wieder aktivieren und dann im BIOS mal auf die Suche nach einem compatible mode oder wie das bei mir heisst gehen...


    Übrigens will ich gar nicht um einen neuen Kernel herumkommen...


    Ich denke mir:


    Ich könnt die alte hda IDE Platte wieder anstöpseln, (und die 'alte' initrd wieder aktivieren natürlich), dann bootet die Kiste von der neuen Platte. Die 'links' in der initrd, die auf hda zeigen, können aufgelöst werden, einen anderen Zweck erfüllt die hda nicht, aber ich hab dann mal ein running system.


    Dann einen neuen Kernel kompilieren und es ist Friede, Freude, Eierkuchen?


    Liege ich da richtig?

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5

  • Hi HJS,


    ich finde bei mir im BIOS nichts, das nach 'SATA compatible mode' klingt.


    USB Device Legacy Support könnt ich anbieten, wenn das hülfe.


    Peter

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5

  • Zitat

    Original von Homer Simpson
    USB Device Legacy Support könnt ich anbieten, wenn das hülfe.


    Nicht wirklich :whatever


    Zitat


    ich finde bei mir im BIOS nichts, das nach 'SATA compatible mode' klingt.



    Hm - haste nix , wo du das Verhalten des/der Controller einstellen kannst ?


    Bei meinem P4P800VM kann ich native mit allen PATA oder compatible mit nur einem pri/sec PATA wählen . ( unter IDE Configuration )


    Aber ich vermute , du bist alle Menüs durch ?


    Dann hilft nur Kernelbauen - pauschal alles was als PATA/SATA da ist rein( als modul mit autoload ) dann weißte auch anschließend , welcher Controller/Modul es ist ;)


    HJS

  • Oben erwähnte Knoppix-CD wäre ein erster Anhaltspunkt.
    Der Treiber muss dann auf der sda1 liegen oder in der .config entsprechend vermerkt sein.


    uwe

    server: yavdr trusty testing, 2 * L5420, 32GB, 64TB RAID6 an OctopusNet (DVBS2- 8 ) + minisatip@dsi400 (DVBS2- 4 )
    frontends: kodi und xine

  • Hi HJS, hi Uwe


    nein, in meinem BIOS gibt es nix dergleichen.


    Kernel bauen, na gut.
    Kannst du mich dabei unterstützen? Sowas hab ich noch nicht gemacht. Ich bin kein absoluter Linux-Newbie, aber einen Kernel hab ich bislang nicht kompiliert. Ich hab beruflich mit UNIXen zu tun (AIX hauptsächlich, bisserl HP-UX), ich werd mich also nicht völlig doof anstellen...man muß bei mir auch nicht bei Adam und Eva anfangen... aber ein bisserl Hilfe wäre... hilfreich eben ;)


    kiloweise TIA
    Peter

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5

  • Zitat

    Original von Homer Simpson
    . aber ein bisserl Hilfe wäre... hilfreich eben ;)


    Ein bisserl ...


    OK :


    - Kernel ziehen
    - nach /usr/src entpacken
    - alte config nach /usr/src/linux-<KERNELVERISON> kopieren
    - make menuconfig und hier unter driver alles was ATA ist als Modul


    - make
    - make modules_install
    - /usr/src/linux-<KERNELVERISON>/arch/i386/boot/bzImage ist der Kernel
    - /usr/src/linux-<KERNELVERISON>System.map ist deine map
    - /usr/src/linux-<KERNELVERISON>/.config ist was ? ;)


    HJS

  • Hi HJS,


    da ist sehr nett von dir, daß ich dir ein bisserl auf die Nerven fallen darf...


    Der grobe Plan hört sich schon mal machbar an ;)


    Als erstes hab ich die alte hda IDE Platte wieder angestöpselt und von der gebootet. Mangels besserer Idee lautet mein Plan nämlich auf dem 'alten' running system den Kernel upzudaten, dann per partimage wegsichern und auch per partimage wieder auf die SATA Platte zu recovern und dann müsste nach geringen Anpassungen (menu.lst, fstab usw) alles gut sein.


    Ich hab dann mal apt-get update abgesetzt und geschaut, was so im Angebot ist:


    Da such ich mir jetzt eine aus und sauge die mit
    apt-get install. Richtig?


    Welche nehm ich denn nu?

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5

  • Zitat

    Original von Homer Simpson
    da ist sehr nett von dir, daß ich dir ein bisserl auf die Nerven fallen darf...


    Hehe - Rechnung folgt ;)


    Zitat


    Der grobe Plan hört sich schon mal machbar an ;)


    Na dann :rolleyes:


    Zitat


    Da such ich mir jetzt eine aus und sauge die mit
    apt-get install. Richtig?


    Äh - ach ja , Debian ... rrrr


    Zitat


    Welche nehm ich denn nu?


    Die Neueste selbstverfreilich . also 2.6.23.1
    Wenn da kein 2.6.23er auftaucht halt von kernel.org .
    Bei meinen Debian Versuchen hat apt-get install linux-|VERSION> eh das endgültige Aus für diese Distri bedeutet - denn unter install verstehe ich etwas mehr , als die Source zu ziehen ...
    Abba lassen wir uns mal überraschen ... :unsch


    HJS

    Working VDR : VDR-1.4.6 - ACPI/NVRAM Wakeup - working on hjslfs

    2 Mal editiert, zuletzt von hjs ()

  • Öööhmmm.... überredet.
    Ich hab mir

    Code
    wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.23.1.tar.bz2


    geholt und in /usr/src entpackt. Jede Menge brandaktueller Glotter. Sind auch viele .../drivers/ata/... dabei. Schön!


    .../drivers/sata/... gibts übrigens nicht. Soll mir auch recht sein.


    Was genau bedeutet nun


    Zitat

    - alte config nach /usr/src/linux-<KERNELVERISON> kopieren


    Wie kopiere ich denn die alte Konfig da rein? Um welche files handelt es sich dabei?


    Peter

    VDR1: Asrock K7VT4A, Duron 800, 512MB, Samsung HD300LD, Hauppauge PVR-350+Nova-T, Silverstone LC16M //1.4.3-1ctvdr3,Kernel : 2.6.16-ct-1, ivtv: version 0.6.1
    VDR2: MSI G31M2, Celeron 430, WD10EACS+WD20EARS, 2xNova-T+1xTechnotrend Premium S2300 V 2.3 "modded", Aplus Blockbuster // 1.6.0-8ctvdr1, Kernel 2.6.28.7

    VDR3 (in Arbeit): Asus M4A78TD-EVO, AMD Phenom(tm) II X4 955, 8GB RAM, Crucial M4 C128, NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1), Digital Devices Cine S2 V6.5


  • Dein /usr/src/linux-<KERNELVERISON> ist nu /usr/src/linux-2.6.23.1
    Dahin mußt du die config kopieren , die
    - in /usr/src/linux-<OLDKERNELVERISON>
    - in /boot
    - in /proc als config.gz
    zu finden sein könnte ...


    Die nimmste als Basis , damit auch der Rest löppt - willst ja nicht nur booten sondern vermutlich auch VDR nutzen ;)


    HJS

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!