# Fragen zu Grub2

## Christoph Schnauß

hallo,

ich möchte versuchen, einen Stick bootfähig zu machen. Dazu sollte es eigentlich nur nötig sein, grub auf dem Stick zu installieren, und natürlich muß der Rechner das Booten von einem USB-Stick ermöglichen.

Ich habe mir dazu auf einem Stick eine 30GB große Partition freigeräumt und formatiert sowie erst einmal stage-Archiv ausgepackt und den portage-Tree geholt. Da alles absolut aktuell ist, bekomme ich nicht mehr den "alten" Grub angeboten, sondern gleich Grub2. Nach einiger Verwirrung, weil ich nicht gleich eine gewohnte /boot/grub/grub.conf vorfinden und einrichten konnte, habe ich mich bei http://de.gentoo-wiki.com/wiki/GRUB_2 belesen, da das Handbuch an dieser Stelle nicht aktuell ist.

Die angegebenen Befehle 

```
grub2-install
```

und 

```
grub2-mkconfig
```

endeten auch jeweils mit einer kurzen Erfolgsmeldung. Jetzt habe ich also erwartet, daß ich eine /boot/grub2/grub.cfg vorfinde und wollte mir die anschauen. Das ist aber nicht der Fall, so eine Konfigurationsdatei finde ich nicht. Es gibt ein paar neue Unterverzeichnisse, die ich durchstöbert habe, aber nirgends liegt da so eine grub.cfg. Wo finde ich denn nun die Grub2-Konfiguration?

----------

## Christian99

grub2-mkconfig erzeugt keine grub.cfg Datei, aber der output von dem skript muss in die grub.cfg. Also einfach grub2-mkconfig > /boot/grub2/grub.cfg

----------

## Christoph Schnauß

 *Christian99 wrote:*   

> grub2-mkconfig erzeugt keine grub.cfg Datei, aber der output von dem skript muss in die grub.cfg. Also einfach grub2-mkconfig > /boot/grub2/grub.cfg

 

Tatsächlich, da ist sie ja. Und auch eine /etc/default/grub gibt es. Das Booten von Stick klappt im übrigen problemlos, aber ich bekam erstmal lediglich eine grub-shell angeboten, die mir nicht wirklich weiterhilft.

----------

## Christian99

und mir fällt gerade ein: grub2-mkconfig hat eine "-o" Option, die du statt ">" verwenden kannst.

----------

## Christoph Schnauß

 *Christian99 wrote:*   

> und mir fällt gerade ein: grub2-mkconfig hat eine "-o" Option, die du statt ">" verwenden kannst.

 

Wenn ich das angegebene Wiki richtig lese, dann nicht "statt", sondern "zusätzlich zu".  Gegenüber dem "alten" Grub hat sich doch erheblich viel geändert, ich möchte erstmal nur wieder eine Auswahl angeboten bekommen, ob ich nun meinen Rechner oder das System auf dem Stick benutzen möchte.

----------

## Christoph Schnauß

guten Abend,

es gelingt mir leider nicht, ein Bootmenü mit Auswahlmöglichkeiten hervorzuzaubern. Grundsätzlich möchte ich fürs erste erreichen, daß wenigstens zwei Zeilen enthalten sind:

1. Booten von einer Systeminstallation auf der lokalen Platte

2. Booten des auf dem Stick vorhandenen Gentoo

Ich erhalte lediglich eine grub-Shell, und wenn ich da "boot" verlange, werde ich gebeten, erst einen Kernel zu installieren.

Das habe ich gemacht. Ich benutze gemohnheitsmäßig die vanilla-sources, mein Kernel heißt einfach nur kernel und liegt in /boot, eine initrd gibt es nicht (weil ich nicht wirklich weiß, wie das geht). genkernel wollte wegen eines blockierten Pakets (openRC) nicht mitspielen, das hätte sonst eine initrd erzeugt.

Nach Fertigstellen des Kernels habe ich grub2-mkconfig nochmals aufgerufen, und das hat mir eine 41_custom in /etc/grub.d erzeugt. Ich habe dieses sehr kleine Script nun nach /boot/grub2 kopiert, weil nach den Angaben des bereits zitierten Wiki das dann ausgelesen werden müßte.  Vielleicht wird da was gelesen, nur wird kein Bootmenü erzeugt.

Wie kann ich nun mehr als nur die grub-Shell dargestellt bekommen?

----------

## musv

Ich verwende grub2 mehr oder weniger genauso wie grub1 und verlass mich nicht auf die Scripte. 

```
if [ -s $prefix/grubenv ]; then

  load_env

fi

set default="0"

set timeout=5

insmod fat 

insmod font 

set gfxmode=1600x1200

set gfxpayload=keep

insmod vbe

insmod vga

insmod video_bochs

insmod video_cirrus

insmod gfxterm

terminal_output gfxterm

loadfont ${prefix}/unifont.pf2

insmod jpeg

background_image ${prefix}/Alley_Baggett_003.jpg

set menu_color_normal=blue/black

set menu_color_highlight=light-blue/dark-gray

menuentry "Gentoo 3.4.4"        {

        set root=(hd0,1)

        linux /boot/bzImage-344 root=/dev/sda1 ro video=uvesafb:ywrap,mtrr:3,1440x900-32@60 CONSOLE=/dev/tty1 acpi_enforce_resources=lax

}

menuentry "Gentoo 3.3.2"        {

        set root=(hd0,1)

        linux /boot/bzImage-332 root=/dev/sda1 ro video=uvesafb:ywrap,mtrr:3,1440x900-32@60 CONSOLE=/dev/tty1 acpi_enforce_resources=lax

}
```

