Ubuntu 16.04 与 Windows 10 一起安装后,GRUB 菜单没有出现?

Ubuntu 16.04 与 Windows 10 一起安装后,GRUB 菜单没有出现?

我安装了 Ubuntu 16.04 和 Windows 10(Windows 200GB,Ubuntu 100GB)。我认为我在安装时犯了一个错误。Ubuntu 加载正常,我能够在 Ubuntu 中执行所有任务,但它启动时没有显示 GRUB 菜单。我不想一遍又一遍地安装以使双启动工作。我怎样才能让 GRUB 出现,以便我可以启动 Windows 10 而不会丢失 Ubuntu?

我不会重新启动 Ubuntu,因为我不想现在丢失 Ubuntu。

下面的情况看起来很类似,但我不敢尝试这个。 重新安装和启动修复后不出现 Grub 菜单 尝试上述接受的答案无效。以下是我输入的命令和输出。

root@ubox:/home/AIR# update-grub
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-4.10.0-28-generic.efi.signed
Found kernel: /boot/vmlinuz-4.10.0-28-generic
Found kernel: /boot/vmlinuz-4.4.0-112-generic
Found kernel: /boot/memtest86+.bin
Found kernel: /boot/vmlinuz-4.10.0-28-generic.efi.signed
Found kernel: /boot/vmlinuz-4.10.0-28-generic
Found kernel: /boot/vmlinuz-4.4.0-112-generic
Found kernel: /boot/memtest86+.bin
Updating /boot/grub/menu.lst ... done

root@ubox:/home/AIR# apt-get install --reinstall grub
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  grub-efi-amd64-bin shim
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 19 not upgraded.
Need to get 0 B/196 kB of archives.
After this operation, 0 B of additional disk space will be used.
Preconfiguring packages ...
(Reading database ... 224798 files and directories currently installed.)
Preparing to unpack .../grub_0.97-29ubuntu68_amd64.deb ...
Unpacking grub (0.97-29ubuntu68) over (0.97-29ubuntu68) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up grub (0.97-29ubuntu68) ...
root@ubox:/home/AIR# grub-install
install_device not specified.
Usage: grub-install [OPTION] install_device
Install GRUB on your drive.

  -h, --help              print this message and exit
  -v, --version           print the version information and exit
  --root-directory=DIR    install GRUB images under the directory DIR
                          instead of the root directory
  --grub-shell=FILE       use FILE as the grub shell
  --no-floppy             do not probe any floppy drive
  --force-lba             force GRUB to use LBA mode even for a buggy
                          BIOS
  --recheck               probe a device map even if it already exists

INSTALL_DEVICE can be a GRUB device name or a system device filename.

grub-install copies GRUB images into the DIR/boot directory specfied by
--root-directory, and uses the grub shell to install grub into the boot
sector.

Report bugs to <[email protected]>.
root@ubox:/home/AIR# update-grub
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-4.10.0-28-generic.efi.signed
Found kernel: /boot/vmlinuz-4.10.0-28-generic
Found kernel: /boot/vmlinuz-4.4.0-112-generic
Found kernel: /boot/memtest86+.bin
Found kernel: /boot/vmlinuz-4.10.0-28-generic.efi.signed
Found kernel: /boot/vmlinuz-4.10.0-28-generic
Found kernel: /boot/vmlinuz-4.4.0-112-generic
Found kernel: /boot/memtest86+.bin
Updating /boot/grub/menu.lst ... done

root@ubox:/home/AIR# cat /boot/grub/menu.ls
cat: /boot/grub/menu.ls: No such file or directory
root@ubox:/home/AIR# cat /boot/grub/menu.lst
# menu.lst - See: grub(8), info grub, update-grub(8)
#            grub-install(8), grub-floppy(8),
#            grub-md5-crypt, /usr/share/doc/grub
#            and /usr/share/doc/grub-legacy-doc/.

## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not use 'savedefault' or your
# array will desync and will not let you boot your system.
default     0

## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout     3

## hiddenmenu
# Hides the menu by default (press ESC to see the menu)
hiddenmenu

# Pretty colours
#color cyan/blue white/blue

## password ['--md5'] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line)  and entries protected by the
# command 'lock'
# e.g. password topsecret
#      password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret

#
# examples
#
# title     Windows 95/98/NT/2000
# root      (hd0,0)
# makeactive
# chainloader   +1
#
# title     Linux
# root      (hd0,1)
# kernel    /vmlinuz root=/dev/hda2 ro
#

