Red Hat Enterprise Linux 6: /boot/grub/menu.lst oder /boot/grub/grub.conf?

3

Ich habe ein brandneues Scientific Linux 6-System, aber diese Frage sollte auch für CentOS 6, RHEL6 oder andere RHEL6-Derivate gelten.

Ich sehe, dass /boot/grubsowohl eine menu.lstals auch eine grub.confDatei enthält. Es gibt auch einen Symlink von /etc/grub.confzu /boot/grub/grub.confder schlägt vor , dass ich verwenden soll grub.conf.

# cd /boot/grub
# ls -ld grub.conf menu.lst
-rw-------  1 root root 845 Aug 29 13:00 grub.conf
-rw-------. 1 root root 847 Aug 29 13:00 menu.lst
# ls -l /etc/grub.conf
lrwxrwxrwx. 1 root root 22 Aug 29 13:00 /etc/grub.conf -> ../boot/grub/grub.conf

Diese Dateien werden nicht von einem RPM bereitgestellt, weshalb es schwierig ist, ein Änderungsprotokoll zu finden, das diese Änderung beschreibt:

# rpm -qa --whatprovides /etc/grub.conf /boot/grub/menu.lst /boot/grub/grub.conf 
no package triggers /etc/grub.conf
no package triggers /boot/grub/menu.lst
no package triggers /boot/grub/grub.conf

Welche Datei soll ich verwenden? Warum gibt es zwei Dateien? Können Sie mich auf eine maßgebliche Dokumentation hinweisen?

Update Interessanterweise ist auf einem RHEL5.6 / 5.7-System in der menu.lstRegel ein Symlink zu ./grub.conf. Der Symlink von /etc/grub.confist auch da:

# ls -l /boot/grub/menu.lst /boot/grub/grub.conf /etc/grub.conf
-rw------- 1 root root 1036 Aug  2 11:34 /boot/grub/grub.conf
lrwxrwxrwx 1 root root   11 Apr  5 00:42 /boot/grub/menu.lst -> ./grub.conf
lrwxrwxrwx 1 root root 22 Aug  3  2009 /etc/grub.conf -> ../boot/grub/grub.conf

Dieser Symlink ist in RHEL6 jedoch nicht mehr vorhanden. Ich kann keinen dokumentierten Grund dafür finden.

Stefan Lasiewski
quelle
1
RHEL6 folgt standardmäßig immer noch dem gleichen Verhalten ( menu.lstals Symlink zu ./grub.conf). (Alle meine RHEL6-Boxen sind so.) Ich habe SL6 nur zum Vergleichen in die VM verschoben und sehe immer noch dasselbe Setup ( menu.lstals Symlink zu ./grub.conf) im Auslieferungszustand . Alles, um zu sagen: Welche Version von grub befindet sich auf Ihrem System ( rpm -q grub) und haben Sie Repos von Drittanbietern aktiviert oder Software von Drittanbietern installiert? Ich frage mich, ob ein Drittanbieter-Paket versucht hat, den Bootloader zu aktualisieren, und versehentlich den Symlink unterbrochen hat. Was sind die Unterschiede zwischen menu.lstund grub.conf?
Chad Feller
Ich führe grub-0.97-70.el6.x86_64 aus. Die serielle Konsole ist in aktiviert, in grub.confjedoch deaktiviert menu.lst. Je mehr ich mir das anschaue, desto mehr denke ich, dass dies ein Fehler mit SL6.1 oder ein Fehler in unseren Buildskripten ist (aber ich finde keine Beweise für einen Fehler mit meinen Buildskripten).
Stefan Lasiewski

Antworten:

3

Wir sollten verwenden /boot/grub/grub.confund /boot/grub/menu.lstsollten ein Symlink zu sein grub.conf.

Diese Dateien werden zunächst von Anaconda während der Installation erstellt. Dies ist angemeldet /var/log/anaconda.program.log. Wir können sehen, dass diese Anakonda-Ausführung verwendet grub.conf, nicht menu.lst:

13:00:23,089 INFO    : Running... ['/sbin/grub-install', '--just-copy']
13:00:23,134 INFO    : Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map']
13:00:23,346 INFO    : 
13:00:23,347 INFO    : 
13:00:23,347 INFO    :     GNU GRUB  version 0.97  (640K lower / 3072K upper memory)
13:00:23,347 INFO    : 
13:00:23,348 INFO    :  [ Minimal BASH-like line editing is supported.  For the first word, TAB
13:00:23,348 INFO    :    lists possible command completions.  Anywhere else TAB lists the possible
13:00:23,348 INFO    :    completions of a device/filename.]
13:00:23,348 INFO    : grub> root (hd0,0)
13:00:23,348 INFO    :  Filesystem type is ext2fs, partition type 0x83
13:00:23,348 INFO    : grub> install --stage2=/boot/grub/stage2 /boot/grub/stage1 d (hd0) /boot/grub/stage2 p (hd0,0)/boot/grub/grub.conf
13:00:23,348 INFO    : grub> 
Stefan Lasiewski
quelle
2

Sie sollten menu.lst verwenden . Ich habe ein wissenschaftliches Linux 6.1 installiert und es benutzt die menu.lst. Sie können dies auf der offiziellen Dokumentseite von SL überprüfen: http://ftp.scientificlinux.org/linux/scientific/6.1/x86_64/os/repoview/grub.html

lcipriani
quelle
Dies ist zwar hilfreich, aber auf dieser Seite werden menu.lst und grub.conf nicht behandelt. Außerdem werden diese Dateien vom RPM auf dieser Seite nicht bereitgestellt. Anscheinend werden sie von Anaconda erstellt, die aufruft grub-install(Die Ausführung von grub-installkann in /var/log/anaconda.program.log eingesehen werden).
Stefan Lasiewski
Diese Seite handelt von grub 0.97, und standardmäßig verwendet diese Version von grub menu.lst. Dies kann durch die überprüft werden: grub --version. Danke, dass du Stefan geholfen hast. Ich hatte mein SL nicht verfügbar, als ich auf die Frage antwortete.
Lcipriani
0

Ich bin nicht sicher, warum Red Hat sich für die Verwendung /boot/grub/grub.confals GRUB-Konfigurationsdatei entschieden hat, da die GRUB-Spezifikation für gilt /boot/grub/menu.lst. Ich halte den symbolischen Link für notwendig, da sich Phase 1 des Bootloaders darauf bezieht /boot/grub/menu.lst.

Sandor Strohmayer
quelle