# Nach Mainboardaustausch wird Gentoo nicht erkannt

## spinner.

Guten Abend, ich habe ein Problem.

An einem kleinen PC mit Gentoo, hat ein mini-ITX Mainboard ( ein VIA EPIA-EN12000EG ) den Geist aufgegeben.

Ich habe das Mainboard durch ein Asrock A330GC ersetzt.

Als Festplatte wird eine 8GB große Compact Flash Karte benutzt, darauf ist Gentoo installiert.

Doch wenn ich jetzt den Rechner starte, wird die CF Karte im BIOS zwar erkannt, aber Gentoo startet nicht. Es erscheint folgende Meldung: "reboot and select proper boot device or insert boot media in selected boot device and press a key"

Ich habe auf einem anderen Rechner Ubuntu Live gestartet und dann dort die Compact Flash Karte eingesetzt. Sie wurde erkannt, die Inhalte sind noch darauf. Also eine Bootparttion mit GRUB sowie eine weitere mit dem Dateisystem.

Was kann ich tun? Eigentlich müsste doch Linux automatisch mit dem neuen Mainboard klarkommen und custom treiber nachladen?Last edited by spinner. on Mon Oct 31, 2011 7:05 am; edited 1 time in total

----------

## root_tux_linux

"reboot and select proper boot device or insert boot media in selected boot device and press a key"

Hört sich für mich eher an als wenn dein BIOS nicht von der CF Karte bootet.

BIOS Einstellungen gecheckt?

BIOS Boot Device eingestellt? (Remove, HDD, CD, Other)

BIOS Boot Device Reihenfolge einstellt?  (CF Karte als erstes?)

----------

## spinner.

Ja, ich habe sogar das DVD Laufwerk ausgeschaltet, es gibt keine anderen Laufwerke. Das Boot Device ist die CF, die BIOS Einstellungen sind was das meiste angeht immer noch auf Default. Ich kann natürlich alles relevante auflisten, ich muss nur wissen was.

----------

## Treborius

das bios sitzt doch auf dem mainboard, 

also hast du das auch ausgewechselt,

oder sehe ich das jetzt völlig falsch?

----------

## bbgermany

 *spinner. wrote:*   

> Ja, ich habe sogar das DVD Laufwerk ausgeschaltet, es gibt keine anderen Laufwerke. Das Boot Device ist die CF, die BIOS Einstellungen sind was das meiste angeht immer noch auf Default. Ich kann natürlich alles relevante auflisten, ich muss nur wissen was.

 

Nicht jedes Board unterstützt das Booten von CF Modules bzw. diesen über Adapter. Genauso wie DOMs oder ähnlich Flashspeicher. Vielleicht solltest du mal im Boardherstellerforum nachfragen, ob dies überhaupt möglich ist.

MfG. Stefan

----------

## spinner.

Und was kann man da noch machen, wenn das booten von CF nicht unterstützt wird?

Ich habe folgende Infos und Einstellungen im BIOS:

AMIBIOS A330GC BIOS P1.10

CPU Intel Atom CPU 330 @ 1.60GHz (64-Bit)

Single-Channel Memory Mode

1016MB

IDE1 Master: CF8GB 20060911

Microcode Update: 106C2/213

Cache Size: 1024KB

Total Memory 1024MB with 8MB shared memory

DDRII1 1024MB/266MHz (DDRII533)

DDRII2 None

Overclock Mode - Auto

Bott Failure Guard - Enabled

Spread Spectrum - Auto

CPU Thermal Throttling - Enabled

No-Execute Memory Protection - Disabled

Hyper Threading Technology - Enabled

Chipset Settings

DRAM tCL - Auto

DRAM tRCD - Auto

DRAM tRP - Auto

DRAM tRAS - Auto

Advanced DRAM Configuration - Auto

Primary Graphics Adapter - PCI

Internal Graphics Mode Select - Auto

DVMT Mode Select - DVMT Mode

 DVMT/FIXED Memory - Maximum DVMT

Onboard GPU clock - Normal

Onboard HD Audio - Auto

 Front Panel - Enabled

Onboard LAN - Enabled

VCORE Voltage - Auto

VCCM (DRAM) Voltage - Auto

VTT Voltage - Auto

