# [SOLVED] Problem nach Installation "unalbe to resolve root:"

## mabox

Hallo Gentoo Community,

ich bin neu  hier  :Very Happy:   und versuche mich nach langem mal wieder daran Gentoo zu installieren. Der volle Linuxprofi bin ich leider nicht, ich probiere viel aus und taste mich so voran. Daher tue ich mich nun halt auch leider noch ziemlich schwer bereits mit der Installation von Gentoo. Meine derzeitige Hauptdistribution ist arch linux womit ich ziemlich gut klar komme, jedoch wollte ich schon immer mal Gentoo ausprobieren und hoffe es kann mich jemand bei der Installation unterstützen.

Also ich installiere Gentoo in einer KVM/QEMU Umgebung. Ich boote also von der DVD minimal Installation und habe dann anhand des Installationshandbuchs installiert. Es hat auch allen Anschein wirklich alles funtkioniert, ohne jegliche Fehlermeldungen usw.

Installiert habe ich mit folgenden Optionen:

- BIOS Mode

- Partitioniert mit GPT Label.

- EXT2 für boot, EXT4 für Root

- Systemd Initsystem

- manuell kompilierter Kernel, aber auch beim zweiten Versuch automatisch mit genkernel

- GRUB2 Bootloader

Also alles scheint geklappt zu haben, wenn ich dann boote erscheint auch schön das GRUB 2 Menü und der Bootprozess wird gestartet bis zur folgenden Stelle:

```

:: Loading from fs:

:: Loading from net:

:: Loading from iscsi:

:: Loading from crypto:

:: Loading from virtio:

>> Initalizing root device...

!! Unable to resolve root: UUID=0ff..... usw....

!! Could not find the root block device in UUID=0ff5116a-be5a-49d5-bf82-575b8e33de39

!! Please specify another value or:

!! - press Enter for the same

!! - type "shell" for a schell

!! - type "q" to skip ...

root block device(UUID=0ff5116a-be5a-49d5-bf82-575b8e33de39
```

Das kam z.B. mit meinem manuell erstellten Kernel. Dann habe ich es mal mit genkernel versucht aber auch das führt zum genau gleichen Ergebnis.

Dann habe ich mal noch mit der FSTAB herumprobiert und dort mal über die UUID oder PARTLABEL gemountet, ohne Erfolg.

Zum Schluß habe ich jetzt auch mal an der Stelle oben "shell" eingegeben und cat /proc/partitions eingegeben. Dort wird mir nur das CD Laufwerk angezeigt.

Ich hoffe es kann mich jemand ein wenig unterstützen damit ich ein bootfähiges Gentoo bekomme.

Schöne Grüße

maboxLast edited by mabox on Mon Feb 27, 2017 6:59 pm; edited 1 time in total

----------

## firefly

UUID kennt der Kernel nicht.

Kernel kennt PARTUUID welches die (GPT) UID der root partition darstellt.

UUID als root funktioniert nur im zusammespiel mit einer initrd. Und in diesem falle ist die UUID id UID des dateisystems

----------

## mabox

Also aktuell bzw. bei dem Code aus meinem ersten Thread habe ich die PARTUUID der "root" Partition in der FSTAB drin, dennoch steht da im Boot etwas von UUID........

Wird hier nicht meine FSTAB korrekt eingelesen?

----------

## firefly

 *mabox wrote:*   

> Also aktuell bzw. bei dem Code aus meinem ersten Thread habe ich die PARTUUID der "root" Partition in der FSTAB drin, dennoch steht da im Boot etwas von UUID........
> 
> Wird hier nicht meine FSTAB korrekt eingelesen?

 

An der stelle ist die /etc/fstab irrelevant. der UUID part ist bestandteil der "command line" welche dem kernel beim starten durch den bootloader mitgegeben wird

-> in der grub config steht root=UUID

----------

## mabox

Ah ok, jetzt befürchte ich fehlen mir aber doch ein paar basics   :Confused: 

Ja es stimmt in der grub.cfg steht z.B. folgendes:

root=UUID=0ff5116a-be5a-49d5-bf82-575b8e33de39 

Jetzt soll man ja aber die grub.cfg nicht direkt bearbeiten sondern über die /etc/default/grub. Dort kann ich ja nirgendwo die PARTUUID eintragen. Ich dachte wenn ich in der FSTAB die PARTUUID angeben das dann über grub-mkconfig ...... das alles richtig gemacht wird. Ich habe jetzt auch mal die grub.cfg manuell angepasst mit der PARTUUID, hat aber auch nichts geändert.

