It’s holiday season and so I got a hold of playing some games longly missed on Windows. Booting Windows 10 certainly unveiled several pending updates (Antivirus, Geforce, Windows updates). Since Windows 10 does not explicitly tell about big updates anymore I just did let it reboot several times, waiting for manual grub selection then.
Though this time the update essentially broke GRUB. “error: unknown filesystem. Entering rescue mode…” is certainly not what I expect from a Windows 10 update. After googling a bit I found this thread including an explanation as well as a solution for the problem: The Windows 10 update adds yet another hidden partition, but essentially rewrites the partition table which then breaks GRUB finding the correct /boot partition containing grub2/. Congrats Microsoft!
So, Windows 10 “Upgrade to Windows 10 Home, version 1511, 10586” breaks grub2 because boot block grub2 still thinks it should boot grub2 from (hd0,msdos2) when it now needs to boot from (hd0,msdos3).
The solution is simple but nasty without bash-completion and English keyboard layout on a German keyboard.
First find the boot partition containing the grub2/ directory.
grub rescue> ls (hd0,msdos1)/grub2 error: unknown filesystem. grub rescue> ls (hd0,msdos2)/grub2 error: unknown filesystem. grub rescue> ls (hd0,msdos3)/grub2 ./ ../ themes/ device.map i386-pc/ locale/ fonts/ grubenv grub.cfg
Next set the changed boot prefix and root attributes:
grub rescue> set prefix=(hd0,msdos3)/grub2 grub rescue> set root=(hd0,msdos3) grub rescue> set prefix=(hd0,msdos3)/grub2 root=hd0,msdos3 grub rescue> insmod normal grub rescue> normal
Change from “rescue” to “normal” GRUB mode, and quickly select Fedora from the boot menu. In order to fix GRUB log into Fedora, open a terminal and become root. Now generate a new grub configuration.
sudo -i grub2-mkconfig -o /boot/grub2/grub.cfg grub2-install /dev/sda reboot
Reboot and the GRUB menu should be fixed. Now safely choose to continue the Windows 10 upgrade.
Thanks, your post helped me out when I updated today!
I followed the above mentioned steps. However for all of the listed partitions at the grub rescue menu none of them had the boot partition. What should I do now?
I would investigate further if there are additional partitions/hard disks. Maybe even with a Linux live cd and fdisk/gparted. Hopefully Windows didn’t kill your Linux system entirely.
you got solution to your problem, I’m also facing same problem and none of the partition has grub.cfg file.. plzz reply
Absolute life saver. Your advice was spot on. This page has now been book-marked!
Cheers.
I thought I’d just clarify what happened to me, as it wasn’t because of a Windows upgrade.
I had already installed Win 10 alongside Fedora – no problems. A few months later, I needed to add a D drive to my Win 10. I did this using a tool called EaseUS Partition Manager. All good until my PC rebooted – that’s when I encountered grub rescue. However, following the instructions on this page, I was able to boot up again and both OSs were fine and working as normal.
My next steps are to do a little more Grub research – it’s an area of expertise that I lack! 🙂
Thanks again.
Almost ecactly the same issue. I should also research now. Again many thanks to the fix originator
absolutely worked….lots of thanks!!
Thanks so much, great fix.
Thank you!
Thanks for the solution,
for those like me using Linux mint 18 (no uefi) with grub (not grub2). I found the grub.cfg file in /boot/grub.
also the bootloader doesn’t has to be on /dev/sda (mine was on sdb).
Thanks man! You saved my day!
I was so pi**ed when the update broke my PC, I wanted to throw everything out of the window. But thanks to guys like you I could leave it intact 😉
Hey! Just here to say thanks, a very good solution. My usual approach would be via a livecd, much slower and painful.
Cheers!
Thank you for your great solution. I had a broken grub after updating WIN 10 (creators update). I have a dual boot with Antergos and WIN 10. I found the grub.cfg file in /boot/grub not in /grub2.
Thanks again!
Nice. 1 more reason to stop using “Windows.” Fixing this kind of B.S. is one thing, but it’s this kind of nonsense that makes me want to remove windows from my HD and never look back. MS thinks they own my HD now. What a joke. FU MS!!!
Is there any way to prevent this from happening again? It is 2020 now, and this just happened to me after a Windows 10 update. It cost me the entire evening, and I have important deadlines in the next days.
I have for now disabled Windows updates until I know how to prevent this from happening again.