It was time for me to do the Fall Creator Update to Win10 1709 from my current Win10 1607 installation that i use on my dualboot system together with Fedora 27. And because it is a big update, i decided to do some preparations. I made backups of everything including the disk layout and updated with a flash drive like Microsoft described it here.
The Update itself worked pretty well, after i made sure that Windows is the default UEFI boot entry. No major error and the new Windows features worked immediately.
But: Now Linux was not able to boot.
Usually this is nothing special, it is well known that after big Windows Updates or Installations you have to reinstall GRUB (or whatever bootloader you are using). I am used to this in my >15years of Windows-Linux-Dualboot experience.
But this time it was special.
Lets see what happened… this was the partition layout before the Update (fdisk):
Gerät Anfang Ende Sektoren Größe Typ /dev/sda1 2048 534527 532480 260M EFI-System /dev/sda2 534528 567295 32768 16M Microsoft reserviert /dev/sda3 567296 265443327 264876032 126,3G Microsoft Basisdaten /dev/sda4 265443328 266364927 921600 450M Windows-Wiederherstellungsumgebung /dev/sda5 266364928 268462079 2097152 1G Linux-Dateisystem /dev/sda6 268462080 537234734 268772655 128,2G Linux-Dateisystem
Here the UUIDs of the Linux partitions with blkid:
/dev/sda5: LABEL="Fedora-Boot" UUID="5bed5e31-25a0-4446-8557-285098cc5812" TYPE="ext2" PARTUUID="826dae72-36a5-408a-89f6-8a16e2906fca" /dev/sda6: UUID="64725166-1b67-4393-aa3c-b4097e3c869a" TYPE="crypto_LUKS" PARTUUID="3cc18e74-de0b-4e2e-a906-b7328136f737"
And here the partition layout after the Update (gdisk):
Number Start (sector) End (sector) Size Code Name 1 2048 534527 260.0 MiB EF00 EFI System Partition 2 534528 567295 16.0 MiB 0C01 Microsoft reserved ... 3 567296 264405092 125.8 GiB 0700 Basic data partition 4 264407040 265441279 505.0 MiB 2700 5 265443328 266364927 450.0 MiB 2700 6 266364928 268462079 1024.0 MiB 8300 7 268462080 537234734 128.2 GiB 8300
And the UUIDs of the Linux partitions with blkid (it is sdb because its from a booted live system):
/dev/sdb6: PARTUUID="826dae72-36a5-408a-89f6-8a16e2906fca" /dev/sdb7: PARTUUID="3cc18e74-de0b-4e2e-a906-b7328136f737"
Here we can see that Windows Update shrinked the sda3 partition (Windows C: drive) and created a new Recovery Partition in the resulting space (even thought that we already have one). The Linux Partitions in the Partitiontable did not get touched, their start- and end-sector and PARTUUID are the same. The Linux stuff in the EFI partition is also still present and the Linux Boot entry in the UEFI is still there.
But the UUID, the label and the filesystem type of both partitions vanished. Those information belong to the Filesystem itself and are not part of the partitiontable, they are on the partition itself.
Windows Update destroyed the Linux Partitions. It did overwrite the Filesystem there. The 1GB partition had an ext2 filesystem of /boot and the 128GB partition was an LUKS encrypted partition. Both were wrecked and completely useless now. There was no way to even mount those partitions in a booted live system and no way to repair them (it always complained about brocken superblock and the BackUp superblocks didn’t work either), the data on them was completely lost.
The only way to repair it was with formatting those partitions again and restoring from full backups.