Kannst mir noch mehr auf die Sprünge helfen?

----------

## Pro_metheus

Hallo mabox,

 *Quote:*   

> Jetzt soll man ja aber die grub.cfg nicht direkt bearbeiten sondern über die /etc/default/grub. Dort kann ich ja nirgendwo die PARTUUID eintragen.

 

Doch, das wird eigentlich mit diesem Eintrag vorgenommen:

```
GRUB_CMDLINE_LINUX_DEFAULT="root=PARTUUID=XXXXXX ... "
```

Stelle aber bitte sicher, dass du tatsächlich die PARTUUID der  Rootpartition verwendest, z.B mit gdisk siehe hier: schwarzes Hinweisfenster.

Nach der Bearbeitung von /etc/default/grub, kannst du dann über ein grub-mkconfig die Änderungen automatisiert ausführen lassen.

Gruß

Pro_metheus

----------

## mabox

Hi,

vielen Dank für den Tipp.

Ich habe das jetzt gemacht aber mit dem gleichen Ergebnis.

Die PARTUUID habe ich in der Chroot-Umgebung mit blkid herausgefunden. Das ist doch korrekt so oder? Bei "gdisk" sagt er das es nicht installiert ist, daher dachte ich nehme ich blkid.

Die Ausgabe beim Booten ist nun wie folgt:

```

....

....

:: Loading from crypto: sha1_generic sha256_generic sha512_generic cbc aes-x8 6_64 xts

:: Loading from virtio:

>> Initializing root device...

!! PARTUUID=9770c71a-81da-411f-9d87-086185439892 is an invalid root device...

!! Could not find the root block device in .

!! Please specify another value or:

!! - press Enter for the same

!! - type "shell" for a shell

!! - type "q" to skip...

root block device() ::
```

Ich frage mich die ganze Zeit wo ich einen Fehler gemacht haben könnte wärend der Installation. Wie gesagt alles abgearbeitet anhand des Handbuches und alles funktionierte auch exakt so wie beschrieben ohne Fehler.

Könnte es daran liegen das ich es in einer KVM virtuellen Maschine versuche? Habe ich schon am Anfang bei der Partitionierung einen Fehler gemacht? Überlege ob ich nochmal anfange und diesesmal nicht GPT Label verwende.

Würde mich freuen wenn noch jemand einen Idee hätte...

----------

## Pro_metheus

Hallo mabox,

 *Quote:*   

> !! PARTUUID=9770c71a-81da-411f-9d87-086185439892 is an invalid root device...
> 
> !! Could not find the root block device in . 

 

Hm, das ist schon merkwürdig. Ich gehe mal davon aus, dass du auch wirklich die PARTUUID  der Root-Partition  eingetragen hast?

 *Quote:*   

> Installiert habe ich mit folgenden Optionen:
> 
> ...
> 
> - EXT2 für boot, EXT4 für Root
> ...

 

Du gibst an, dass Root mit ext4 formatiert wurde.

Kannst noch mal überprüfen, ob du das Dateisystem auch wirklich fest in den Kernel gebaut hast und nicht als Modul? Bei mir sieht z.B. so aus:

```
~ $ cat /usr/src/linux/.config | grep EXT4

CONFIG_EXT4_FS=y

CONFIG_EXT4_FS_POSIX_ACL=y

CONFIG_EXT4_FS_SECURITY=y

# CONFIG_EXT4_ENCRYPTION is not set

# CONFIG_EXT4_DEBUG is not set
```

Und wenn du schon dabei bist kannst du auch überprüfen, ob unter 

```
Device Drivers → Serial ATA and Parallel ATA drivers (libata)
```

die benötigten Dinge für deine Festplatte auch fest eingebaut wurden wie z.B. hier:

```
~ $ cat /usr/src/linux/.config | grep CONFIG_SATA

# CONFIG_SATA_ZPODD is not set

# CONFIG_SATA_PMP is not set

CONFIG_SATA_AHCI=y

CONFIG_SATA_AHCI_PLATFORM=y

# CONFIG_SATA_INIC162X is not set

# CONFIG_SATA_ACARD_AHCI is not set

# CONFIG_SATA_SIL24 is not set
```