Das funktioniert und reicht mir auch.

----------

## fndark

Hi,

Hast Du beachtet das Grub2 unter anderem nach einem neuen Schema vorgeht betreffent der angaben wo der Kernel sich befindet?

 *Quote:*   

> SYNTAX
> 
> Grub2 hat eine geänderte Syntax in der Konfiguration, inklusive geänderter nummerierung bei Partionen welche nun mit 1 beginnen anstatt mit 0 wie Grub-Lagacy somit ist beispielsweise /dev/sdb3 nun (hd1,3) und nicht (hd1,2). 

 

Betreffent deinem Bootmenü solltest Du dir überlegen ob Du zukünftig "grub2-mkconfig" nutzen möchtest, wenn ja, so brauchst Du die "/boot/grub2/grub.cfg" nicht händisch bearbeiten da die ohnehin jedesmal  überschrieben wird von "grub2-mkconfig".

Das Bootmenü sollte normalerweise immer mit den Initscripten in "/etc/grub.d/" bearbeitet werden!

Lange rede -> ich hab vor längerer Zeit aus mehreren Gründen das englische Grub2-Wiki ins deutsch übersetzt weil mehrere Leute aus dem bekannten Kreis arge Probleme hatten mit Grub2, lies dir das nochmal durch, ist ausführlicher hab ich festgestellt zu dem von dir verwendeten

http://de.gentoo-wiki.com/wiki/Grub2

Grüße ....

----------

## Christoph Schnauß

 *fndark wrote:*   

> Betreffent deinem Bootmenü solltest Du dir überlegen ob Du zukünftig "grub2-mkconfig" nutzen möchtest

 

Da gibts nix zu überlegen, weil ich das bekannte "alte" grub gar nicht mehr mit emerge bekommen kann. Das hätte ich lieber genommen, das kann ich konfigurieren.

 *fndark wrote:*   

> Lange rede -> ich hab vor längerer Zeit aus mehreren Gründen das englische Grub2-Wiki ins deutsch übersetzt weil mehrere Leute aus dem bekannten Kreis arge Probleme hatten mit Grub2, lies dir das nochmal durch, ist ausführlicher hab ich festgestellt

 

Danke. Sieht tatsächlich ausführlicher aus. Dann schaun wir mal.

----------

## Schorchgrinder

https://wiki.archlinux.de/title/GRUB für das erstellen der /boot/grub(2)/grub.conf bei einer Neuinstallation von Grub ist es *IHMO unbedingt notwendig 

```
 grub2-mkconfig -o /boot/grub2/grub.cfg
```

 auszuführen, ohne -o wird die .grub.conf nur im stout angezeigt.

schönes WE noch

----------

## mv

 *Christoph Schnauß wrote:*   

>  *fndark wrote:*   Betreffent deinem Bootmenü solltest Du dir überlegen ob Du zukünftig "grub2-mkconfig" nutzen möchtest 
> 
> Da gibts nix zu überlegen, weil ich das bekannte "alte" grub gar nicht mehr mit emerge bekommen kann.

 

Das ist ein Missverständnis: grub2 kann auf zwei verschiedene Arten benutzt werden:

1. Du kannst grub2 ähnlich wie grub-legacy benutzen, indem Du /boot/grub2/grub.cfg einmalig manuell an Deine Bedürfnisse anpasst und dann nicht mehr änderst (oder nur noch manuell änderst).

2. Du benutzt grub2-mkconfig, um regelmäßig /boot/grub2/grub.cfg neu zu erstellen.

Ich persönlich habe grub2-mkconfig nur einmalig benutzt, um eine Beispiel-grub.cfg zu haben und danach nie mehr aufgerufen; es gibt nämlich eine ganze Menge Dinge, die bei 2. nicht sinnvoll möglich sind. Die Möglichkeit 2. ist eher die Windows-Lösung: Es gibt Dir etwas vor, und obwohl Du zwar Möglichkeiten hast, die Vorgaben zu ergänzen, ist es i.W. doch ein "friss oder stirb". Aber vielleicht willst Du das ja so. Den prinzipiellen Modus 1. oder 2. musst Du für Dich selbst entscheiden.

----------

## Josef.95

 *Christoph Schnauß wrote:*   

> ... Da gibts nix zu überlegen, weil ich das bekannte "alte" grub gar nicht mehr mit emerge bekommen kann.

 

Sollte eigentlich normal im Tree verfügbar sein - siehe zb auch http://packages.gentoo.org/package/sys-boot/grub

Oder auf deinem System mit 

```
eix -e grub
```

----------

## haegar87

Vielleicht auch noch wichtig zu wissen, falls grub2 die grub.cfg nicht nutzen will.

Bei mir muss ich den mkconfig Befehl grundsätzlich OHNE “>“ ausführen, da sonst die mkconfig Meldungen (z.B. “Kernel-Image gefunden“ mit in der Datei landen.

Das findet grub dann natürlich nicht witzig   :Laughing: 

----------

## Klaus Meier

Grub ist doch slottet. Du kannst die alte Version weiterhin nutzen, sogar gleichzeitig mit gurb2.

emerge grub:0 und du hast den alten.

----------