#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
##      kopt_2_6_8=root=/dev/hdc1 ro
##      kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=UUID=abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0 ro

## default grub root device
## e.g. groot=(hd0,0)
# groot=abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0

## should update-grub create alternative automagic boot options
## e.g. alternative=true
##      alternative=false
# alternative=true

## should update-grub lock alternative automagic boot options
## e.g. lockalternative=true
##      lockalternative=false
# lockalternative=false

## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=quiet splash

## should update-grub lock old automagic boot options
## e.g. lockold=false
##      lockold=true
# lockold=false

## Xen hypervisor options to use with the default Xen boot option
# xenhopt=

## Xen Linux kernel options to use with the default Xen boot option
# xenkopt=console=tty0

## altoption boot targets option
## multiple altoptions lines are allowed
## e.g. altoptions=(extra menu suffix) extra boot options
##      altoptions=(recovery) single
# altoptions=(recovery mode) single

## controls how many kernels should be put into the menu.lst
## only counts the first occurence of a kernel, not the
## alternative kernel options
## e.g. howmany=all
##      howmany=7
# howmany=all

## specify if running in Xen domU or have grub detect automatically
## update-grub will ignore non-xen kernels when running in domU and vice versa
## e.g. indomU=detect
##      indomU=true
##      indomU=false
# indomU=detect

## should update-grub create memtest86 boot option
## e.g. memtest86=true
##      memtest86=false
# memtest86=true

## should update-grub adjust the value of the default booted system
## can be true or false
# updatedefaultentry=false

## should update-grub add savedefault to the default options
## can be true or false
# savedefault=false

## ## End Default Options ##

title       Ubuntu 16.04.3 LTS, kernel 4.10.0-28-generic.efi.signed
uuid        abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0
kernel      /boot/vmlinuz-4.10.0-28-generic.efi.signed root=UUID=abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0 ro quiet splash 

title       Ubuntu 16.04.3 LTS, kernel 4.10.0-28-generic.efi.signed (recovery mode)
uuid        abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0
kernel      /boot/vmlinuz-4.10.0-28-generic.efi.signed root=UUID=abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0 ro  single

title       Ubuntu 16.04.3 LTS, kernel 4.10.0-28-generic
uuid        abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0
kernel      /boot/vmlinuz-4.10.0-28-generic root=UUID=abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0 ro quiet splash 
initrd      /boot/initrd.img-4.10.0-28-generic

title       Ubuntu 16.04.3 LTS, kernel 4.10.0-28-generic (recovery mode)
uuid        abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0
kernel      /boot/vmlinuz-4.10.0-28-generic root=UUID=abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0 ro  single
initrd      /boot/initrd.img-4.10.0-28-generic

title       Ubuntu 16.04.3 LTS, kernel 4.4.0-112-generic
uuid        abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0
kernel      /boot/vmlinuz-4.4.0-112-generic root=UUID=abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0 ro quiet splash 
initrd      /boot/initrd.img-4.4.0-112-generic

title       Ubuntu 16.04.3 LTS, kernel 4.4.0-112-generic (recovery mode)
uuid        abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0
kernel      /boot/vmlinuz-4.4.0-112-generic root=UUID=abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0 ro  single
initrd      /boot/initrd.img-4.4.0-112-generic

title       Ubuntu 16.04.3 LTS, memtest86+
uuid        abd3a19c-fed3-4cb7-98e3-63fd5c07ccf0
kernel      /boot/memtest86+.bin

### END DEBIAN AUTOMAGIC KERNELS LIST

答案1

有一个直接命令bcdedit /set "{bootmgr}" path \EFI\ubuntu\grubx64.efi可以在启动时显示 grub 菜单,但要执行,您需要访问 Windows 操作系统。

步骤如下:

  • 启动进入 Windows 操作系统
  • Windows将+组合r在一起并输入cmd以打开命令提示符。
  • 输入bcdedit /set "{bootmgr}" path \EFI\ubuntu\grubx64.efi并按回车键

PS:为了让我的戴尔笔记本电脑上的双启动正常工作,我借助了这个链接双启动 Windows 和 Ubuntu我也按照上述步骤设置了 grub 菜单,并且成功了。

此外,链接中列出的解决方案也有效。所以,试试吧。如果您通过它访问 grub,则可以启动 Windows,然后按照上面列出的步骤操作以确保安全。

相关内容