我有一个三重启动系统,包含 Windows、Ubuntu 和 Arch Linux。我已成功双启动 Ubuntu 和 Windows,并已在另一个分区中设置 Arch 的安装,但我无法从启动菜单中获取 Arch 的启动项。我已运行:
$ sudo update-grub
并且命令输出"Found Arch Linux on /dev/sda7"
,但没有条目添加到菜单,也没有/boot/grub/grub.cfg
请指教。我正尝试将 Arch 条目添加到 Ubuntu 菜单,因为我是 Ubuntu 的长期用户,但我对 Arch 还是个新手。
以下是 boot-info-script 生成的结果:
Boot Info Script 0.76 [13 April 2017]
============================= Boot Info Summary: ===============================
=> Windows 7/8/2012 is installed in the MBR of /dev/sda.
=> Windows 7/8/2012 is installed in the MBR of /dev/sdb.
=> No known boot loader is installed in the MBR of /dev/sdc.
sda1: __________________________________________________________________________
File system: NTFS
Boot sector type: Windows 8/2012: NTFS
Boot sector info: No errors found in the Boot Parameter Block.
Operating System:
Boot files:
sda2: __________________________________________________________________________
File system: vfat
Boot sector type: Windows 8/2012: FAT32
Boot sector info: No errors found in the Boot Parameter Block.
Operating System:
Boot files: /efi/Boot/bootx64.efi /efi/Boot/fbx64.efi
/efi/ubuntu/fwupx64.efi /efi/ubuntu/grubx64.efi
/efi/ubuntu/mmx64.efi /efi/ubuntu/shimx64.efi
/efi/Microsoft/Boot/bootmgfw.efi
/efi/Microsoft/Boot/bootmgr.efi
/efi/Microsoft/Boot/memtest.efi
sda3: __________________________________________________________________________
File system:
Boot sector type: -
Boot sector info:
Mounting failed: mount: /tmp/BootInfo-Tds9bPFc/sda3: unknown filesystem type ''.
sda4: __________________________________________________________________________
File system: NTFS
Boot sector type: Windows 8/2012: NTFS
Boot sector info: According to the info in the boot sector, sda4 has
803742856 sectors, but according to the info from
fdisk, it has 803743743 sectors.
Operating System:
Boot files: /Windows/System32/winload.exe
sda5: __________________________________________________________________________
File system: swap
Boot sector type: -
Boot sector info:
sda6: __________________________________________________________________________
File system: ext4
Boot sector type: -
Boot sector info:
Operating System: Ubuntu 18.04.3 LTS
Boot files: /boot/grub/grub.cfg /etc/fstab
sda7: __________________________________________________________________________
File system: ext4
Boot sector type: -
Boot sector info:
Operating System: Arch Linux
Boot files: /etc/fstab
sdb1: __________________________________________________________________________
File system: ext4
Boot sector type: -
Boot sector info:
Operating System:
Boot files:
sdc1: __________________________________________________________________________
File system: vfat
Boot sector type: Windows 8/2012: FAT32
Boot sector info: No errors found in the Boot Parameter Block.
Operating System:
Boot files: /syslinux.cfg /efi/boot/bootx64.efi
/efi/boot/HashTool.efi /efi/boot/loader.efi
============================ Drive/Partition Info: =============================
Drive: sda _____________________________________________________________________
Disk /dev/sda: 477 GiB, 512110190592 bytes, 1000215216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Partition Boot Start Sector End Sector # of Sectors Id System
/dev/sda1 1 1,000,215,215 1,000,215,215 ee GPT
GUID Partition Table detected.
Partition Attrs Start Sector End Sector # of Sectors System
/dev/sda1 R 2,048 923,647 921,600 Windows Recovery Environment (Windows)
/dev/sda2 923,648 1,126,399 202,752 EFI System partition
/dev/sda3 1,126,400 1,159,167 32,768 Microsoft Reserved Partition (Windows)
/dev/sda4 1,159,168 804,902,911 803,743,744 Data partition (Windows/Linux)
/dev/sda5 804,902,912 867,403,775 62,500,864 Swap partition (Linux)
/dev/sda6 867,403,776 929,904,639 62,500,864 Data partition (Linux)
/dev/sda7 929,904,640 1,000,214,527 70,309,888 Data partition (Linux)
Attributes: R=Required, N=No Block IO, B=Legacy BIOS Bootable, +=More bits set
Drive: sdb _____________________________________________________________________
Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Partition Boot Start Sector End Sector # of Sectors Id System
/dev/sdb1 1 1,953,525,167 1,953,525,167 ee GPT
GUID Partition Table detected.
Partition Attrs Start Sector End Sector # of Sectors System
/dev/sdb1 2,048 1,953,523,711 1,953,521,664 Data partition (Linux)
Attributes: R=Required, N=No Block IO, B=Legacy BIOS Bootable, +=More bits set
Drive: sdc _____________________________________________________________________
Disk /dev/sdc: 14.7 GiB, 15728640000 bytes, 30720000 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Partition Boot Start Sector End Sector # of Sectors Id System
/dev/sdc1 1 4,294,967,295 4,294,967,295 ee GPT
/dev/sdc1 ends after the last sector of /dev/sdc
GUID Partition Table detected.
Partition Attrs Start Sector End Sector # of Sectors System
/dev/sdc1 2,048 30,719,966 30,717,919 Data partition (Windows/Linux)
Attributes: R=Required, N=No Block IO, B=Legacy BIOS Bootable, +=More bits set
"blkid" output: ________________________________________________________________
Device UUID TYPE LABEL
/dev/loop0 squashfs
/dev/loop1 squashfs
/dev/loop10 squashfs
/dev/loop11 squashfs
/dev/loop12 squashfs
/dev/loop13 squashfs
/dev/loop14 squashfs
/dev/loop15 squashfs
/dev/loop2 squashfs
/dev/loop3 squashfs
/dev/loop4 squashfs
/dev/loop5 squashfs
/dev/loop6 squashfs
/dev/loop7 squashfs
/dev/loop8 squashfs
/dev/loop9 squashfs
/dev/sda1 2C4AF6E54AF6AAAA ntfs Recovery
/dev/sda2 18F7-3E33 vfat
/dev/sda3
/dev/sda4 CE13000512FFEFF7 ntfs
/dev/sda5 d233d512-fbba-44f9-aff6-046b6703df19 swap
/dev/sda6 b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5 ext4
/dev/sda7 feaa6bde-b426-4d73-a279-5daf052173ba ext4 Arch
/dev/sdb1 5d00895e-ac24-4e73-864c-a52829b2c35f ext4
/dev/sdc1 AC98-19EC vfat ARCH_202001
========================= "ls -l /dev/disk/by-id" output: ======================
total 0
lrwxrwxrwx 1 root root 9 Jan 29 23:53 ata-ADATA_SU760_2J4520138012 -> ../../sda
lrwxrwxrwx 1 root root 10 Jan 29 23:53 ata-ADATA_SU760_2J4520138012-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Jan 29 23:53 ata-ADATA_SU760_2J4520138012-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Jan 29 23:53 ata-ADATA_SU760_2J4520138012-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Jan 29 23:53 ata-ADATA_SU760_2J4520138012-part4 -> ../../sda4
lrwxrwxrwx 1 root root 10 Jan 29 23:53 ata-ADATA_SU760_2J4520138012-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Jan 29 23:53 ata-ADATA_SU760_2J4520138012-part6 -> ../../sda6
lrwxrwxrwx 1 root root 10 Jan 29 23:53 ata-ADATA_SU760_2J4520138012-part7 -> ../../sda7
lrwxrwxrwx 1 root root 9 Jan 29 23:53 ata-Samsung_SSD_860_EVO_1TB_S5JANE0MB04353M -> ../../sdb
lrwxrwxrwx 1 root root 10 Jan 29 23:53 ata-Samsung_SSD_860_EVO_1TB_S5JANE0MB04353M-part1 -> ../../sdb1
lrwxrwxrwx 1 root root 9 Jan 29 23:53 usb-SMI_USB_DISK-0:0 -> ../../sdc
lrwxrwxrwx 1 root root 10 Jan 29 23:53 usb-SMI_USB_DISK-0:0-part1 -> ../../sdc1
lrwxrwxrwx 1 root root 9 Jan 29 23:53 wwn-0x5002538e09b98170 -> ../../sdb
lrwxrwxrwx 1 root root 10 Jan 29 23:53 wwn-0x5002538e09b98170-part1 -> ../../sdb1
lrwxrwxrwx 1 root root 9 Jan 29 23:53 wwn-0x5707c18100872624 -> ../../sda
lrwxrwxrwx 1 root root 10 Jan 29 23:53 wwn-0x5707c18100872624-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Jan 29 23:53 wwn-0x5707c18100872624-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Jan 29 23:53 wwn-0x5707c18100872624-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Jan 29 23:53 wwn-0x5707c18100872624-part4 -> ../../sda4
lrwxrwxrwx 1 root root 10 Jan 29 23:53 wwn-0x5707c18100872624-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Jan 29 23:53 wwn-0x5707c18100872624-part6 -> ../../sda6
lrwxrwxrwx 1 root root 10 Jan 29 23:53 wwn-0x5707c18100872624-part7 -> ../../sda7
================================ Mount points: =================================
Device Mount_Point Type Options
/dev/sda2 /boot/efi vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
/dev/sda6 / ext4 (rw,relatime,errors=remount-ro)
/dev/sdb1 /home ext4 (rw,relatime)
/dev/sdc1 /media/pipemon/ARCH_202001 vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
=========================== sda6/boot/grub/grub.cfg: ===========================
--------------------------------------------------------------------------------
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
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="0"
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 recordfail {
set recordfail=1
if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; 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
}
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
else
search --no-floppy --fs-uuid --set=root b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
fi
font="/usr/share/grub/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=en_US
insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
set timeout=30
else
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=hidden
set timeout=10
# Fallback hidden-timeout code in case the timeout_style feature is
# unavailable.
elif sleep --interruptible 10 ; then
set timeout=0
fi
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
if background_color 44,0,30,0; then
clear
fi
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
set gfxpayload="${1}"
if [ "${1}" = "keep" ]; then
set vt_handoff=vt.handoff=1
else
set vt_handoff=
fi
}
if [ "${recordfail}" != 1 ]; then
if [ -e ${prefix}/gfxblacklist.txt ]; then
if hwmatch ${prefix}/gfxblacklist.txt 3; then
if [ ${match} = 0 ]; then
set linux_gfx_mode=keep
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=keep
fi
else
set linux_gfx_mode=text
fi
export linux_gfx_mode
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
else
search --no-floppy --fs-uuid --set=root b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
fi
linux /boot/vmlinuz-5.3.0-28-generic root=UUID=b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5 ro quiet splash $vt_handoff
initrd /boot/initrd.img-5.3.0-28-generic
}
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5' {
menuentry 'Ubuntu, with Linux 5.3.0-28-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.3.0-28-generic-advanced-b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
else
search --no-floppy --fs-uuid --set=root b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
fi
echo 'Loading Linux 5.3.0-28-generic ...'
linux /boot/vmlinuz-5.3.0-28-generic root=UUID=b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5 ro quiet splash $vt_handoff
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-5.3.0-28-generic
}
menuentry 'Ubuntu, with Linux 5.3.0-28-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.3.0-28-generic-recovery-b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5' {
recordfail
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
else
search --no-floppy --fs-uuid --set=root b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
fi
echo 'Loading Linux 5.3.0-28-generic ...'
linux /boot/vmlinuz-5.3.0-28-generic root=UUID=b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5 ro recovery nomodeset
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-5.3.0-28-generic
}
menuentry 'Ubuntu, with Linux 5.3.0-26-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.3.0-26-generic-advanced-b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
else
search --no-floppy --fs-uuid --set=root b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
fi
echo 'Loading Linux 5.3.0-26-generic ...'
linux /boot/vmlinuz-5.3.0-26-generic root=UUID=b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5 ro quiet splash $vt_handoff
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-5.3.0-26-generic
}
menuentry 'Ubuntu, with Linux 5.3.0-26-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.3.0-26-generic-recovery-b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5' {
recordfail
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
else
search --no-floppy --fs-uuid --set=root b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
fi
echo 'Loading Linux 5.3.0-26-generic ...'
linux /boot/vmlinuz-5.3.0-26-generic root=UUID=b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5 ro recovery nomodeset
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-5.3.0-26-generic
}
menuentry 'Ubuntu, with Linux 5.0.0-23-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.0.0-23-generic-advanced-b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
else
search --no-floppy --fs-uuid --set=root b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
fi
echo 'Loading Linux 5.0.0-23-generic ...'
linux /boot/vmlinuz-5.0.0-23-generic root=UUID=b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5 ro quiet splash $vt_handoff
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-5.0.0-23-generic
}
menuentry 'Ubuntu, with Linux 5.0.0-23-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.0.0-23-generic-recovery-b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5' {
recordfail
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
else
search --no-floppy --fs-uuid --set=root b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5
fi
echo 'Loading Linux 5.0.0-23-generic ...'
linux /boot/vmlinuz-5.0.0-23-generic root=UUID=b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5 ro recovery nomodeset
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-5.0.0-23-generic
}
}
### 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_memtest86+ ###
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows Boot Manager (on /dev/sda2)' --class windows --class os $menuentry_id_option 'osprober-efi-18F7-3E33' {
insmod part_gpt
insmod fat
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 18F7-3E33
else
search --no-floppy --fs-uuid --set=root 18F7-3E33
fi
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
set timeout_style=menu
if [ "${timeout}" = 0 ]; then
set timeout=10
fi
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/30_uefi-firmware ###
menuentry 'System setup' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
### END /etc/grub.d/30_uefi-firmware ###
### 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 ###
--------------------------------------------------------------------------------
=============================== sda6/etc/fstab: ================================
--------------------------------------------------------------------------------
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda6 during installation
UUID=b1e9c50c-53dd-4ba4-9c32-2d7f8b9ce9b5 / ext4 errors=remount-ro 0 1
# /boot/efi was on /dev/sda2 during installation
UUID=18F7-3E33 /boot/efi vfat umask=0077 0 1
# /home was on /dev/sdb1 during installation
UUID=5d00895e-ac24-4e73-864c-a52829b2c35f /home ext4 defaults 0 2
# swap was on /dev/sda5 during installation
UUID=d233d512-fbba-44f9-aff6-046b6703df19 none swap sw 0 0
--------------------------------------------------------------------------------
=================== sda6: Location of files loaded by Grub: ====================
GiB - GB File Fragment(s)
422.108402252 = 453.235445760 boot/grub/grub.cfg 2
415.407222748 = 446.040109056 boot/vmlinuz-5.0.0-23-generic 2
423.603244781 = 454.840520704 boot/vmlinuz-5.3.0-26-generic 1
425.095432281 = 456.442744832 boot/vmlinuz-5.3.0-28-generic 1
425.095432281 = 456.442744832 vmlinuz 1
423.603244781 = 454.840520704 vmlinuz.old 1
424.157814026 = 455.435984896 boot/initrd.img-5.0.0-23-generic 2
424.281719208 = 455.569027072 boot/initrd.img-5.3.0-26-generic 2
425.250030518 = 456.608743424 boot/initrd.img-5.3.0-28-generic 6
425.250030518 = 456.608743424 initrd.img 6
424.281719208 = 455.569027072 initrd.img.old 2
=============================== sda7/etc/fstab: ================================
--------------------------------------------------------------------------------
# Static information about the filesystems.
# See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass>
# UUID=feaa6bde-b426-4d73-a279-5daf052173ba LABEL=Arch
/dev/sda7 / ext4 rw,relatime 0 1
# UUID=18F7-3E33 LABEL=BootEfi
/dev/sda2 /boot/efi vfat umask=0077 0 1
# UUID=5d00895e-ac24-4e73-864c-a52829b2c35f
/dev/sdb1 /home ext4 rw,relatime 0 2
# UUID=d233d512-fbba-44f9-aff6-046b6703df19 LABEL=Swap
/dev/sda5 none swap sw 0 0
--------------------------------------------------------------------------------
============================== sdc1/syslinux.cfg: ==============================
--------------------------------------------------------------------------------
DEFAULT loadconfig
LABEL loadconfig
CONFIG /isolinux/isolinux.cfg
APPEND /isolinux/
--------------------------------------------------------------------------------
================= sdc1: Location of files loaded by Syslinux: ==================
GiB - GB File Fragment(s)
?? = ?? syslinux.cfg 1
======================== Unknown MBRs/Boot Sectors/etc: ========================
Unknown MBR on /dev/sdc
00000000 41 4b 45 4f fc 31 c0 8e d8 be 31 7c e8 13 00 be |AKEO.1....1|....|
00000010 5c 7c e8 0d 00 be 31 7c e8 07 00 be 87 7c e8 01 |\|....1|.....|..|
00000020 00 f4 ac 3c 00 74 09 b4 0e bb 07 00 cd 10 eb f2 |...<.t..........|
00000030 c3 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |.***************|
00000040 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************|
00000050 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 00 2a 2a 2a 20 |*********...*** |
00000060 45 52 52 4f 52 3a 20 4c 45 47 41 43 59 20 42 4f |ERROR: LEGACY BO|
00000070 4f 54 20 4f 46 20 55 45 46 49 20 4d 45 44 49 41 |OT OF UEFI MEDIA|
00000080 20 2a 2a 2a 0d 0a 00 0d 0a 54 68 69 73 20 64 72 | ***.....This dr|
00000090 69 76 65 20 63 61 6e 20 6f 6e 6c 79 20 62 6f 6f |ive can only boo|
000000a0 74 20 69 6e 20 55 45 46 49 20 6d 6f 64 65 2e 0d |t in UEFI mode..|
000000b0 0a 49 74 20 63 61 6e 20 6e 6f 74 20 62 6f 6f 74 |.It can not boot|
000000c0 20 69 6e 20 42 49 4f 53 2f 4c 65 67 61 63 79 20 | in BIOS/Legacy |
000000d0 6d 6f 64 65 2e 0d 0a 0d 0a 49 66 20 79 6f 75 20 |mode.....If you |
000000e0 77 61 6e 74 20 74 6f 20 62 6f 6f 74 20 74 68 69 |want to boot thi|
000000f0 73 20 64 72 69 76 65 20 69 6e 20 42 49 4f 53 2f |s drive in BIOS/|
00000100 4c 65 67 61 63 79 20 6d 6f 64 65 2c 20 79 6f 75 |Legacy mode, you|
00000110 0d 0a 73 68 6f 75 6c 64 20 72 65 63 72 65 61 74 |..should recreat|
00000120 65 20 69 74 20 69 6e 20 52 75 66 75 73 20 75 73 |e it in Rufus us|
00000130 69 6e 67 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e |ing the followin|
00000140 67 20 73 65 74 74 69 6e 67 73 3a 0d 0a 2a 20 50 |g settings:..* P|
00000150 61 72 74 69 74 69 6f 6e 20 73 63 68 65 6d 65 20 |artition scheme |
00000160 2d 3e 20 4d 42 52 0d 0a 2a 20 54 61 72 67 65 74 |-> MBR..* Target|
00000170 20 73 79 73 74 65 6d 20 2d 3e 20 42 49 4f 53 2e | system -> BIOS.|
00000180 2e 2e 0d 0a 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000001a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000001c0 02 00 ee fe ff 77 01 00 00 00 ff ff ff ff 00 00 |.....w..........|
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000001e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 aa |..............U.|
00000200
答案1
我意识到必须有一个单独的 /boot 分区,该分区同时挂载到 Ubuntu 和 Arch,以便两个操作系统都可以发现它。更改它之后,我可以使用 为 Arch 生成 grub 菜单grub-mkconfig
。然后我将生成的 grub 作为自定义菜单项添加到 中配置的 Ubuntu 操作系统/etc/grub.d/40_custom
,这样当 Ubuntu 中的内核发生更改并且 grub 更新时,Arch 总会有一个备份启动项。