- cross-posted to:
- technology@lemmy.zip
- cross-posted to:
- technology@lemmy.zip
20240520 UPDATE: I just ran winupdate on an ancient win10 surface and after the same 643 error two more times, and running through all the available updates, it’s now reporting I’m up to date. yippee.
I guess the latest update finally fixed it, at least on the Surface.
Anyone tried and succeeded? Not too awful plodding through the resizing? Tips to avoid destroying a partition and having to reinstall the os?
Waow. MS can’t decide if their users should have control of their hardware or not.
Your linux bootloader and efi config? That belongs to Windows, and it will make changes as much as it wants. A recovery partition that has no usefulness outside their own ecosystem? Yeah, they know it’s fucked, and they fucked it, but it’s your computer, you fix it!
Simple. It’s theirs when it works and yours when it doesn’t.
Their when it works and it’s profitable.
Not dickriding microsoft here, but they have provided all the tools to fix this. They just can’t make them happen automatically on effected machines because they broke something particularly complicated.
You need to have enough space to resolve the issue (which was caused by not having enough space in the recovery partition in the first place). You need to adjust the size of the parition (traditionally a risky operation, especially through Windows). You then need to download a specific update while skipping another, install, and reboot.
They have provided scripts for backing up the recovery partition, expanding it, and restoring the contents from backup if expanding fucks the contents. They have provided a script to download and install the specific update to fix the problem once you have enough space in that paritition. They did not automate restarting the computer (piss easy to automate), or to hide the problematic update (easy through UI, probably a pain to script).
I agree that if there was enough space in the recovery partition to begin with, this wouldn’t be a problem, but the user isn’t the party that specified that size or the party that decided to add enough stuff to the recovery partition to exceed that spec.
MS knows that this is a widely-deployed configuration (they deployed it), but they’re going ahead with an automatic update that is incompatible with that configuration anyway, failing to communicate to the user why the failure occurred, and refusing to automate a fix to the thing their automation broke in the first place.
But the partition is Microsoft’s own, basically no one has ever touched it themselves. So why can’t they do some housecleaning to make enough space? At the very least, they could fix the error messages to be more descriptive on how to fix it.
The tin-foil in me says it’s just a tactic to get people to switch to Windows 11. “Oh, I have errors with my updates? I should really try upgrading and see if that fixes it, I don’t want any hackers to steal my megabytes…”
A recovery environment is overrated under Windows. Just backup your files and reinstall from scratch.
I’ve been using windows since windows 3. The number of times I’ve used the “recovery” feature is exactly zero.
Edit: Corrected by another user below. I have used it a couple times for update rollbacks, I just haven’t used it for a full recovery. When I’ve run into serious issues I just reload it from scratch, as I keep data and OS on completely separate drives.
The number of times I’ve used the “recovery” feature is exactly zero.
The RE Partition is for more than Recovery. If you’ve ever uninstalled an update then you’ve used the RE Partition.
Very good point! Then I have used it.
In this case I’m happy I always installed Windows without RE partition. It works fine and you can still uninstall updates. Broken system files can also be replaced by a fresh pull from Windows Update.
Lucky for you! Twice over the years I have had Windows 10, the system failed to come back up after a windows update and the ability to uninstall the most recent update through the recovery partition saved me.
It recovers in the background with no user intervention when things go wrong.
It’s more than strictly a recovery partition. It is also used for updates and the files needed to roll individual ones back. The entire issue was that they had an update that didn’t properly handle when there wasn’t enough space for it in the recovery partition.
Yeah, I have it turned off on all my machines (mostly because of that vulnerability a few months ago).
I have never been in a situation where it was useful, nor have I ever had it work when I tried it.
I have run the script with mostly success. A few computers had the script fail because WinRE was corrupt, or missing, or whatever. You would think that if WinRE wasn’t present, the update would be skipped and not repeatedly notify you that it failed, but that’s Microsoft for you.
Anyone tried and succeeded?
Shiiit, I have a powershell script for this. Takes 90 seconds or less to fix it on systems with an SSD. Takes 2-3 minutes on HDD systems. I’ve done hundreds of times since the January 2024 update.
Care to share?
You can literally copy / paste either of these commands into an elevated Powershell session. They create the directories needed, go fetch the script from Github, then execute it with the necessary arguments. I’ve run this on Windows 10, Windows 11, and all Windows Server versions from 2016 through 2022.
This is a “Confirmation” version. It will stop and prompt you before actually changing anything.
[System.IO.Directory]::CreateDirectory(“C:\winrebackup”); [System.IO.Directory]::CreateDirectory(“C:\tcmds”); cd c:\tcmds; Invoke-WebRequest -Uri https://raw.githubusercontent.com/Bash-OverRide/UseFulScripts/master/winre.ps1 -OutFile ./winre.ps1; dir; ./winre.ps1 -BackupFolder c:\winrebackup
This is a “No Confirmation” version. If the WinRE partition needs expanded it will just do it.
[System.IO.Directory]::CreateDirectory(“C:\winrebackup”); [System.IO.Directory]::CreateDirectory(“C:\tcmds”); cd c:\tcmds; Invoke-WebRequest -Uri https://raw.githubusercontent.com/Bash-OverRide/UseFulScripts/master/winre.ps1 -OutFile ./winre.ps1; dir; ./winre.ps1 -SkipConfirmation $true -BackupFolder c:\winrebackup
You may see a reboot warning if you have un-applied Windows Updates. In nearly all cases you can safely ignore the warning but the decision is up to the user.
If it fails with an error about insufficient space to resize the partition and your storage isn’t full then it’s likely that you have immovable files at the end of the primary partition. Turn off Hibernation and System Restore, which will remove those files, then reboot and try again. Remember to turn Hiberation and / or System Restore back on when done. I’ve only seen that happen a couple of times which is why it’s not scripted in, just wasn’t worth the effort.
I’d done this some time ago via console.
My RE partition had sat before my main partition - and since you can’t shrink partitions at their start (left) with fdisk and I didn’t want to boot up a Linux pen drive, I just shrank the main partition at its end (right) and moved my RE partition to the now freed space at the end.
I’ve made the old RE partition available, but since it’s just a few hundred MB, I doubt I’ll ever actually use it. :-P
PS: If you do it via fdisk, just make sure you first enable the new RE before disabling the old RE. Otherwise there’s nothing that can be copied to the new RE - I’ve made that mistake and had to get the missing files from a Windows ISO.
I have done this multiple times on servers. It’s beyond simple and doesn’t take but a few minutes. Follow the instuctions and you’re gold.
Edit: In short, you use diskpart to resize the boot partition down, then use diskpart again to resize the recovery partition up with the space you created in step one.
Or you just runs the ps script provided by Microsoft. 1 line. No clue why they can’t do that themselves for affected systems…
Change board says no
You could just free up space in the recovery partition
I did all this lovely manual bs to get rid of an update error about a year ago. This one I just said “fuck it” and have left it ignored. I don’t get on windows often enough anymore to waste my time on it. About all it gets fired up for is when my kid wants to play fortnite with me.
I was able to fix it using a free open source download called “Mint”. In fact, Mint permanently solved all of my Windows problems!
Have run their provided script on one device and it worked like a charm. Think it was this one.
My recovery doesn’t work and I don’t know why and since when, so it’s a sorta of non issue for me.
I did this ages ago now. Was a non-issue.
Edit: To clarify, I’m not endorsing MS on not fixing this. Just saying I did it and had no issues.
deleted by creator
I just cleaned the entire partition with disk cleaner and manual deletion of the files.
Tips to avoid destroying a partition and having to reinstall the os?
Start with a file system that doesn’t suck, like ext4, bless the drive with a boot loader that doesn’t suck, like Grub, and then get yourself a kernel that doesn’t suck, like GNU/Linux, then get yourself a software stack that doesn’t suck, like Arch.
I use Arch, BTW.
OP asked “how can I accomplish goal X?”
You responded “Goal X sucks, you should accomplish goal Y instead!”
That’s not exactly useful.
They can avoid needing to repeatedly reinstall the OS by selecting a more stable OS.
Arch is not a more stable OS.
No, not Arch. But maybe Mint.
Yeah, I would second the Mint rec.
They don’t need to reinstall the OS to resolve this issue though, unless they absolutely fucked their paritions.
Which is why Microsoft couldn’t automate a fix. It’s incredibly easy to fuck your partitions to hell and back, especially through Windows. Too many conditions to check for and try to handle automatically.
It’s incredibly easy to fuck your partitions to hell and back, especially through Windows.
Fun fact: Windows won’t allow you to delete any EFI partition (that is the only one I know of/tried) unless its through
diskpart
with a specific override/force option.But then again, I somehow nuked my recovery partition by accident at some point as well.
And if they’re having trouble with their car they could just hire a taxi. But they’re trying to fix their car so telling them to hire a taxi is useless advice.
They said OS, not Windows.
Removed by mod
bless the drive with a boot loader that doesn’t suck, like Grub
Ah yes, I need a whole separate OS just to boot my actual OS…
I would in no world call GRUB a bootloader that doesn’t suck.