+1.5V Voltage - Auto

Memory Bandwidth Boost - Disabled

Boot Settings

1st Boot Device  - HDD:3M-CF 8GB

ATA/IDE Configuration - Enhanced

SATAII_1 - Not Detected

SATAII_2 - Not Detected

IDE1 Master - Hard Disk

IDE1 Slave - Not Detected

Und dann gibt es noch das hier:

[IMG]http://img689.imageshack.us/img689/372/img0625ku.th.jpg[/IMG]

ACPI Settings

Suspend To RAM - Disabled

Restore on AC/Power Loss - Power Off

Ring-In Power On - Enabled

PCI Devices Power On - Enabled

PS/2 Keyboard Power On - Any Key

RTC Alarm Power On - Disabled

ACPI HPET Table - Enabled

Advanced PCI/PnP Settings

PCI Latency Timer - 32

PCI IDE BusMaster - Enabled

Configure Super IO Chipset

Serial Port Adress - Disabled

Parallel Port Adress - Disabled

----------

## Hollowman

Hi

Du hast aber schon den Kernel an das neue Board angepasst?

Sprich IDE Treiber von pata_via auf das neue Board umgestellt. Die CF Karte hängt garantiert an IDE. Da ist nix mit AHCI.

Boote mal von ner LiveCD und mach ein lspci -k, schreib die Module auf und bau die in deinen Kernel ein (mittels chroot).

Sebastian

----------

## firefly

 *Hollowman wrote:*   

> Hi
> 
> Du hast aber schon den Kernel an das neue Board angepasst?
> 
> Sprich IDE Treiber von pata_via auf das neue Board umgestellt. Die CF Karte hängt garantiert an IDE. Da ist nix mit AHCI.
> ...

 

Moment wir sind noch net soweit, das Bios findet momentan keinen bootloader, weil es anscheinend nicht von einer CF-Karte booten kann obwohl es über einen IDe-Adapter angeschlossen ist.

----------

## spinner.

Ich wollte jetzt mit clonezzilla image von den beiden partitionen erstellen. Dabei wurden Fehler gemeldet und zwar auf der boot pattition. Offenbar ist sie mit den board mitbeschädigt worden. Was kann ich tun?

----------

## Max Steel

3. mal <.<

Das übliche

```
mkfs.ext2 /dev/<boot>

mount /boot

emerge -1 grub

cd /usr/src/linux && make -j2 && make install && make modules_install

vim /boot/grub/grub.conf && grub

root (hd0,0)

setup (hd0)

quit
```

Im Prinzip halt die Artikel grub installieren und kernel bauen aus dem Gentoo Handbuch.

Oder aber versuchen mit fsck.ext2 irgendwas zu erreichen.

----------

## spinner.

Ja, ich hab das schon gelesen. Nur wie komme ich dran? Soll ich die CD von gentoo booten und dann dies in der kommandozeile ausführen? Im moment komme ich doch nicht einmal an die konsole.

----------

## Max Steel

Jupp Gentoo-CD

Achja, nach dem mkfs solltest du direkt chrooten (vergessen zu erwähnen, also schieb da chrooten ins buildsystem dazwischen).

----------

## spinner.

Also die gentoo live cd funktioniert nicht - ich bekomme kein Bild.

Ich habe noch eine "Systemrescue CD 2.2.0" von www.sysresccd.org - das müsste doch auch gehen oder?

Wenn ich mkisofs.ext2 /dev/sda1 mache, dann lösche ich doch die Inhalte dieser Partition.

edit

Es gibt mehrere gentoo versionen - welche wäre hier am besten?

    alpha, amd64, arm, hppa, ia64, ppc, s390, sh, sparc, x86 und live-dvd vom 10. Oktober 2009

----------

## Max Steel

Du solltest am besten wissen was dein PC für eine Architektur hat.

Und mit mkisofs.ext2 hast du dich sicherlich verschrieben.

----------

## spinner.

Ja, habe ich - ich meinte natürlich mkfs.ext2

Also lt. den was ich fand hat ein Atom 330 einerseits i386, andererseits x86_64 Architektur ?! Ich finde nichts eindeutiges eben - meiner Erinnerung nach ist es aber eine 64-Bit Architektur.

----------

## spinner.

