Jedním z důvodů, proč při aktualizaci Windows 10/11 nebo upgradu na Windows 11 dojde k chybě 0x80070003 0x40008 je špatné označení EFI oddílu u GPT rozdělní disku. Základní oddíl má označení ebd0a0a2-b9e5-4433-87c0-68b6b72699c7. EFI oddíl má c12a7328-f81f-11d2-ba4b-00a0c93ec93b.
V mém případě toto vzniklo v důsledku převedení disku z rozložení MBR na GPT a po následném vytvoření zaváděcího oddílu EFI. Jsou případy, kdy k tomu došlo bez zjevného důvodu.
Zjištění ID oddílu GPT
Mámě dvě možnosti, jak zjistit jaké ID má GPT oddíl. První je pomocí správce disků. Pokud u EFI oddílu vidíme Základní datové oddíly (Basic data partition), tak jej musíme převést.
error 0x80070003 0x40008 správce souborů, u EFI oddílu chybně uvedený ID Základní datové oddíly
Nebo v aplikaci diskpart, kterou spustíme z příkazového řádku s oprávněním správce a zadáme
diskpart
list vol
//v dalším kroku vybíráme EFI partition formátovanou na FAT32, např. sel vol 1
sel vol <EFI oddíl>
detail part
error 0x80070003 0x40008 diskpart výpis ID a atributů, na tomto obrázku máme správně nastavené ID i atribut
Následně na oddílu nastavíme správné ID a GPT atribut pomocí příkazů:
set id=c12a7328-f81f-11d2-ba4b-00a0c93ec93b override
//atribut 0x8000000000000000 nastaví, že Windows nepřidělí písmeno disku
gpt attributes=0x8000000000000000
error 0x80070003 0x40008 diskpart změna ID a GPT atributu
A zkontrolujeme, že máme správně nastavené ID a atribut.
//díky vybrání oddílu pomocí sel vol se nám automaticky vybrala i partiton, takže stačí zadat
detail part
//pokud bychom potřebovali vybrat jinou partition, tak seznam partition zobrazíme
list part
//vyběr partition např. sel part 1
sel part <cislo partition>
error 0x80070003 0x40008 diskpart výpis ID a atributů
Další způsoby odstranění chyby 0x80070003
Pokud máte GPT ID správně, tak dle návodů na internetu jde tuto chybu opravit tímto postupem. Návod nemám ověřený, tak pamatujte, že postupujete na vlastní nebezpečí. Je dobré si za zálohovat data a vytvořit bod obnovení:
V příkazové řádce s oprávněním správce spusťte tyto příkazy:
Varianta 1, kratší verze
Zdroj: https://learn.microsoft.com/en-us/answers/questions/925123/unable-to-upgrade-windows-10-to-windows-11-getting
net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver
Ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
Ren C:\Windows\System32\catroot2 Catroot2.old
net start wuauserv
net start cryptSvc
net start bits
net start msiserver
Varianta 2, delší verze
Zdroj: https://answers.microsoft.com/en-us/windows/forum/all/trying-to-upgrade-to-windows-11-error-0x80070003/5ed2b4e0-72c0-46b2-9dbb-2e0b8d40dddd
SC config trustedinstaller start=auto
net stop bits
net stop wuauserv
net stop msiserver
net stop cryptsvc
net stop appidsvc
Ren %Systemroot%\SoftwareDistribution SoftwareDistribution.old
Ren %Systemroot%\System32\catroot2 catroot2.old
regsvr32.exe /s atl.dll
regsvr32.exe /s urlmon.dll
regsvr32.exe /s mshtml.dll
netsh winsock reset
netsh winsock reset proxy
dism /Online /Cleanup-image /ScanHealth
dism /Online /Cleanup-image /CheckHealth
dism /Online /Cleanup-image /RestoreHealth
dism /Online /Cleanup-image /StartComponentCleanup
Sfc /ScanNow
net start bits
net start wuauserv
net start msiserver
net start cryptsvc
net start appidsvc