Grub - Bootreihenfolge ändern

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
korsberg

Grub - Bootreihenfolge ändern

Beitrag von korsberg » 08.10.2015 12:22:37

09Hallo,

ich habe seit gestern Debian neben Win 7 auf meinem PC.
Es ist für mich sehr verwirrend das Ganze, aber ich will/werde mich bemühen.

Der erste Versuch dabei ist aber schon gescheitert.
Da meine bessere Hälfte ebenfalls den Rechner (Windows) nutzt, wollte ich die Bootreihenfolge ändern.

Dabei habe ich schon rausgefunden das ich mich als "root" zu erkennen geben muß - habe ich mit "su" gemacht.
Und dann wollte ich mittels "mv etc/grub.d/30_os-prober 09_os-prober" die Reihenfolge ändern.
So hatte ich es im Netz gelesen.

Nun ist aber "30_os-prober" weg und "09_os-prober" nicht da.

Wie repariere ich das?

Benutzeravatar
smutbert
Beiträge: 8350
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Grub - Bootreihenfolge ändern

Beitrag von smutbert » 08.10.2015 13:03:39

Willkommen im Forum,

wenn du tatsächlich genau

Code: Alles auswählen

# mv etc/grub.d/30_os-prober 09_os-prober
eingegeben hast, musst du in / gewesen sein, wenn es funktioniert hat und dann müsstest du jetzt eine Datei /09_os-prober haben. Oder du hast vielleicht

Code: Alles auswählen

# mv /etc/grub.d/30_os-prober 09_os-prober
eingegeben und hast in irgendeinem anderen Verzeichnis, in dem du warst, etwa deinem Homeverzeichnis oder dem von root (/root) nun eine Datei 09_os-prober.
Wenn du nicht mehr weißt, was du eingegeben hast, kannst du in der Datei /root/.bash_history danach suchen

Code: Alles auswählen

# less ~/.bash_history
auf jeden Fall wissen wir natürlich nicht wo genau du nun die Datei hinverschoben hast. Die wirst du also suchen müssen…

Dort wo sie nun ist wird sie aber auch nicht weiter stören und nur nutzlos herumliegen, das ist also kein dringendes Problem. Du bekommst die ursprüngliche Datei problemlos mit dem Neuinstallieren des Pakets, dessen Bestandteil sie ist/war, zurück:

Code: Alles auswählen

# apt -o DPkg::options::=--force-confmiss --reinstall install grub-common
Darf ich einmal vermuten, dass dir die Reihenfolge der Menüeinträger in Wirklichkeit egal ist und es dir nur darum geht, dass Windows ohne Benutzereingriff standardmäßig gestartet wird?

Dann hätte ich einen Vorschlag. In der Datei /etc/default/grub kannst du mit dem Wert von GRUB_DEFAULT festlegen was standardmäßig gebootet werden soll. Dort kannst du entweder eintragen an der wievielten Position, angefangen mit 0, der gewünschte Booteintrag im Menü steht oder, was bei Änderungen am System etwas verläßlicher funktionieren sollte, den Titel des Menüeintrages eintragen.
Die entsprechende Zeile in /etc/default/grub könnte dann etwa so aussehen:

Code: Alles auswählen

GRUB_DEFAULT="Windows NT/2000/XP (loader) (on /dev/sda1)"
den genauen Titel kannst du im laufenden Betrieb unter Linux hoffentlich mit

Code: Alles auswählen

# grep menuentry\ \' /boot/grub/grub.cfg
herausfinden. Im Zweifelsfall fragst du einfach noch einmal nach.
Zuletzt geändert von smutbert am 08.10.2015 13:46:14, insgesamt 1-mal geändert.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Re: Grub - Bootreihenfolge ändern

Beitrag von KBDCALLS » 08.10.2015 13:12:26

smutbert hat geschrieben:
Dort wo sie nun ist wird sie aber auch nicht weiter stören und nur nutzlos herumliegen, das ist also kein dringendes Problem. Du bekommst die ursprüngliche Datei problemlos mit dem Neuinstallieren des Pakets, dessen Bestandteil sie ist/war, zurück:

Code: Alles auswählen

# apt --reinstall install os-prober

Das wird nicht reichen. Und ist auch das falsche Paket.

Code: Alles auswählen

aptitude -o DPkg::options::=--force-confmiss reinstall grub-common
Debianos-prober hat keine Files im /etc/

Code: Alles auswählen

matthias@tatjana:~$ dlocate -lsconf os-prober
Package os-prober not installed or has no conffiles.
matthias@tatjana:~$
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
smutbert
Beiträge: 8350
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Grub - Bootreihenfolge ändern

Beitrag von smutbert » 08.10.2015 13:46:10

Tatsächlich, danke. Hab meinen Beitrag korrigiert...