Ich habe Genkernel schon sehr lange Zeit nicht mehr verwendet. Ich glaube mich aber noch zu erinnern, das dort viele Dinge als Modul gebaut werden, da oftmals eine initramfs verwendet wird. Ich würde dir eher empfehlen den Kernel manuell zu bauen.

 *Quote:*   

> Könnte es daran liegen das ich es in einer KVM virtuellen Maschine versuche?

 

Dazu kann ich leider nichts sagen, habe dies noch nie versucht.

Gruß

Pro_metheus

----------

## mabox

 *Quote:*   

> 
> 
> Hm, das ist schon merkwürdig. Ich gehe mal davon aus, dass du auch wirklich die PARTUUID  der Root-Partition  eingetragen hast?
> 
> 

 

Das habe ich wirklich zigfach überprüft mittlerweile. In der  CHROOT Umgebung finde ich die über blkid heraus und habe die in der /etc/default/grub eingetragen und danach mkconfig-grub durchgeführt. In der grub command Zeile habe ich nun auch noch explizit angegeben das es sich um EXT4 handelt (rootfstype=ext4)

Ich denke auch das ich die richtige Platte habe (vda4). Meine Partitionen sehen so aus (Ausgabe etwas gekürzt auf das Wesentliche)

```
fdisk -l

/dev/vda1 BIOS boot

/dev/vda2 EFI-System

/dev/vda3 Linux-Dateisystem

/dev/vda4 Linux-Dateisystem
```

Was mich aber hier etwas verwirrt ist das dort was von EFI auftaucht.....

Wenn ich blkid aufrufe stehen folgende "Partlabel" zu den Platten dazu:

```

/dev/vda1 grub

/dev/vda2 boot

/dev/vda3 swap

/dev/vda4 root
```

 *Quote:*   

> 
> 
> Du gibst an, dass Root mit ext4 formatiert wurde.
> 
> Kannst noch mal überprüfen, ob du das Dateisystem auch wirklich fest in den Kernel gebaut hast und nicht als Modul? Bei mir sieht z.B. so aus:
> ...

 

Also ich habe mittlerweile auch wieder den Kernel manuell kompiliert und auch nochmal überprüft ob ich die virtio Treiber drin haben (KVM). Unterschied zu Deiner Einstellung oben ist folgendes gewesen (habe ich jetzt aber angepasst):

```
# CONFIG_EXT4_ENCRYPTION is not set

# CONFIG_EXT4_DEBUG is not set
```

War bei mir aktiviert, jetzt nicht mehr.

```

# CONFIG_SATA_ZPODD is not set

# CONFIG_SATA_PMP is not set

CONFIG_SATA_AHCI=y

CONFIG_SATA_AHCI_PLATFORM=y

# CONFIG_SATA_INIC162X is not set

# CONFIG_SATA_ACARD_AHCI is not set

# CONFIG_SATA_SIL24 is not set
```

Bei mir steht bei CONFIG_SATA_AHCI ein m drin. Bei CONFIG_SATA_PMP ein y, CONFIG_SATA_AHCI_PLATFORM is not set.

CONFIG_SATA_SIL24 steht m drin. 

Ich wollte das jetzt alles anpassen wie bei Dir aber finde die Optionen leider nicht  :Sad: 

Aktuell bootet das Ganze immer noch nicht. Ich baue auch jedesmal ein initramfs (genkernel --install initramfs). Müsste ich das überhaupt? Im Handbuch steht "optional"?

Bin am überlegen ob ich das Ganze nochmal anfange. Diesesmal ohne GPT Label, vielleicht liegt es ja an der Ecke. Schade ich hätte das Problem jetzt schon gerne gelöst wegen des Erfolgserlebnisses  :Smile: 

Was meinst Du zum Problem? Noch irgendeine Idee?

Vielen Dank für Deine Geduld.

----------

## Pro_metheus

Hallo mabox,

 *Quote:*   

> Aktuell bootet das Ganze immer noch nicht. Ich baue auch jedesmal ein initramfs (genkernel --install initramfs). Müsste ich das überhaupt? Im Handbuch steht "optional"?
> 
> Bin am überlegen ob ich das Ganze nochmal anfange. Diesesmal ohne GPT Label, vielleicht liegt es ja an der Ecke. Schade ich hätte das Problem jetzt schon gerne gelöst wegen des Erfolgserlebnisses

 

