我的笔记本电脑上安装了 Ubuntu 14.04 (Trusty Tahr)。它运行良好,但后来我意外地删除了第一个分区,该分区包含/boot/efi
默认安装的 EFI 内容。
但是删除分区后,我将其重新格式化为 FAT32,将其设置为自动挂载到/boot/efi
,并从另一台与我的计算机类似的计算机复制了 EFI 文件。之后,我可以通过 GRUB 菜单手动启动系统,并且可以执行root=(hd...)
和configfile /boot/grub/grub.cfg
。
然后系统启动到我的 Ubuntu 安装,但是在运行sudo update-grub
并使用/etc/fstab
EFI 设备的正确 UUID 更新文件后,我仍然必须手动启动;它不会自行启动。
最后,我使用启动修复工具创建了这个引导修复摘要。
那么,我怎样才能让 Ubuntu 像以前一样自动启动呢?注意:这里没有双启动,只有一个 Ubuntu 14.04 安装。
这是启动修复输出:
Boot Info Script e7fc706 + Boot-Repair extra info [Boot-Info 9Feb2015]
============================= Boot Info Summary: ===============================
=> No boot loader is installed in the MBR of /dev/sda.
sda1: __________________________________________________________________________
File system: vfat
Boot sector type: FAT32
Boot sector info: No errors found in the Boot Parameter Block.
Operating System:
Boot files: /EFI/ubuntu/MokManager.efi /EFI/ubuntu/grubx64.efi
/EFI/ubuntu/shimx64.efi
sda2: __________________________________________________________________________
File system: ext4
Boot sector type: -
Boot sector info:
Operating System: Ubuntu 14.04.4 LTS
Boot files: /boot/grub/grub.cfg /etc/fstab
/boot/extlinux/extlinux.conf
sda3: __________________________________________________________________________
File system: swap
Boot sector type: -
Boot sector info:
============================ Drive/Partition Info: =============================
Drive: sda _____________________________________________________________________
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
Partition Boot Start Sector End Sector # of Sectors Id System
/dev/sda1 1 1,953,525,167 1,953,525,167 ee GPT
GUID Partition Table detected.
Partition Start Sector End Sector # of Sectors System
/dev/sda1 2,048 1,050,623 1,048,576 Data partition (Windows/Linux)
/dev/sda2 1,050,624 1,936,986,111 1,935,935,488 Data partition (Linux)
/dev/sda3 1,936,986,112 1,953,523,711 16,537,600 Swap partition (Linux)
"blkid" output: ________________________________________________________________
Device UUID TYPE LABEL
/dev/sda1 207B-0881 vfat
/dev/sda2 355dd0f2-70a0-4000-bc1a-47498e2213c3 ext4
/dev/sda3 d2b8d8bf-11f3-4c40-8883-b209f461c842 swap
========================= "ls -l /dev/disk/by-id" output: ======================
total 0
lrwxrwxrwx 1 root root 9 Feb 23 15:08 ata-ST1000LM024_HN-M101MBB_S32XJ9DF913130 -> ../../sda
lrwxrwxrwx 1 root root 10 Feb 23 14:59 ata-ST1000LM024_HN-M101MBB_S32XJ9DF913130-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Feb 23 14:59 ata-ST1000LM024_HN-M101MBB_S32XJ9DF913130-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Feb 23 14:59 ata-ST1000LM024_HN-M101MBB_S32XJ9DF913130-part3 -> ../../sda3
lrwxrwxrwx 1 root root 9 Feb 23 14:59 ata-TSSTcorp_CDDVDW_SU-228FB_S12H6YHF5050Z8 -> ../../sr0
lrwxrwxrwx 1 root root 9 Feb 23 14:59 usb-SanDisk_Cruzer_Switch_4C530301300708123022-0:0 -> ../../sdb
lrwxrwxrwx 1 root root 9 Feb 23 15:08 wwn-0x50004cf20e1127da -> ../../sda
lrwxrwxrwx 1 root root 10 Feb 23 14:59 wwn-0x50004cf20e1127da-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Feb 23 14:59 wwn-0x50004cf20e1127da-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Feb 23 14:59 wwn-0x50004cf20e1127da-part3 -> ../../sda3
================================ Mount points: =================================
Device Mount_Point Type Options
/dev/sda1 /boot/efi vfat (rw)
/dev/sda2 / ext4 (rw,errors=remount-ro)
=========================== sda2/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,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 355dd0f2-70a0-4000-bc1a-47498e2213c3
else
search --no-floppy --fs-uuid --set=root 355dd0f2-70a0-4000-bc1a-47498e2213c3
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=0
# Fallback hidden-timeout code in case the timeout_style feature is
# unavailable.
elif sleep --interruptible 0 ; 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=7
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-355dd0f2-70a0-4000-bc1a-47498e2213c3' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_gpt
insmod ext2
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 355dd0f2-70a0-4000-bc1a-47498e2213c3
else
search --no-floppy --fs-uuid --set=root 355dd0f2-70a0-4000-bc1a-47498e2213c3
fi
linux /boot/vmlinuz-3.16.0-60-generic.efi.signed root=UUID=355dd0f2-70a0-4000-bc1a-47498e2213c3 ro quiet splash $vt_handoff
initrd /boot/initrd.img-3.16.0-60-generic
}
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-355dd0f2-70a0-4000-bc1a-47498e2213c3' {
menuentry 'Ubuntu, with Linux 3.16.0-60-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-60-generic-advanced-355dd0f2-70a0-4000-bc1a-47498e2213c3' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_gpt
insmod ext2
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 355dd0f2-70a0-4000-bc1a-47498e2213c3
else
search --no-floppy --fs-uuid --set=root 355dd0f2-70a0-4000-bc1a-47498e2213c3
fi
echo 'Loading Linux 3.16.0-60-generic ...'
linux /boot/vmlinuz-3.16.0-60-generic.efi.signed root=UUID=355dd0f2-70a0-4000-bc1a-47498e2213c3 ro quiet splash $vt_handoff
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-3.16.0-60-generic
}
menuentry 'Ubuntu, with Linux 3.16.0-60-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-60-generic-recovery-355dd0f2-70a0-4000-bc1a-47498e2213c3' {
recordfail
load_video
insmod gzio
insmod part_gpt
insmod ext2
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 355dd0f2-70a0-4000-bc1a-47498e2213c3
else
search --no-floppy --fs-uuid --set=root 355dd0f2-70a0-4000-bc1a-47498e2213c3
fi
echo 'Loading Linux 3.16.0-60-generic ...'
linux /boot/vmlinuz-3.16.0-60-generic.efi.signed root=UUID=355dd0f2-70a0-4000-bc1a-47498e2213c3 ro recovery nomodeset
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-3.16.0-60-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 ###
### 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 ###
--------------------------------------------------------------------------------
=============================== sda2/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/sda2 during installation
UUID=355dd0f2-70a0-4000-bc1a-47498e2213c3 / ext4 errors=remount-ro 0 1
# /boot/efi was on /dev/sda1 during installation
UUID=207B-0881 /boot/efi vfat defaults 0 1
# swap was on /dev/sda3 during installation
UUID=d2b8d8bf-11f3-4c40-8883-b209f461c842 none swap sw 0 0
--------------------------------------------------------------------------------
====================== sda2/boot/extlinux/extlinux.conf: =======================
--------------------------------------------------------------------------------
## /boot/extlinux/extlinux.conf
##
## IMPORTANT WARNING
##
## The configuration of this file is generated automatically.
## Do not edit this file manually, use: extlinux-update
default l0
prompt 1
timeout 50
include themes/debian/theme.cfg
--------------------------------------------------------------------------------
============== sda2: Version of COM32(R) files used by Syslinux: ===============
boot/extlinux/chain.c32 : COM32R module (v4.xx)
========= Devices which don't seem to have a corresponding hard drive: =========
sdb
ADDITIONAL INFORMATION :
=================== log of boot-repair 2016-02-23__15h08 ===================
boot-repair version : 4ppa35
boot-sav version : 4ppa35
glade2script version : 3.2.2~ppa47~saucy
boot-sav-extra version : 4ppa35
boot-repair is executed in installed-session (Ubuntu 14.04.4 LTS, trusty, Ubuntu, x86_64)
CPU op-mode(s): 32-bit, 64-bit
BOOT_IMAGE=/boot/vmlinuz-3.16.0-60-generic.efi.signed root=UUID=355dd0f2-70a0-4000-bc1a-47498e2213c3 ro quiet splash vt.handoff=7
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.
=================== os-prober:
/dev/disk/by-uuid/355dd0f2-70a0-4000-bc1a-47498e2213c3:The OS now in use - Ubuntu 14.04.4 LTS CurrentSession:linux
=================== blkid:
/dev/sda1: UUID="207B-0881" TYPE="vfat"
/dev/sda2: UUID="355dd0f2-70a0-4000-bc1a-47498e2213c3" TYPE="ext4"
/dev/sda3: UUID="d2b8d8bf-11f3-4c40-8883-b209f461c842" TYPE="swap"
disk/by-uuid/355dd0f2-70a0-4000-bc1a-47498e2213c3 (sda) has unknown type. Please report this message to [email protected]
1 disks with OS, 1 OS : 1 Linux, 0 MacOS, 0 Windows, 0 unknown type OS.
Linux not detected by os-prober on sda2. Please report this message to [email protected]
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util sfdisk doesn't support GPT. Use GNU Parted.
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.
=================== //etc/grub.d/ :
drwxr-xr-x 2 root root 4096 Jan 7 12:43 grub.d
total 76
-rwxr-xr-x 1 root root 9791 Dec 17 16:00 00_header
-rwxr-xr-x 1 root root 6058 May 8 2014 05_debian_theme
-rwxr-xr-x 1 root root 11608 May 15 2014 10_linux
-rwxr-xr-x 1 root root 10412 May 15 2014 20_linux_xen
-rwxr-xr-x 1 root root 1992 Mar 12 2014 20_memtest86+
-rwxr-xr-x 1 root root 11692 May 15 2014 30_os-prober
-rwxr-xr-x 1 root root 1416 May 15 2014 30_uefi-firmware
-rwxr-xr-x 1 root root 214 May 15 2014 40_custom
-rwxr-xr-x 1 root root 216 May 15 2014 41_custom
-rw-r--r-- 1 root root 483 May 15 2014 README
=================== //etc/default/grub :
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
/boot/efi detected in the fstab of sda2: UUID=207B-0881 (sda1)
=================== efibootmgr -v
BootCurrent: 001A
Timeout: 0 seconds
BootOrder: 001A,001B,0019
Boot0019* CD/DVD Drive BIOS(3,0,00)..GO..NO........o.T.S.S.T.c.o.r.p. .C.D.D.V.D.W. .S.U.-.2.2.8.F.B....................A...........................>..Gd-.;.A..MQ..L.1.S.H.2.Y.6.F.H.0.5.0.5.8.Z. . . . . . ........BO
Boot001A* ubuntu HD(1,800,100000,61e66b25-0eec-4ca2-8063-6d9218b9a7ee)File(EFIUbuntugrubx64.efi)
Boot001B* Hard Drive BIOS(2,0,00)..GO..NOs.......Q.S.a.n.D.i.s.k....................A.......................$..Gd-.;.A..MQ..L.S.a.n.D.i.s.k........BO
=================== UEFI/Legacy mode:
BIOS is EFI-compatible, and is setup in EFI-mode for this installed-session.
SecureBoot disabled. (maybe sec-boot, Please report this message to [email protected])
=================== PARTITIONS & DISKS:
sda1 : sda, not-sepboot, no-grubenv nogrub, no-docgrub, no-update-grub, 32, no-boot, no-os, is-maybe-EFI, part-has-no-fstab, part-has-no-fstab, no-nt, no-winload, no-recov-nor-hid, no-bmgr, notwinboot, nopakmgr, nogrubinstall, no---usr, part-has-no-fstab, not-sep-usr, standard, not-far, /boot/efi.
sda2 : sda, not-sepboot, grubenv-ok grub2, signed grub-efi , update-grub, 64, with-boot, is-os, not--efi--part, fstab-without-boot, fstab-has-goodEFI, no-nt, no-winload, no-recov-nor-hid, no-bmgr, notwinboot, apt-get, grub-install, with--usr, fstab-without-usr, not-sep-usr, standard, farbios, /.
sda : GPT, no-BIOS_boot, has-maybe-EFI, not-usb, has-os, 2048 sectors * 512 bytes
=================== parted -l:
Model: ATA ST1000LM024 HN-M (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 msftdata
2 538MB 992GB 991GB ext4
3 992GB 1000GB 8467MB linux-swap(v1)
=================== parted -lm:
BYT;
/dev/sda:1000GB:scsi:512:4096:gpt:ATA ST1000LM024 HN-M;
1:1049kB:538MB:537MB:fat32::msftdata;
2:538MB:992GB:991GB:ext4::;
3:992GB:1000GB:8467MB:linux-swap(v1)::;
=================== lsblk:
KNAME TYPE FSTYPE SIZE LABEL
sda disk 931.5G
sda1 part vfat 512M
sda2 part ext4 923.1G
sda3 part swap 7.9G
sr0 rom 1024M
KNAME ROTA RO RM STATE MOUNTPOINT
sda 1 0 0 running
sda1 1 0 0 /boot/efi
sda2 1 0 0 /
sda3 1 0 0 [SWAP]
sr0 1 0 1 running
=================== mount:
/dev/sda2 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /sys/firmware/efi/efivars type efivarfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
/dev/sda1 on /boot/efi type vfat (rw)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=yahya)
=================== ls:
/sys/block/sda (filtered): alignment_offset bdi capability dev device discard_alignment events events_async events_poll_msecs ext_range holders inflight power queue range removable ro sda1 sda2 sda3 size slaves stat subsystem trace uevent
/sys/block/sdb (filtered): alignment_offset bdi capability dev device discard_alignment events events_async events_poll_msecs ext_range holders inflight power queue range removable ro size slaves stat subsystem trace uevent
/sys/block/sr0 (filtered): alignment_offset bdi capability dev device discard_alignment events events_async events_poll_msecs ext_range holders inflight power queue range removable ro size slaves stat subsystem trace uevent
/dev (filtered): autofs block bsg btrfs-control bus cdrom char console core cpu cpu_dma_latency cuse disk dri ecryptfs fb0 fd full fuse hidraw0 hidraw1 hpet input kmsg kvm log mapper mcelog media0 mei mem net network_latency network_throughput null port ppp psaux ptmx pts random rfkill rtc rtc0 sda sda1 sda2 sda3 sdb sg0 sg1 sg2 shm snapshot snd sr0 stderr stdin stdout uhid uinput urandom v4l vfio vga_arbiter vhci vhost-net video0 zero
ls /dev/mapper: control
=================== hexdump -n512 -C /dev/sda1
00000000 eb 58 90 6d 6b 66 73 2e 66 61 74 00 02 08 20 00 |.X.mkfs.fat... .|
00000010 02 00 00 00 00 f8 00 00 3f 00 ff 00 00 08 00 00 |........?.......|
00000020 00 00 10 00 fe 03 00 00 00 00 00 00 02 00 00 00 |................|
00000030 01 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000040 80 01 29 81 08 7b 20 20 20 20 20 20 20 20 20 20 |..)..{ |
00000050 20 20 46 41 54 33 32 20 20 20 0e 1f be 77 7c ac | FAT32 ...w|.|
00000060 22 c0 74 0b 56 b4 0e bb 07 00 cd 10 5e eb f0 32 |".t.V.......^..2|
00000070 e4 cd 16 cd 19 eb fe 54 68 69 73 20 69 73 20 6e |.......This is n|
00000080 6f 74 20 61 20 62 6f 6f 74 61 62 6c 65 20 64 69 |ot a bootable di|
00000090 73 6b 2e 20 20 50 6c 65 61 73 65 20 69 6e 73 65 |sk. Please inse|
000000a0 72 74 20 61 20 62 6f 6f 74 61 62 6c 65 20 66 6c |rt a bootable fl|
000000b0 6f 70 70 79 20 61 6e 64 0d 0a 70 72 65 73 73 20 |oppy and..press |
000000c0 61 6e 79 20 6b 65 79 20 74 6f 20 74 72 79 20 61 |any key to try a|
000000d0 67 61 69 6e 20 2e 2e 2e 20 0d 0a 00 00 00 00 00 |gain ... .......|
000000e0 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
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.
=================== df -Th:
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 3.9G 12K 3.9G 1% /dev
tmpfs tmpfs 787M 1.7M 786M 1% /run
/dev/sda2 ext4 909G 76G 787G 9% /
none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup
none tmpfs 5.0M 0 5.0M 0% /run/lock
none tmpfs 3.9G 28M 3.9G 1% /run/shm
none tmpfs 100M 44K 100M 1% /run/user
/dev/sda1 vfat 511M 3.4M 508M 1% /boot/efi
=================== fdisk -l:
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sda1 1 1953525167 976762583+ ee GPT
Partition 1 does not start on physical sector boundary.
(debug) reinstall grub2 place-in-MBR no-BIOS_boot (sda2)
=================== Suggested repair
The default repair of the Boot-Repair utility would purge (in order to fix packages) and reinstall the grub2 of sda2 into the MBR of sda.
Grub-efi would not be selected by default because: no-win-efi
Additional repair would be performed: unhide-bootmenu-10s
=================== Blockers in case of suggested repair
Please use this software in a live-session (live-CD or live-USB). This will enable this feature. GPT detected. Please create a BIOS-Boot partition (>1MB, unformatted filesystem, bios_grub flag). This can be performed via tools such as Gparted. Then try again.
=================== Advice in case of suggested repair
The boot of your PC is in EFI mode, but no EFI partition was detected. You may want to retry after creating a EFI partition (FAT32, 100MB~250MB, start of the disk, boot flag).
Do you want to continue?
=================== Final advice in case of suggested repair
The boot files of [Linux] are far from the start of the disk. Your BIOS may not detect them. You may want to retry after creating a /boot partition (EXT4, >200MB, start of the disk). This can be performed via tools such as gParted. Then select this partition via the [Separate /boot partition:] option of [Boot Repair]. (https://help.ubuntu.com/community/BootPartition)
=================== User settings
The settings chosen by the user will not act on the boot.
答案1
我有两点建议:
选项1
在 Ubuntu 中,检查该/boot/efi/EFI/ubuntu/grub.cfg
文件。它看起来应该像这样:
search.fs_uuid f8b548e2-4984-47d4-896e-0f47bb753373 root hd0,gpt2
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg
/boot/grub/grub.cfg
此示例告诉 GRUB在 UUID 为 f8b548e2-4984-47d4-896e-0f47bb753373 的分区上查找文件,这是它期望的hd0,gpt2
(即/dev/sda2
)。您应该使用当前信息更新此文件。使用查找当前根 ( ) 分区 ( )blkid
的 UUID并在此配置文件中更改它。/
/dev/sda2
还有一种可能是您遗漏了/boot/grub/grub.cfg
(不要与 混淆/boot/efi/EFI/ubuntu/grub.cfg
,这是我刚刚描述的存根)。如果是这样,应该sudo update-grub
重新生成该文件。
选项 2
如果上述方法不起作用,或者你不喜欢 GRUB,你可以安装我的rEFInd 启动管理器。您可以从其下载页面或者安装 PPA 并执行sudo apt-get install refind
。无论哪种方式,rEFInd 都应该取代 GRUB 成为默认启动程序。rEFInd 比 GRUB 更简单,因此不太可能导致此类问题。当然,无论您当前的 GRUB 配置问题是什么,都不会影响 rEFInd。
除了 rEFInd 之外,还有其他替代方案;请参阅我的这个页面了解列表和我对它们的看法。如果我没记错的话,ELILO 和 SYSLINUX 都在 Ubuntu 存储库中,安装起来可能相当容易,但我最近没有测试过它们。由于您有一个禁用安全启动的单启动安装,因此这些工具应该都能满足您的需求,如果您想要主 Ubuntu 存储库中的某些东西,它们值得考虑。