korsberg

Re: Grub - Bootreihenfolge ändern

Beitrag von korsberg » 08.10.2015 14:15:01

Also ich habe die Datei 09_os-prober gefunden. Sie liegt im persönlichen Ordner.

Auch habe ich die 30_os-prober wieder hergestellt.

Und ja es geht mir darum, dass Windows standardmäßig startet,ohne weiteres Zutun, nur nach einer gewissen Zeit.

Ich habe auch die Datei etc/default/grub gefunden. Aber da bin ich mir total unsicher.
Die sieht so aus und ist aber schreibgeschützt:

Code: Alles auswählen

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

Benutzeravatar
smutbert
Beiträge: 8350
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Grub - Bootreihenfolge ändern

Beitrag von smutbert » 08.10.2015 14:36:47

Als root darfst du sie auch bearbeiten, aber zeig erst einmal das Ergebnis des Befehls, den ich vorher schon gepostet habe:

Code: Alles auswählen

$ grep menuentry\ \' /boot/grub/grub.cfg
(# steht üblicherweise für den Prompt von root, $ für den eines normalen Benutzers, der Befehl ist also das hinter # oder $)

Benutzeravatar
Emess
Beiträge: 3787
Registriert: 07.11.2006 15:02:26
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Im schönen Odenwald
Kontaktdaten:

Re: Grub - Bootreihenfolge ändern

Beitrag von Emess » 08.10.2015 18:58:07

Code: Alles auswählen

GRUB_DEFAULT=0
bootet den 1. Eintrag

Code: Alles auswählen

GRUB_DEFAULT=1
würde den 2. Eintrag booten usw.
Debian Testing (bleibt es auch)
Debian Bookworm KDE Plasma 5x Kernel 6.1.0-21-amd64 (64-bit)
Notebook HP ZBook 17 G2
Quadro K3100M/PCIe/SSE2

http://www.emess62.de

korsberg

Re: Grub - Bootreihenfolge ändern

Beitrag von korsberg » 09.10.2015 09:30:17

smutbert hat geschrieben:Als root darfst du sie auch bearbeiten, aber zeig erst einmal das Ergebnis des Befehls, den ich vorher schon gepostet habe:

Code: Alles auswählen

$ grep menuentry\ \' /boot/grub/grub.cfg
(# steht üblicherweise für den Prompt von root, $ für den eines normalen Benutzers, der Befehl ist also das hinter # oder $)

Code: Alles auswählen

korsberg@korsberg-debian:~$ grep menuentry\ \' /boot/grub/grub.cfg
menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-e4c386cd-7a49-4617-ade1-7766772ceeb7' {
	menuentry 'Debian GNU/Linux, mit Linux 3.16.0-4-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-4-amd64-advanced-e4c386cd-7a49-4617-ade1-7766772ceeb7' {
	menuentry 'Debian GNU/Linux, with Linux 3.16.0-4-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-4-amd64-recovery-e4c386cd-7a49-4617-ade1-7766772ceeb7' {
menuentry 'Windows 7 (loader) (auf /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-084285AC42859ED6' {
korsberg@korsberg-debian:~$ 

korsberg

Re: Grub - Bootreihenfolge ändern

Beitrag von korsberg » 09.10.2015 09:43:24

Emess hat geschrieben:

Code: Alles auswählen

GRUB_DEFAULT=0
bootet den 1. Eintrag

Code: Alles auswählen

GRUB_DEFAULT=1
würde den 2. Eintrag booten usw.
Das wäre bei mir der dritte.
Der erste ist Debian, der zweite - keine Ahnung, der dritte Windows.

Aber da ist noch immer der Schreibschutz ...

Benutzeravatar
MSfree
Beiträge: 11731
Registriert: 25.09.2007 19:59:30

Re: Grub - Bootreihenfolge ändern

Beitrag von MSfree » 09.10.2015 09:54:10

korsberg hat geschrieben:Aber da ist noch immer der Schreibschutz ...
Als root einlogen und dann:

chmod u+w grub.cfg
dann grub.cfg editieren und hinterher wieder
chmod u-w grub.cfg

Wenn du mit vim editierst, kannst du dir chmod sparen und die datei mit :w! sichern.

Benutzeravatar
Emess
Beiträge: 3787
Registriert: 07.11.2006 15:02:26
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Im schönen Odenwald
Kontaktdaten:

Re: Grub - Bootreihenfolge ändern

Beitrag von Emess » 09.10.2015 09:59:22

du musst root sein um das zu ändern.
du gibst auf der Konsole su ein gefolgt vom Passwort dann hast du ein # vor dem Promt
danach die Datei zb. mit nano öffnen und bearbeiten
Debian Testing (bleibt es auch)
Debian Bookworm KDE Plasma 5x Kernel 6.1.0-21-amd64 (64-bit)
Notebook HP ZBook 17 G2
Quadro K3100M/PCIe/SSE2

http://www.emess62.de

korsberg

Re: Grub - Bootreihenfolge ändern

Beitrag von korsberg » 09.10.2015 11:16:45

MSfree hat geschrieben:
korsberg hat geschrieben:Aber da ist noch immer der Schreibschutz ...
Als root einlogen und dann:

chmod u+w grub.cfg
dann grub.cfg editieren und hinterher wieder
chmod u-w grub.cfg

Wenn du mit vim editierst, kannst du dir chmod sparen und die datei mit :w! sichern.
Verstehe ich nicht.
Ich habe seit ca. 48 Stunden Debian auf dem Rechner.
Der Befehl, im Terminal eingegeben, ergibt:

Code: Alles auswählen

chmod: Zugriff auf „grub.cfg“ nicht möglich: Datei oder Verzeichnis nicht gefunden
Terminal ist doch Konsole? Oder?

Benutzeravatar
MSfree
Beiträge: 11731
Registriert: 25.09.2007 19:59:30

Re: Grub - Bootreihenfolge ändern

Beitrag von MSfree » 09.10.2015 11:25:06

korsberg hat geschrieben:Ich habe seit ca. 48 Stunden Debian auf dem Rechner.
OK, das erklärt einiges :wink:
Der Befehl, im Terminal eingegeben, ergibt:

Code: Alles auswählen

chmod: Zugriff auf „grub.cfg“ nicht möglich: Datei oder Verzeichnis nicht gefunden
Nunja, ich hatte vorausgesetzt, daß du weißt, wie und daß man voher in das Verzeichnis wechseln muß, in dem die Datei grub.cfg liegt.

Vor dem chmod mußt su also in des Grub-Verzeichnis wechseln mit:
cd /boot/grub
Terminal ist doch Konsole? Oder?
Jein, aber beides kommt auf's gleiche raus.

Als Konsole bezeichnet man das nicht-graphische Login direkt am Bildschirm (so wie DOS früher). Als Terminal bezeichnet ein Fenster mit einer Eingabeaufforderung im Graphikmodus.

Benutzeravatar
smutbert
Beiträge: 8350
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Grub - Bootreihenfolge ändern

Beitrag von smutbert » 09.10.2015 13:52:34

Statt der Nummer, wie im standardmäßigen GRUB_DEFAULT=0 würde ich wie gesagt den Namen verwenden, in diesem Fall also

Code: Alles auswählen

GRUB_DEFAULT="Windows 7 (loader) (auf /dev/sda1)"
Wie du das eintragen kannst hat MSfree ja bereits beschrieben, aber auf einer Standardinstallation hat root bereits Schreibrechte für /etc/default/grub (nicht grub.cfg - siehe letzter Absatz). Das Ändern der Berechtigungen mit chmod dürfte also nicht notwendig sein, überprüfen kannst du das mit dem Befehl

Code: Alles auswählen

$ ls -l /etc/default/grub
Die Ausgabe sollte dann mit -rw-r--r-- beginnen, etwa so wie hier

Code: Alles auswählen

$ ls -l /etc/default/grub 
-rw-r--r-- 1 root root 1194 Feb 26  2015 /etc/default/grub
Die eigentliche Änderung kannst du dann zB so vornehmen:

Code: Alles auswählen

$ su
und root-Paßwort eingeben, danach hast du eine root-Shell und öffnest die Datei in einem editor wie nano,

Code: Alles auswählen

# nano /etc/default/grub
navigierst mit den Pfeiltasten zu der Zeile GRUB_DEFAULT=0, löscht die 0 und schreibst stattdessen das oben gepostete "Windows 7 (loader) (auf /dev/sda1)" hinein. Danach brauchst du nur noch Ctrl+o und danach Enter zum speichern zu drücken und Ctrl+x zum Beenden von nano.

Damit haben wir aber noch nicht das Bootmenü geändert, das beim nächsten Systemstart angezeigt wird. Wir haben bis jetzt nur die Regeln geändert nach denen dieses Bootmenü "gebaut" wird. Dieses Menü steht in der /boo/grub/grub.cfg und wird bei solchen Änderungen nicht automatisch aktualisiert, wir müssen es erst noch mit

Code: Alles auswählen

# update-grub
neu bauen lassen. Jetzt erst brauchen wir keine root-Shell mehr und du kannst sie mit exit verlassen.

korsberg

Re: Grub - Bootreihenfolge ändern

Beitrag von korsberg » 10.10.2015 20:40:52

Danke, danke, danke an alle!
Das war ja idiotensicher.

Nun kann ich mich langsam und in Ruhe mit Debian befassen.

Antworten