Ich glaube eher, dass es an der Kernelkonfiguration liegt. Irgend eine Option ist nicht  oder nur als Modul gebaut und steht beim Bootprozess nicht zur Verfügung.

Versuch doch mal bitte über eine Live-CD (z.B. Sysrescuecd) mit dem Befehl lspci -k herauszufinden, welche Module du benötigst und baue diese fest in den Kernel. 

Natürlich kannst du auch Genkernel benutzen, dann aber besser mit einer Initramfs/Initrd.

Schau mal bitte hier: 

Der User „dufeu“ in diesem Thread hatte ähnliche Probleme wie du und konnte diese lösen – siehe insbesondere 16. und letzter Beitrag. 

In deinem 1. Beitrag schriebst du:

 *Quote:*   

> Also ich installiere Gentoo in einer KVM/QEMU Umgebung. Ich boote also von der DVD minimal Installation und habe dann anhand des Installationshandbuchs installiert.

 

Hast du auch das Gentoo-Wiki beachtet? 

https://wiki.gentoo.org/wiki/QEMU

Da werden auch einige Kerneleinstellungen aufgezeigt.

Gruß

Pro_metheus

----------

## mabox

Vielen Dank für die weiteren Infos. Ich werde das alles jetzt mal überprüfen und mich wieder melden.

Noch kurz zu dem initramfs. Wenn ich doch aber den Kernel jetzt manuell generiere müsste ich kein initramfs bauen ja? Nur wenn ich automatisch über genkernel generieren lasse?

----------

## Pro_metheus

 *Quote:*   

> Noch kurz zu dem initramfs. Wenn ich doch aber den Kernel jetzt manuell generiere müsste ich kein initramfs bauen ja? Nur wenn ich automatisch über genkernel generieren lasse?

 

Wenn du ihn manuell konfigurierst, dann benötigst du kein Initramfs. Beachte dann aber bitte, die für den Bootprozess erforderlichen Einstellungen nicht als Modul sondern fest in den Kernel zu bauen.

Ich meine hier vor allem die Festplattentreiber und die Einstellungen für das Filesystem.

Genkernel benötigt ein Initramfs, weil da einige Dinge welche beim Bootvorgang vor der Initialisierung des Initprozesses gestartet werden müssen als Modul gebaut wurden und sonst noch nicht zur Verfügung stehen wenn Sie gebraucht werden.

Man kann aber in Genkernel auch manuell eingreifen und die entsprechenden Änderungen ausführen, dann benötigst du auch nicht zwingend ein Initramfs. 

Vielleicht wäre es von Vorteil, dass du dir mit Genkernel erst mal eine Kernelconfig erstellst und diese dann manuell (also mit make menuconfig) so abänderst, dass alles so passt wie du es benötigst.

So habe ich es vor Jahren auch gemacht. Wenn du erst mal eine funktionierende .config hast, ist es zukünftig gar nicht mal mehr so schwer den Kernel selbst zu bauen.

Viel Erfolg   :Smile: 

Pro_metheus

----------

## mabox

Hi Pro_metheus,

HAMMER, wir haben es geschafft. Also das System bootet nun.

Ich habe wieder den Kernel manuell kompiliert und anschließend jetzt mal kein initramfs erstellt (an dem lag es ja sicher nicht aber egal).

Dann habe ich alles nochmal durchkontroliert anhand des Handbuches ob ich auch alle Optionen habe und ob ich auch unter "Device Drivers" "Virtio drivers" alles auf "y" habe und nicht auf "m".

Dann habe ich mir den verlinkten Beitrag von Dir genau angeschaut.

Folgendes hab ich nicht verstanden und dann auch erstmal nicht umgesetzt:

 *Quote:*   

> 
> 
> cal22cal hat Folgendes geschrieben:
> 
> Actually, that is the point I wanted to tell you in my first post 
> ...

 

Der aber glaub alles entscheidende Hinweis war dann im letzten Post des Themas:

dufeu schrieb:

 *Quote:*   

> What finally worked was to go back into the guest's kernel configutration and change CONFIG_VIRTIO_BLK from [=m] to [=y]:
> 
> Code:
> 
> Symbol: VIRTIO_BLK [=y] 
> ...

 

