Ist es möglich, grub.cfg zu bearbeiten?

8

Ich möchte einen Menüeintrag in grub.cfg ändern, zum Beispiel:

Von

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu is wonderful'

Zu

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu is world famous'
n00b
quelle
Versuchen Sie es mit Grub Customizer .
Mitch
1
Es ist möglich, aber schlecht beraten, und Ihre Änderungen werden überschrieben.
Dan
2
@Mitch Ich habe Grub Customizer in Betracht gezogen, aber es gibt viele Benutzer, die Probleme damit melden. Ein Benutzer verlor sogar seine Fähigkeit, das Betriebssystem zu starten.
n00b
@ n00b Yup, Grub Customizer stürzte gerade bei meinem ersten Versuch ab, es zu verwenden
Endolith
@ n00b Das stimmt. Dieses Tool ist wirklich gut, aber auch sehr gefährlich. @ endolith Was war die Absturzmeldung?
Quidam

Antworten:

12

Bearbeiten Sie /etc/grub.d/10_linuxstattdessen und führen sudo update-grubSie es aus, wenn Sie fertig sind. Dies ist eine zuverlässigere Methode. Andernfalls wird Ihr Upgrade bei jedem Upgrade auf einen neuen Kernel /boot/grub/grub.cfgüberschrieben und Sie verlieren Ihre Änderungen.

Oder Sie können Grub Customizer verwenden . So installieren Sie es:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer
Danatela
quelle
1
@edwin Ich habe Grub Customizer in Betracht gezogen, aber es gibt viele Benutzer, die Probleme damit melden. Ein Benutzer verlor sogar seine Fähigkeit, das Betriebssystem zu starten.
n00b
2
Verwenden Sie dann die erste Methode. Sie können Ihre posten, /etc/grub.d/10_linuxwenn Sie nicht sicher sind, welche Zeilen geändert werden sollen.
Danatela
Ist es nicht eher 40_custom und 10_linux ist für Proxy?
Quidam
2

Wie man es von einem Emulator aus macht, um zu lernen, wie GRUB funktioniert , ohne das Risiko, etwas zu beschädigen.

  • Erstellen Sie eine Multiboot-Hallo-Welt- main.elfDatei. GRUB weiß, wie diese Dateien gestartet werden (GRUB weiß auch, wie der Linux-Kernel gestartet wird, obwohl es sich nicht um Multiboot handelt).

  • Erstellen Sie eine iso/boot/grub/grub.cfgDatei mit:

    menuentry "main" {
        multiboot /boot/main.elf
    }
    

    Platzieren Sie main.elfunteriso/boot/

  • Generieren Sie ein Bild und führen Sie es aus:

    grub-mkrescue -o main.img iso
    qemu-system-x86_64 -hda main.img
    

Dadurch wird GRUB gestartet und ein Eintrag mit dem Namen angezeigt main.

Bearbeiten Sie nun grub.cfgwie menuentry "newmain"und nach einem Neustart lautet der neue Optionsname newmain. Ihre Änderung würde also funktionieren.

Ich habe den genauen Code für dieses Beispiel unter https://github.com/cirosantilli/x86-bare-metal-examples/tree/d217b180be4220a0b4a453f31275d38e697a99e0/multiboot/hello-world veröffentlicht

Wie andere sagten, machen Sie es in der Praxis nicht, da dies normalerweise eine Ausgabedatei ist und überschrieben wird update-grub.

Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功
quelle
-3

Ja, Sie können diese Datei /boot/grub/grub.cfg bearbeiten

tomaRv
quelle