
Ich habe auf F27 aktualisiert und bin nach dem Neustart zur Notfall-Shell gegangen. Nach Stunden mit Google und Experimentieren habe ich die Wiederherstellung von der Installations-CD geladen, das Betriebssystem-Image gefunden und /usr/lib/os-release nach /etc/os-release kopiert, und das, neben anderen Dingen, an die ich mich wahrscheinlich nicht erinnere, brachte mich zu
grub>
Ich habe festgestellt, dass ich booten kann, wenn ich
grub> set boot=(hd0,msdos1)
grub> set prefix=(hd0,msdos1)
grub> insmod normal
normal
Dann erhalte ich die Eingabeaufforderungen zur Kernelauswahl (die jetzt „dracut“ statt „Fedora“ lauten?) und drücke „E“, um 4.14.18-300.fc27.x86_64 zu bearbeiten und „set root=‘hd0,msdos1‘“ in „set root=‘hd0,msdos3‘“ zu ändern. Anschließend drücke ich Strg+X zum Starten und Fedora 27 wird schließlich hochgefahren.
Mein Problem ist, dass ich das bei jedem Neustart tun muss. Ich habe
# grub2-mkconfig -o /boot/grub2/grub.cfg
Es hieß, es sei erfolgreich gewesen, aber das hat nichts geändert. Ich muss immer noch das ganze Verfahren durchführen, um die Maschine zum Booten zu bringen, und das ist etwas umständlich. Glücklicherweise müssen wir sie nicht oft neu starten.
Meine Frage lautet: Wie kann ich dafür sorgen, dass diese Partitionsänderungen einen Neustart überstehen?
Danke!
grub.cfg scheint die richtigen Werte zu haben, aber ich muss trotzdem das oben genannte tun, damit die Maschine bootet. /etc/grub.cfg ist mit /boot/grub2/grub.cfg verknüpft:
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub2-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
set pager=1
if [ -f ${config_directory}/grubenv ]; then
load_env -f ${config_directory}/grubenv
elif [ -s $prefix/grubenv ]; then
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="${saved_entry}"
fi
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
terminal_output console
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=5
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/01_users ###
if [ -f ${prefix}/user.cfg ]; then
source ${prefix}/user.cfg
if [ -n "${GRUB2_PASSWORD}" ]; then
set superusers="root"
export superusers
password_pbkdf2 root ${GRUB2_PASSWORD}
fi
fi
### END /etc/grub.d/01_users ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'dracut (4.14.18-300.fc27.x86_64) 27 (Server Edition) dracut-046-8.git20180105.fc27' --class generic --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.14.18-300.fc27.x86_64-advanced-14f0dc3e-9ff4-4051-a8a8-302730b552fb' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' e5576283-fa19-4b57-8c1a-4d44227e8b8c
else
search --no-floppy --fs-uuid --set=root e5576283-fa19-4b57-8c1a-4d44227e8b8c
fi
linux16 /vmlinuz-4.14.18-300.fc27.x86_64 root=UUID=14f0dc3e-9ff4-4051-a8a8-302730b552fb ro rhgb quiet
initrd16 /initramfs-4.14.18-300.fc27.x86_64.img
}
menuentry 'dracut (4.11.12-100.fc24.x86_64) 27 (Server Edition) dracut-046-8.git20180105.fc27' --class generic --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.11.12-100.fc24.x86_64-advanced-14f0dc3e-9ff4-4051-a8a8-302730b552fb' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' e5576283-fa19-4b57-8c1a-4d44227e8b8c
else
search --no-floppy --fs-uuid --set=root e5576283-fa19-4b57-8c1a-4d44227e8b8c
fi
linux16 /vmlinuz-4.11.12-100.fc24.x86_64 root=UUID=14f0dc3e-9ff4-4051-a8a8-302730b552fb ro rhgb quiet
initrd16 /initramfs-4.11.12-100.fc24.x86_64.img
}
menuentry 'dracut (4.11.10-100.fc24.x86_64) 27 (Server Edition) dracut-046-8.git20180105.fc27' --class generic --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.11.10-100.fc24.x86_64-advanced-14f0dc3e-9ff4-4051-a8a8-302730b552fb' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' e5576283-fa19-4b57-8c1a-4d44227e8b8c
else
search --no-floppy --fs-uuid --set=root e5576283-fa19-4b57-8c1a-4d44227e8b8c
fi
linux16 /vmlinuz-4.11.10-100.fc24.x86_64 root=UUID=14f0dc3e-9ff4-4051-a8a8-302730b552fb ro rhgb quiet
initrd16 /initramfs-4.11.10-100.fc24.x86_64.img
}
menuentry 'dracut (4.14.18-300.fc27.x86_64+debug) 27 (Server Edition) dracut-046-8.git20180105.fc27' --class generic --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.14.18-300.fc27.x86_64+debug-advanced-14f0dc3e-9ff4-4051-a8a8-302730b552fb' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' e5576283-fa19-4b57-8c1a-4d44227e8b8c
else
search --no-floppy --fs-uuid --set=root e5576283-fa19-4b57-8c1a-4d44227e8b8c
fi
linux16 /vmlinuz-4.14.18-300.fc27.x86_64+debug root=UUID=14f0dc3e-9ff4-4051-a8a8-302730b552fb ro rhgb quiet
initrd16 /initramfs-4.14.18-300.fc27.x86_64+debug.img
}
menuentry 'dracut (4.11.12-100.fc24.x86_64+debug) 27 (Server Edition) dracut-046-8.git20180105.fc27' --class generic --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.11.12-100.fc24.x86_64+debug-advanced-14f0dc3e-9ff4-4051-a8a8-302730b552fb' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' e5576283-fa19-4b57-8c1a-4d44227e8b8c
else
search --no-floppy --fs-uuid --set=root e5576283-fa19-4b57-8c1a-4d44227e8b8c
fi
linux16 /vmlinuz-4.11.12-100.fc24.x86_64+debug root=UUID=14f0dc3e-9ff4-4051-a8a8-302730b552fb ro rhgb quiet
initrd16 /initramfs-4.11.12-100.fc24.x86_64+debug.img
}
menuentry 'dracut (4.11.10-100.fc24.x86_64+debug) 27 (Server Edition) dracut-046-8.git20180105.fc27' --class generic --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.11.10-100.fc24.x86_64+debug-advanced-14f0dc3e-9ff4-4051-a8a8-302730b552fb' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' e5576283-fa19-4b57-8c1a-4d44227e8b8c
else
search --no-floppy --fs-uuid --set=root e5576283-fa19-4b57-8c1a-4d44227e8b8c
fi
linux16 /vmlinuz-4.11.10-100.fc24.x86_64+debug root=UUID=14f0dc3e-9ff4-4051-a8a8-302730b552fb ro rhgb quiet
initrd16 /initramfs-4.11.10-100.fc24.x86_64+debug.img
}
menuentry 'dracut (0-rescue-a9f8b0f7c9ac492ea0ca157a4e1f3d7b) 27 (Server Edition) dracut-046-8.git20180105.fc27' --class generic --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-0-rescue-a9f8b0f7c9ac492ea0ca157a4e1f3d7b-advanced-14f0dc3e-9ff4-4051-a8a8-302730b552fb' {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' e5576283-fa19-4b57-8c1a-4d44227e8b8c
else
search --no-floppy --fs-uuid --set=root e5576283-fa19-4b57-8c1a-4d44227e8b8c
fi
linux16 /vmlinuz-0-rescue-a9f8b0f7c9ac492ea0ca157a4e1f3d7b root=UUID=14f0dc3e-9ff4-4051-a8a8-302730b552fb ro rhgb quiet
initrd16 /initramfs-0-rescue-a9f8b0f7c9ac492ea0ca157a4e1f3d7b.img
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/20_ppc_terminfo ###
### END /etc/grub.d/20_ppc_terminfo ###
### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
Ausgabe von blkid:
[root@vh02 ~]# blkid
/dev/sda1: UUID="e5576283-fa19-4b57-8c1a-4d44227e8b8c" TYPE="ext4" PARTUUID="348d6d2c-01"
/dev/sda2: LABEL="home" UUID="5c592a5a-9819-40d5-a1aa-9e04688cecfa" TYPE="ext4" PARTUUID="348d6d2c-02"
/dev/sda3: UUID="14f0dc3e-9ff4-4051-a8a8-302730b552fb" TYPE="xfs" PARTUUID="348d6d2c-03"
/dev/sda5: UUID="4f19f0d8-badf-4dd3-8105-0bfb3d12609c" TYPE="swap" PARTUUID="348d6d2c-05"
Antwort1
Wenn Ihr /boot-Volume auf sda1 liegt, ist Ihr Menüeintrag definitiv falsch. Sehen Sie sich den folgenden oberen Eintrag an:
### BEGIN /etc/grub.d/10_linux ###
menuentry 'dracut (4.14.18-300.fc27.x86_64) 27 (Server Edition) dracut-046-8.git20180105.fc27' --class generic --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.14.18-300.fc27.x86_64-advanced-14f0dc3e-9ff4-4051-a8a8-302730b552fb' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' e5576283-fa19-4b57-8c1a-4d44227e8b8c
else
search --no-floppy --fs-uuid --set=root e5576283-fa19-4b57-8c1a-4d44227e8b8c
fi
linux16 /vmlinuz-4.14.18-300.fc27.x86_64 root=UUID=14f0dc3e-9ff4-4051-a8a8-302730b552fb ro rhgb quiet
initrd16 /initramfs-4.14.18-300.fc27.x86_64.img
}
set root='hd0,msdos3' ist falsch. Es müsste 'hd0,msdos1' heißen. Das ist es, was GRUB auf Ihre /boot-Partition verweist, während das root=-Argument für Ihren Kernel (die Zeile, die mit „linux16“ beginnt) auf die Dateisystem-UUID von / verweisen sollte.
Sie haben wahrscheinlich Grub-Dateien auf / sowie /boot, und während Ihres Upgrades wurde /boot möglicherweise ausgehängt. Anhand der gegebenen Informationen ist das schwer zu sagen, aber das ist ein häufiger Übeltäter. Das Beheben dieses Problems kann so einfach sein wie das Neugenerieren Ihrer Grub-Konfiguration mit und grub-mkconfig
dabei sicherzustellen, dass /dev/sda1 unter /boot eingehängt ist. Sie sollten vielleicht auch zuerst das /boot-Verzeichnis im /-Dateisystem bereinigen, wenn das wirklich das Problem ist.
Ihre Dracut-Probleme sind getrennt, aber zusammenhängend. Ich würde in der Zeile root=UUID= Ihres Kernels nachsehen und sicherstellen, dass die UUID dort tatsächlich zu Ihrem Root-Dateisystem gehört und nicht zu etwas anderem. blkid
In einem laufenden System wird die UUID neben dem Mount-Punkt sowie andere Details gedruckt. Ihr Menü und andere Dinge zeigen „Dracut“ an, weil die Grub-Konfigurationsgenerierung eine Fedora-Installation nicht richtig erkannt hat. Auch dies kann an einem nicht gemounteten /boot oder sogar einem während gemounteten Bind / liegen grub-mkconfig
.