Also ich komm nicht klar damit. Ich habe die gentoo minimal iso x86 und das klappt aber nicht - es wird nicht erkannt, bzw. es bootet nicht.

Ich habe also mit ubuntu versucht. 

Zunächst so:

```
sdd1 ist die boot partition

sdd2 swap

sdd3 root partition

sudo mkfs.ext2 /dev/sdd1

sudo mount /dev/sdd3 /media

chroot /media/root
```

Dann Fehlermeldung irgendwas mit "chroot: /bin/bash" und "directory not found"

danach klappt garnix mehr

Edit

so, jetzt habe ich gentoo minimal x86 korrekt gebrannt und es startet.

Er findet jedoch kein "mkfs.ext2" und auch kein "emerge" - meldet command not found.

Ich habe jetzt so versucht:

```

mkfs.ext2 /dev/sda1

mount /dev/sda1 /mnt

emerge -1 grub

```

weiter komme ich nicht. Fehlermeldung. "-bash: mkfs.ext2: command not found"

----------

## spinner.

Kann mir bitte einer helfen? Ich komm einfach nicht klar mit den sch... Teil.   :Shocked: 

----------

## bbgermany

Hi,

 *spinner. wrote:*   

> Also ich komm nicht klar damit. Ich habe die gentoo minimal iso x86 und das klappt aber nicht - es wird nicht erkannt, bzw. es bootet nicht.
> 
> Ich habe also mit ubuntu versucht. 
> 
> Zunächst so:
> ...

 

Das kann ja denke ich nichts werden. Versuchs mal folgendermaßen:

```

sudo mkfs.ext2 /dev/sdd1

sudo mount /dev/sdd3 /media

sudo mount /dev/sdd1 /media/boot

chroot /media/ /bin/bash

```

 *spinner. wrote:*   

> Dann Fehlermeldung irgendwas mit "chroot: /bin/bash" und "directory not found"
> 
> danach klappt garnix mehr
> 
> Edit
> ...

 

Siehe oben, oder siehe Handbuch: http://www.gentoo.org/doc/de/handbook/handbook-x86.xml?part=1&chap=4#doc_chap6

MfG. Stefan

----------

## spinner.

Also hier geht irgendwelche sch... ab. Im ersten moment wird "mount" gefunden, im nächsten heisst es "command not found"   :Shocked: 

----------

## spinner.

Also - es fehlt das /media Verzeichnis auf der CD, daher habe ich woanders gemounted, sonst gehe ich so vor:

```

livecd ~# mkfs.ext2 /dev/sdd1

mke2fs 1.14.14 (22-Dec-2010)

Filesystem label=

OS type: Linux

Block size=1024 (log=0)

Fragment size=1024 (log=0)

Stride=0 blocks, Stripe width=0 blocks

10040 inodes, 40128 blocks

2006 blocks (5.00%) reserved for the super user

First data block=1

Maximum filesystem blocks=41156608

5 block groups

8192 blocks per group, 8192 fragments per group

2008 inodes per group

Superblock backups stored on blocks:

              8193, 24577

Writing inode tables: done

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 27 mounts or

180 days, whichever comes first. Use tune2fs -c or -i to override.

livecd ~# mount /dev/sdd3 /mnt

livecd ~# mount /dev/sdd1 /home

-bash: /bin/mount: No such file or directory

livecd ~# 

```

Habe auch den RAM Speicher ausgetauscht (ein ganz anderes Modell), es ändert sich aber nichts. Sobald ich das erste mal mounte geht nix mehr mit mount.

----------

## firefly

 *spinner. wrote:*   

> Also - es fehlt das /media Verzeichnis auf der CD, daher habe ich woanders gemounted, sonst gehe ich so vor:
> 
> ```
> 
> livecd ~# mkfs.ext2 /dev/sdd1
> ...

 

in /mnt ist AFAIK auch teile der live-cd gemounted

----------

## spinner.

und wo soll ich es dann mounten wenn die ganzen verzeichnisse nicht existieren?

----------

## firefly

 *spinner. wrote:*   

> und wo soll ich es dann mounten wenn die ganzen verzeichnisse nicht existieren?

 

öhm indem du einfach verzeichnisse unterhalb von z.b. /mnt anlegst?

----------

## spinner.

Das ist eine livecd, das wird doch nicht funktionieren oder erstelle ich die dann im speicher?

----------

## spinner.

Ich habe jetzt einfach riskiert, ihr hattet recht, man kann die verzeichnisse im speicher erstellen. Dann habe ich also die beiden Verzeichnisse gemounted und chroot gemacht und dann wollte ich emerg -1 ausführen:

```

