Windows 10 update changes partition table and breaks GRUB

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.windows10_upgrade_dec2015_breaks_grub

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/ 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
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 and the GRUB menu should be fixed. Now safely choose to continue the Windows 10 upgrade.

Upgrade to Windows 10 on dual-boot systems

Upgrading Windows 10 on a dual-boot system is not that easy. After fetching KB3035583 and KB2952664 and reserving my upgrade copy on Windows 7 Professional x64 the setup still said “Something happened. We can’t tell if your PC is ready to continue installing Windows 10. Try restarting setup.”

The reason for this seems to be dual-boot installations only. First off, change the default boot entry to Windows.

windows7_mark_partition_as_activeAfterwards I did not want to override Grub with my Fedora 22 installation, but was looking into alternative solutions for error 800703ed. This tip about marking the C: partition as active partition did the trick – the Windows Update is now downloading Windows 10.





Getting ready for installing my Icinga 2 development environment 🙂

Change default boot entry in Grub2 on Fedora 22

Upgrading Windows 7 to 10 does not like dual-boot systems where Windows is not the default (likely due to automated reboots during upgrade). In order to fix this problem, we’ll need to change the boot order (or, the default entry).


# grep "submenu\|^\menuentry" /boot/grub2/grub.cfg | cut -d "'" -f2
Fedora (4.1.6-200.fc22.x86_64) 22 (Twenty Two)
Fedora (4.1.3-201.fc22.x86_64) 22 (Twenty Two)
Fedora (4.1.3-200.fc22.x86_64) 22 (Twenty Two)
Fedora, with Linux 0-rescue-46724b4128e8471db41e1e7efe9c8aeb
Windows 7 (loader) (on /dev/sda1)
Windows 7 (loader) (on /dev/sde1)

# grub2-editenv list
saved_entry=Fedora (4.1.6-200.fc22.x86_64) 22 (Twenty Two)

# grub2-set-default "Windows 7 (loader) (on /dev/sda1)"
# grub2-editenv list
saved_entry=Windows 7 (loader) (on /dev/sda1)

Adventures with Windows 10 Upgrade

Holiday season means calming down from daily work, being offline whilst enjoying family and friends in Austria. Some stuff I normally do as well after relaxing a bit – fix their hardware and software.

I’ve been digging into Windows 10 updates lately with Virtualbox, and decided to give it a go with the current rather old hardware. There’s a mix of Windows 7 and 8 home and professional installations around on HP, Lenovo and Acer notebooks. All of them remain slow, sometimes bloated with lots of unwanted software and startup injections.

At first glance, I had the pleasure to fix the HP Protect Tools Security Manager and their fingerprint “security” for USB sticks even. Some glitch prevented the user question asking for authorization so usb sticks remained unreadable. Other than that the HP Probook 450 G0 was not much to prepare to the Windows 10 Upgrade (the connection manager was already removed causing trouble with wifi connections and hibernation in the past).

The “get windows 10” application only let reserve the upgrade (and also fails in Virtualbox not detecting the hardware properly), and being tired of enforcing the updater with a script, I just used the media creation tool to create an ISO file. This is good for 2 reasons: First, you can just burn a recovery media and second, mount it inside the operating system and run the Windows 10 setup wizard.

windows10_infoThere’s two options you’ll get: Windows 7 Ultimate/Enterprise turns into Windows 10 Professional, while Windows 7/8 Home will be upgraded to the Windows 10 Home edition.
Note: You’ll need to open the link to the Media CreationTool on your Windows platform! Otherwise you’ll directly get the ISO download – which works in this case too, but the creation tool also allows you to just download the setup files and run the installer without iso creation.

Reading about Windows 10 being incompatible with HP Security Tools, and only some Windows 8.1 with latest BIOS update working I decided to remove this bloated software collection. Note: HP Security Tools have quite a lot of dependencies, you’ll need to uninstall them one by one from the system’s control panel before actually removing the security tools.
Furthermore I’ve upgraded all drivers using the HP SoftPaq Client manager – that way you’ll fetch all required updates automatically instead of downloading them one by one from the support website.

windows10_info_centerLenovo’s G585 worked pretty well with Windows 8.1 already, only had to remove the start menu addons after upgrading to Windows 10 as there’s a better implementation now being shipped natively again. Windows 10 also integrates a better notification system on the right side, and re-adds the native desktop after login.

windows10_updates_p2pOne thing next to the “send them all information” thingy you may opt-out right after install I really don’t like is the idea to use the client’s upstream bandwidth for sharing Windows updates. This becomes a pain fast with not-so-fast connections over here in Austria/Germany. Navigate to “Settings” – “Update & Security” and choose “Advanced Settings” with “Choose how updates are delivered”. Tick off “From more than one place” (more here).

The Acer Aspire 5250 upgrade process with a clean system is pretty much a pain: being a multimedia streaming suite slows down boot time and eats memory, AMD Quick Stream provides “quality of service” for end user’s internet connection (aka unwanted traffic shaping and connection losses) … apart from the usual suspects sitting in your autorun. Going in the hard way with HiJackThis, Spybot Search & Destroy, AdwCleaner and Anti-Malware. CCleaner does not necessarily help as registry fixes won’t be needed later on with Windows 10 – only a clean system is required before doing an upgrade. Analyzing the startup process was also required but I already removed the real bottlenecks before.

windows10_upgrade_setup_updateApart from cleaning up the software mess, Windows Update ran into “WindowsUpdate_800040040” which led to the Windows Update Troubleshooter. Luckily the Windows 10 setup does not care much, but proceeds to fetch its own updates. Although the first and second check for updates takes pretty much time (over 2 hours now), so get yourself something else to do in the meantime.

Driver updates were not necessary as Acer does not provide any recent drivers for the Aspire 5250, and Windows 10 obviously ships its own more recent versions for such hardware. Removing the “Acer Updater” application is therefore also safe, as it can be removed to autorun as well.

Windows 10 goes the app way even more – several applications such as media players or games are now external apps to pay for (or at least have in-app payments) unless you had them installed before. Luckily there are open source alternatives such as VLC as media player or 7zip for archives 🙂

windows10_start_task_managerSince Windows 10 runs smoothly and solves plenty of my “remote” problems (even a nicer task manager), it is safe to finally install Teamviewer 10 everywhere before leaving Austria again 😉