Also hab ich mal im "make menuconfig" unter -> Device Drivers -> Block devices nachgeschaut und dort gab es den Punkt -> virtio Block driver!

Dort war bis jetzt nichts aktiviert und somit hab ich da den * eingetragen.

Anschließend Kernel neu generiert, installiert und grub neu erstellt.

Das System bootet nun und ich kann mich mit root anmelden. Anschließend habe ich das System jetzt anhand Handbuch "finalisiert". Somit stehte ich nun im Handbuch an Punkt "Working with Gentoo".

Hammer cool wirklich und so so vielen Dank für Deine Hilfe, echt TOP! War echt kurz vorm aufgeben bzw. das ich nochmal vorn vorne anfange ohne GPT. Wäre dann aber wohl wieder in das gleiche Problem gekommen   :Very Happy: 

War also die Besonderheit das ich in KVM/QEMU Umgebung bootet und noch nicht alle Kerneldriver eingebaut hatte.

So dann geht jetzt mal weiter, bin gespannt wie ich klar komme.............

Als erstes fallen mir schonmal zwei Dinge auf   :Very Happy: 

- Wenn ich z.B. irgendeinen systemctl Befehl eingebe bekomme ich eine Fehlermeldung: "Failed to get D-Bus connection: Die Operation ist nicht erlaubt". (Vielleicht hätte ich das Ganze doch mit Open RC installieren sollen).

- Das "Fenster" der Shell ist deutlich kleiner, also kleinere Auflösung als noch wo ich von der DVD gestartet bin.....

ABER falls ich in den Sachen nicht weiterkomme ist es natürlich ein eigenes Thema   :Very Happy: 

Dieses hier kann ich wohl jetzt tatsächlich als gelöst markieren TOP. Ich hab ein bootentes Gentoo jetzt.

Hast Du mir vielleicht sonst noch irgendwelche Tipps für Anfänger? Einfach mal weiter im Handbuch oder?

Bis dann.

Schöne Grüße

mabox

----------

## Pro_metheus

Hallo mabox,

 *Quote:*   

> Hammer cool wirklich und so so vielen Dank für Deine Hilfe, echt TOP! War echt kurz vorm aufgeben bzw. das ich nochmal vorn vorne anfange ohne GPT. Wäre dann aber wohl wieder in das gleiche Problem gekommen 
> 
> War also die Besonderheit das ich in KVM/QEMU Umgebung bootet und noch nicht alle Kerneldriver eingebaut hatte.

 

Na das ist doch mal was  :Smile: 

Schön, dass du nicht gleich aufgegeben hast und das Problem beheben konntest. Nur so kann man den Dingen auf Grund gehen und seine Schlüsse daraus ziehen. Eine Neuinstallation ist bei Gentoo eigentlich das letzte Mittel der Problemlösung. Es gibt User die haben seit Jahren keine Neuinstallation mehr durchgeführt. Die fahren nur regelmäßig ihre Updates.

 *Quote:*   

> Als erstes fallen mir schonmal zwei Dinge auf 
> 
> - Wenn ich z.B. irgendeinen systemctl Befehl eingebe bekomme ich eine Fehlermeldung: "Failed to get D-Bus connection: Die Operation ist nicht erlaubt". (Vielleicht hätte ich das Ganze doch mit Open RC installieren sollen).
> 
> - Das "Fenster" der Shell ist deutlich kleiner, also kleinere Auflösung als noch wo ich von der DVD gestartet bin.....

 

Hier muss ich passen. Ich benutze OpenRC und kann zu Systemd nichts beitragen.

 *Quote:*   

> Hast Du mir vielleicht sonst noch irgendwelche Tipps für Anfänger? Einfach mal weiter im Handbuch oder?

 

Genau, Handbuch, Wiki, Suchmaschine und sonst im Forum nachfragen.

Viel Spaß noch mit Gentoo  :Smile: 

Gruß 

Pro_metheus

----------

## mabox

Vielen Dank.

Wie bekomme ich den jetzt noch ein [SOLVED] in die Überschrift rein?

----------

## Pro_metheus

In deinem ersten Post rechts oben auf edit klicken und den Titel abändern.

----------

## mabox

Ah ok danke. Das klappte vorhin icht auf Anhieb da der Titel zu lang war, konnte nichts mehr dazu schreiben. Daher musste ich nun den Titel leicht abändern.   :Very Happy: 

----------