mkfs.ext2 /dev/sdd1

mount /dev/sdd3 /mnt/sdd3

mount /dev/sdd1 /mnt/sdd1

chroot /media/ /bin/bash

emerge -1 grub

```

Das startete auch und schien zu laufen, doch am Ende kamen wieder Fehlermeldungen:

```

char_io.c:181: warning: derefencing type-punned pointer will break strict-aliasing rules

...

disk_io.c: 1027: warning: derefencing type-punned pointer will break strict-aliasing rules

...

..

>>> Merging sys-boot/grub-0.97-r3 to /

cat: /proc/mounts: No such file or directory

cat: /proc/mounts: No such file or directory

*

* Cannot automatically mount your  /boot partition

* Your boot partition has to be mounted rw before the installation

* can continue. grub needs to install important files there.

!!! ERROR: sys-boot/grub-0.97-rc failed.

Call stack:

 ebulid.sh, line 1630:  Called dyn_preinst

 ebulid.sh, line 1078:  Called pkg_preinst

 ebulid.sh, line 1304:  Called mount-boot_pkg_preinst

 mount-boot.eclass, line 64: Called mount-boot_mount_boot_partition

 mount-boot.eclass, line 54: Called die

!!! Please mount your /boot partition manually!

!!! If you need support, post the topmost build error, and the call stack if relevant.

!!! A complete build log is located at 'bla bla bla'

!!! FAILED preinst: 1

livecd /~#

```

Also irgendwie verstehe ich das nicht. Demnach müsste ich /boot per hand mounten, das hatte ich doch aber schon ?!

----------

## firefly

wiso liest du dir nicht nochmal den teil im handbuch wo es um das chroot geht?

Denn du hast da weitere mounts vergessen, damit die chroot umgebung voll funktionsfähig ist....

----------

## spinner.

Ich komme einfach nicht klar damit. Ich habe "proc" und "dev" unter /mnt/proc und /mnt/dev gemounted aber das "emerge -1 grub" problem besteht weiterhin. Bestimmt habe ich was falsch verstanden.

Ich gehe es nochmal Schritt für Schritt durch:

```

mkdir /mnt/gentoo/disk1

mkdir /mnt/gentoo/disk3

mkdir /mnt/gentoo/proc

mkdir /mnt/gentoo/dev

mkfs.ext2 /dev/sdd1

mount /dev/sdd3 /mnt/gentoo/disk3

mount -t proc none /mnt/gentoo/proc

mount --rbind /dev /mnt/gentoo/dev

mount /dev/sdd1 /mnt/gentoo/disk1

chroot /mnt/gentoo/disk3 /bin/bash

emerge -1 grub

```

Fehlt da was dazwischen? Leute, ich bin eine absolute null, aber ich muss das hinkriegen.

----------

## Max Steel

Also... es bringt dir nichts wenn du alles einfach nach /mnt/<part> mountest.

Es muss schon im richtigen Baum sein.

Aaaalso, von Anfang:

```
mount /dev/sdd3 /mnt/gentoo

mount /dev/sdd1 /mnt/gentoo/boot

mount -t proc proc /mnt/gentoo/proc

mount --bind /dev /mnt/gentoo/dev

chroot /mnt/gentoo

#jetz biste in der chroot

env-update && source /etc/profile

#jetz haste eine voll funktionstüchtige CHROOT-Umgebung.

emerge -1 grub

grub

#ganz wichtig, die hd0,0 muss auf deine tatsächliche Festplatten Reihenfolge angepasst sein.

#hd0 ist die erste Festplatte am ersten Controller, hd1 ist die zweite Festplatte am ersten Controller, hd2 ist die erste Festplatte am zweiten Controller und so fort

#hd0,0 ist dann auf der ersten FEstplatte am ersten Controller die erste PArtition (hier sda1)

root (hd0,0)

