even after selecting windows, nothing is appearing up?
Hi @omnish, sorry for the slow reply. Iâm a bit confused by why you have two Windows entries⌠Is there anything unusual about your system â multiple Windows installations, multiple hard disks, etc.?
Can you try the following steps:
- First, for each item in the menu (Windows, Windows, Endless):
- Use the arrow keys to select that menu item
- Press the
e
key to show a list of commands for that menu item - Take a photo
- Press the
F10
key to try to boot; take a photo of any error messages you see
- Then, try restarting your computer and entering the BIOS/firmware configuration screen (you normally do this by pressing
Del
,F12
, etc. as soon as the computer turns on; on some laptops thereâs a dedicated button)- If you can find this, look for a âBoot Orderâ option or similar. If it has a âWindows Boot Managerâ entry, you can try booting that directly.
- If you have a BIOS rather than EFI firmware, that option wonât be present and weâll have to try some other approachâŚ
If Iâm not mistaken, youâre having a problem with the Windows bootloader. Try booting from a Windows installation disc of the version you have installed (same service pack is important!) and select âAdvancedâ then run Startup Repair. Please let me know what your result is.
For what itâs worth, I have a Windows laptop that I installed Endless for dual-boot, and I also have two Windows entries on the boot menu. I suspect it may have been due to an update on the Windows side. If I recall correctly, I first recovered a Toshiba image of Windows 7, and then I upgraded to Windows 10. (I never actually use Windows on this laptop other than for testing the Endless dual-boot configuration.)
In any case, if I select the first Microsoft Windows entry on the menu (which corresponds to âhd0,msdos2â), I get an error message: âA recent hardware or software change might have installed a file that is signed incorrectly or damaged, or that might be malicious software from an unknown source.â If I select the second Microsoft Windows entry (which corresponds to âhd0,msdos1â), Windows 10 boots fine.
@omnish Have you tried both Microsoft Windows entries?
@wjt Let me know if there is any other information youâd like me to get off my laptop to help understand why some people might be getting two Microsoft Windows entries.
Roddy
@roddy do you remember which version of Endless OS you originally installed on that machine? On BIOS machines, which from the fact you have msdos
partitions I believe your machine is, recent installations should only show one Windows entry because Windows requires (I believe) that only one partition has the âbootableâ flag in the partition table. Itâd be interesting to see C:\endless\grub\grub.cfg
â it might be a little hard to find because we flag all that stuff as hidden + system.
@wjt According to eos-diagnostics, the image was eos-eos3.0-amd64-amd64-160917-205531.base â i.e., version 3.0.3.
It was tricky to find, but here are the contents of grub.cfg:
function load_video {
insmod all_video
}
if [ "x${timeout}" != "x-1" ]; then
if keystatus; then
if keystatus --shift; then
set timeout=-1
else
set timeout=0
fi
else
if sleep --interruptible 1 ; then
set timeout=0
fi
fi
fi
if test "$eoslive" ; then
if test -f ($eoslive)/endless/live ; then
set kparams="$kparams endless.live_boot"
fi
# test for Windows hibernation
hexdump -n 4 ($eoslive)/hiberfil.sys hibr_var
if test ( "$hibr_var" == "HIBR" -o "$hibr_var" == "hibr" ) ; then
set hibernation=true
fi
fi
insmod regexp
for dev in ($bootdev,*); do
regexp -s device '\((.*)\)' $dev
if test "$grub_platform" == "efi"; then
if test -f ($device)/EFI/MICROSOFT/BOOT/BOOTMGFW.EFI ; then
set found_windows=true
menuentry "Microsoft Windows" $device {
set root=$2
chainloader ($root)/EFI/MICROSOFT/BOOT/BOOTMGFW.EFI
}
fi
else
if test ( -f ($device)/bootmgr -a -f ($device)/Boot/BCD ) ; then
set found_windows=true
# Windows Vista or later
menuentry "Microsoft Windows" $device {
set root=$2
chainloader +1
}
elif test ( -f ($device)/ntldr -a -e ($device)/ntdetect.com -a -f ($device)/boot.ini ) ; then
set found_windows=true
# Windows XP
menuentry "Microsoft Windows" $device {
set root=$2
regexp -s devnum 'hd([0-9]+)' $root
if test "$devnum" != "0"; then
drivemap -s hd0 $root
fi
chainloader +1
}
fi
fi
done
if test "$hibernation"; then
menuentry "Endless OS (unavailable)" {
echo -------------------------------------------------------------
echo Endless OS is unavailable whilst Windows is hibernated.
echo Please select Windows and shut down or reboot to use Endless.
echo -------------------------------------------------------------
echo
echo Press ENTER to continue ...
read
}
else
insmod blscfg
bls_import
fi
if test "$found_windows"; then
set timeout=10
fi
set default='0'
RAW Paste Data
function load_video {
insmod all_video
}
if [ "x${timeout}" != "x-1" ]; then
if keystatus; then
if keystatus --shift; then
set timeout=-1
else
set timeout=0
fi
else
if sleep --interruptible 1 ; then
set timeout=0
fi
fi
fi
if test "$eoslive" ; then
if test -f ($eoslive)/endless/live ; then
set kparams="$kparams endless.live_boot"
fi
# test for Windows hibernation
hexdump -n 4 ($eoslive)/hiberfil.sys hibr_var
if test ( "$hibr_var" == "HIBR" -o "$hibr_var" == "hibr" ) ; then
set hibernation=true
fi
fi
insmod regexp
for dev in ($bootdev,*); do
regexp -s device '\((.*)\)' $dev
if test "$grub_platform" == "efi"; then
if test -f ($device)/EFI/MICROSOFT/BOOT/BOOTMGFW.EFI ; then
set found_windows=true
menuentry "Microsoft Windows" $device {
set root=$2
chainloader ($root)/EFI/MICROSOFT/BOOT/BOOTMGFW.EFI
}
fi
else
if test ( -f ($device)/bootmgr -a -f ($device)/Boot/BCD ) ; then
set found_windows=true
# Windows Vista or later
menuentry "Microsoft Windows" $device {
set root=$2
chainloader +1
}
elif test ( -f ($device)/ntldr -a -e ($device)/ntdetect.com -a -f ($device)/boot.ini ) ; then
set found_windows=true
# Windows XP
menuentry "Microsoft Windows" $device {
set root=$2
regexp -s devnum 'hd([0-9]+)' $root
if test "$devnum" != "0"; then
drivemap -s hd0 $root
fi
chainloader +1
}
fi
fi
done
if test "$hibernation"; then
menuentry "Endless OS (unavailable)" {
echo -------------------------------------------------------------
echo Endless OS is unavailable whilst Windows is hibernated.
echo Please select Windows and shut down or reboot to use Endless.
echo -------------------------------------------------------------
echo
echo Press ENTER to continue ...
read
}
else
insmod blscfg
bls_import
fi
if test "$found_windows"; then
set timeout=10
fi
set default='0'
@roddy thanks. So youâre missing the logic to only show one Windows entry on BIOS machines, introduced in 3.0.5. We donât currently update the bootloader or its config after installation, so this is not a surprise.
Unless @omnish installed a really old version of Endless OS in January, I think their issue is separate (probably an EFI machine).