0

The boot repair log is here. It shows fixed successfully, but next time when I start the pc,it's still the same.

Run sudo grub-install /dev/sda, it shows grub-install: error: failed to get canonical path of /cow.

Other info:

  • Ubuntu is the only operating system in the computer.
  • For command fdisk -l, it shows the following.
  • sdb1 is the usb to install the ubuntu. It seems that the boot is installed on usb.

    Device         Start       End   Sectors   Size Type
    /dev/sda1       2048    487423    485376   237M EFI System
    /dev/sda2     487424  16488447  16001024   7.6G Linux swap
    /dev/sda3   16488448  76488703  60000256  28.6G Linux filesystem
    /dev/sda4   76488704 976771071 900282368 429.3G Linux filesystem
    /dev/sda5  976771072 976773119      2048     1M BIOS boot
    
    Disk /dev/sdb: 3.7 GiB, 4004511744 bytes, 7821312 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: dos
    Disk identifier: 0x0053722e
    
    Device     Boot Start     End Sectors  Size Id Type
    /dev/sdb1  *     2048 7821311 7819264  3.7G  c W95 FAT32 (LBA)
    

    Anyone has any ideas? Many thanks.

  • You seem to have a mismatch between EFI and MBR... How did you install this? – Fabby Nov 05 '16 at 14:53
  • @Fabby Hi, I used the usb and selected the "erase to install ubuntu" option. At first, there is no sda1 option, but boot repair suggested to create a EFT partition. Also the sda5 is created based on the suggestion of boot repair. Now I'm really confused. Could you please explain it in detail? Thanks. – user3950224 Nov 05 '16 at 15:07
  • As you seem to have only Ubuntu on your system, I would go to the BIOS, remove EFI and reinstall using MBR only... No need to have UEFI at all... – Fabby Nov 05 '16 at 15:33
  • I would keep gpt. With bios_grub partition you can install grub in BIOS mode. Or with UEFI you can install grub in UEFI boot mode. Boot-Repair can do either with an un-install/reinstall of grub. But how you boot install media UEFI or BIOS is then how it default installs. Some brands only want to boot by description and only valid description is "Windows boot Manager". One UEFI work around is to not use ubuntu as description to boot but use Windows description but really boot grub.http://askubuntu.com/questions/486752/dual-boot-win-8-ubuntu-loads-only-win/486789#486789 – oldfred Nov 05 '16 at 16:03
  • Thank you so much guys. I finally solved the problem with the information provided by @oldfred. Because my computer is HP and it will always search for the windows. So as the instruction, I created the microsoft and Boot folder then copy all of the files from ubuntu folder in thoes new folder. Then worked! Maybe oldfred, you can put your answer below, so I can accept it. – user3950224 Nov 05 '16 at 19:02

1 Answers1

1

HP does not like to be UEFI boot friendly. It violates UEFI specification that says not to use Description as part of boot. And of course only valid description is "Windows Boot Manager". But there are multiple work arounds.

Most with HP and dual booting can copy /EFI/ubuntu/shimx64.efi to /EFI/Boot and then rename shimx64.efi to bootx64.efi. That should allow boot of fallback or hard drive boot entry. Some have to add a new entry into UEFI.

Some HP do have a way to change settings, but buried pretty deep.

https://ubuntuforums.org/showthread.php?t=2332681&p=13527216#post13527216

Boot-Repair now copies shimx64.efi to bootx64.efi and backs up an existing bootx64.efi if you check 'Use the standard EFI file' in advanced options.

https://help.ubuntu.com/community/Boot-Repair

If Windows is only operating system you can use "Windows Boot Manager" description but specify that that entry uses shimx64.efi to boot.

If ESP is sda1, see man efibootmgr for added parameters when ESP is not default sda1.

    sudo efibootmgr -c -L "Windows Boot Manager" -l "\EFI\ubuntu\shimx64.efi"
oldfred
  • 12,100