setup (hd0)

quit

```

----------

## spinner.

Danke. Ich habe das befolgt und "emerge -1 grub" hat diesmal auch ohne Fehlermeldungen geklappt.

Zur Info - ich habe keine Laufwerke mehr bis auf ein ext. DVD Laufwerk - angeschlossen. Dieses DVD hat die Bezeichnung "sr0". Somit ist die CF Festplatte jetzt sda mit sda1, sda2 und sda3

Dann habe ich "grub" eingegeben und somit grub gestartet. Darin habe ich dann folgende Eingaben gemacht und bekam folgende Antworten von Grub

```

grub> root (hd0,0)

 Filesystem type is ext2fs, partition type 0x83

grub> setup (hd0)

 Checking if "/boot/grub/stage1" exists... no

 Checking if "/grub/stage1" exists... yes

 Checking if "/grub/stage2" exists... yes

 Checking if "/grub/e2fs_stage1_5" exists... yes

 Running "embed /grub/e2fs_stage1_5 (hd0"... 15 sectors are embedded.

succeeded

 Running "install /grub/stage1 (hd0) (hd0)1+15 p (hd0,0)/grub/stage2 /grub/menu.lst"... succeeded

Done.

grub> quit

```

Dann Neustart - Festplatte startet weiterhin nicht !? Weiterhing kommt die folgende Fehlermeldung beim Start:

```
"reboot and select proper boot device or insert boot media in selected boot device and press a key" 
```

----------

## Max Steel

Okay, somit können wir sicher sein dass das ganze auf Dateisystemebene funktioniert.

Wie sieht es im Bios aus? Ich ging bisher davon aus das hier alles richtig eingestellt ist. (Festplatte erstes Bootmedium und so)

----------

## spinner.

Siehe den Beitrag Nr. 6 auf der Seite 1. Ist alles immer noch wie es war.

Edit

Ich habe eine externes Kartenlesegerät angeschlossen und plötzlich bootet es von der Karte.

Ich lande allerdings beim grub prompt

```

grub>

```

Ich habe versucht vmlinuz zu finden, doch es gibt wieder ein problem:

```

grub> find /boot/vmlinuz

Error 15: File not found

```

Das gleiche gilt für "/boot/grub/menu.lst" - es lässt sich nichts finden

----------

## spinner.

Ok, ich habs. Ich habe die Kopie der Bootdisk Installation noch mal rausgeholt und die dort befindlichen Dateien wieder raufkopiert. Jetzt startet der gentoo. Aber irgendwann kriege ich folgende Meldungen:

```

>> Activating mdev...

>> Determening root device

>> Block device /dev/sda3 is not a valid root device...

>> The root block device is unspecified or not detected.

Please specify a device to boot, or "shell" for a shell..

boot() ::

```

Muss ich jetzt den Kernel kompilieren? 

Vorerst wuerde mir reichen ein paar module nachladen zu koennen damit der pc heute erstmal laeuft. Kompilieren wuerde ich gerne erst in paar tagen. Kann man das so machen?

----------

## Max Steel

Hier musst du jetzt wirklich nur beim booten die kernel Zeile verändern (im Grub gibt es die Möglichkeit mit o den gewählten Eintrag zu verändern steht alles unter dem Auswahlmenü)

probier dann einfach mal von sda bis sdd alles durch.

Manche dieser Kartenlesegeräte erzeugen auch ein mmcblk0 (für die Karte ansich) und mmcblk0p0 (für die erste PArtition auf der Karte)

Normalerweiße müsste er dir sagen was er gefunden hat (wenn er etwas finden konnte) was du dann direkt auswählen kannst. Dann bootet er normal weiter und du kannst manuell diesen Eintrag ändern.

PS:

Was ich immer wieder für schlecht halte ist das das Gentoo-Handbuch als standard vorsieht das die /boot-Partition nicht automatisch gemountet wird.

Das ist sicher für solche Crypto-Maschinen oder etwas ähnliches sinnvoll (/boot auf USB und so) aber sicherlich nicht für den Otto-Normal-Einsteiger der möglicherweiße beim emerge grub darüber stolpert weil /boot nicht gemountet ist.

Das ist die "noauto" Einstellung in der /etc/fstab

----------

