Windows cannot update after manjaro dual boot installation

I used manjaro’s page.

Seems that some of the settings were retained somehow. I had set the default grub option to “2” (i.e. the third option). Before my computer broke that was windows. Now after reinstalling grub windows is no longer detected so option “2” was the memory tester. However, for some reason the menu does not show up and it automatically goes to option “2”.

Somehow I managed to open the menu before it booted into memory tester by MASHING all the keys on the keyboard.

Then when I did login in I did sudo nano /etc/default/grub and found the culprit:

GRUB_TIMEOUT_STYLE=hidden

According to GNU’s documentation, here is why mashing the keys worked:

If this option is set to ‘countdown’ or ‘hidden’, then, before displaying the menu, GRUB will wait for the timeout set by ‘GRUB_TIMEOUT’ to expire. If ESC is pressed during that time, it will display the menu and wait for input

I have absolutely no clue as to why this option was selected. But hey, atleast I can boot into manjaro now. Windows still isn’t detected by grub.

As for attaching images, for some reason this forum doesn’t let me have links or images in my post, so I can’t do that.

I am somewhat technically competant, but how on earth is someone with much less computer related skills able to solve bugs like grub breaking & windows failing to update?

Seems like grub can’t detect windows due to a security patch?

lists(dot)gnu(dot)org/archive/html/grub-devel/2021-03/msg00120.html

I found out about this here:
bugs(dot)archlinux(dot)org/task/69949

You can easily fix this by adding GRUB_DISABLE_OS_PROBER="false" to the grub config file, but surely this makes it even more complex for newer users? Surely, if you are going to disable a feature that is required to allow dual-booting for a “security patch”, you need to add functionality to make dual-booting work first?

By adding the GRUB_DISABLE_OS_PROBER line to my grub file, I think windows should be detected

if windows loader not broken, add the line “GRUB_DISABLE_OS_PROBER=false” to “/etc/default/grub” then run “sudo update-grub”
(chande line “GRUB_TIMEOUT_STYLE” = to “menu” if menu dont want to wait for timer )
if windows loader are broken, restore windows loader - type in safe mode in windows Bootrec.exe /FixMbr ( Bootrec.exe /FixMbr /FixBoot), load in windows to verify correct loading, then reload system, then restore grub from restore grub tool in live-usb installer of linux

Yup. Windows was detected. I found out about that command (GRUB_DISABLE_OS_PROBER) from another reddit post. I just was mentioning how I think it is stupid to just “disable” it due to “security reasons” and provide no alternative to detect windows partitions other than to enable it manually.

As for windows, just tried to boot into it, and I got a “your PC/Device needs to be repaired” with error code 0xc0000225, and it is telling me \Windows\system32\winload.exe is missing.

As for bootrec commands, I am really, really worried about having to do those again…

It literally deleted grub last time.

And now I booted into windows again, I am having the same issue when I moved the partition using gparted. I am presented with a black screen with a few dashed white lines going through the middle, and nothing goes on from there…

I don’t want to run bootrec commands because that will lead me back to square one by destroying GRUB

hard disc naming error? change it from safe mode in windows and windows was run

This isn’t really that clear. I booted from the windows recovery usb stick I have, and ran automatic start-up repair, this didn’t fix anything. It is suggesting to get a Windows VM to run on your USB stick? And the other solution is bcd related commands, which I am worried will delete grub.

link was for example. i writed above:


in link was text of 1 of fixing examples - how to change active partition in problem in partition activiti status, for example

hard disc naming error? change it from safe mode in windows and windows was run

What exactly do you mean?

I tried doing bootrec commands again. Firstly, bootrec /fixmbr worked. (This broke grub). Then, bootrec /fixboot didn’t work, it says volume does not contain a recognized file system, so that does look like a “hard disk naming error”.

EDIT: Grub booted into grub rescue, where I could just did this:

set prefix=(hd0,msdos4)/boot/grub
set root=(hd0,msdos4)
insmod linux
insmod normal
normal

and it worked

EDIT 2: The bootrec /scanOS command (or rebuildBCD command) finds windows on E:/ drive instead of C:/. I am not going to run those commands again (because they break grub), but when I did it before, it did show WIndows on E:/

for me too long and hard translate text and variants, try find in microsoft page all details of xxxx225 error, or find in google text of this error in “How to fix error code 0xC0000225 on Windows 10” 3 variants: activiti chandes, autofix, or repair bcd. you say that repair not work. i say that you can check active status. next you can check bcd fix

https://translate.google.com/translate?hl=&sl=ru&tl=en&u=https%3A%2F%2Fmywebpc.ru%2Fwindows%2Fispravit-oshibku-0xc0000225-v-windows-10%2F

The Windows partition is stored on the E: drive for some reason, so I had to run the command chkdsk E: /f /r. However, this command seems stuck at 6% of files scanned (it has made no progress for like a minute now). So that command doesn’t seem to work.

I got windows running!

It was this command:

bootsect/nt60 E:

followed by

bootrec /rebuildbcd
bootrec /fixmbr

This all worked. I’ll install grub again and see what happens.

Yep! It worked. Installing grub was easy this time, because I knew what to do and the menu wasn’t hidden for no reason.

The reason bootsect/nt60 E: worked (I think) is because it moved the windows partition from E: to C:. Before that command, running bootrec /rebuildbcd would indicate that a windows instalation was found at E:, but after running bootsect/nt60 it indicated that a windows installation was found at C:. After this I could run rebuildbcd and fixmbr fine (although trying to run fixboot returned an “access denied” error.)

Also, Windows seems to update fine, so it seems that giving the extra space to /dev/sda1 was enough. However, there are still some updates that it trying to install from the settings app, so I’ll report back on what happens after that has finished. (Hopefully that works too).

I’m still not satified though. Why did this happen? Is there anyway to bring this up with devs? If so, which devs should I bring it up with?

Also, this solution with reallocating space from the windows partition to the “system partition” was a horrible process, which broke windows and manjaro along the way. Something needs to be done about that, too.

yes. it was error with partition naming from not correct partition resizing. you need to resize partition before installing linux in windows

Thanks, it seems to work well now. I managed to clean up some space too from windows update files.

For me, I think it was the fact that the windows drive was in the wrong location that caused this issue (it was at E: not C:), however I am not sure. Maybe enlarging one of the partitions also fixed the issue.

However, it is likely that the you are experiencing this issue for different reasons.

Here is a outline of what you need to do:

  1. Make sure you have two USB sticks: one manjaro bootable disk and one Windows bootable disk. You probably should externally backup important data (I didn’t lose any data in this process but it is still a good idea for you to do it just in case)
  2. Resize the Windows system reserved partition to have more than 500mb. If you don’t know which one that is, simply resize the one that is near the windows partition and is less than 500mb.
  3. Quite likely, this will make it so that you cannot boot anymore. This is where the USB sticks come in
  4. Boot from the Windows USB Stick, select Troubleshoot device and launch the Command Prompt.
  5. You want to run these commands:
bootrec /fixmbr
bootrec /fixboot
bootrec /rebuildbcd
  1. If this gives bugs, to bootrec /scanos
  2. If the windows installation that is fonud is not on the C: drive, run this command:
bootsect/nt60 <DRIVE-LETTER>

Where drive letter is where your windows partition is located. For example, mine was located at E: so I did bootsect/nt60 E: and this moved the windows partition into the right place.

  1. You should now be able to boot into windows normally if you remove your usb stick (although grub won’t show up). If you can’t, then you’ll probably have to find different commands that work for you. Read through this thread, there are lots of different methods and commands I tried before I found that bootsect/nt60 worked for me. You might want to try all these different methods.

  2. Now, if you can boot into windows normally, you need to boot from the manjaro bootable USB stick.

  3. You need to reinstall GRUB. There is a guide called “restore the GRUB bootloader” on the manjaro wiki.

  4. Here is a rundown of that guide:
    NOTE: This is only for BIOS systems (most common type of system). If you have an EFI system you will need to follow the guide on the manjaro wiki instead.
    When you are in your manjaro bootable usb , open the terminal and enter root:

sudo -i

Then run this:

manjaro-chroot -a

This will automatically mount things for you.
Then run

pacman -Syu grub

NOTE: If there are multiple GBs of updates that need to be installed, you your usb stick doesn’t have that much space, do pacman -S grub . This is less safe but may be necessary if your usb stick cannot store all the updates. Only do this command if the first one (pacman -Syu grub) did not work.

Then install grub:

grub-install --force --target=i386-pc --recheck --boot-directory=/boot /dev/sdy
  1. The following steps need to be followed even if you have an EFI or BIOS system. This is not mentioned on the manjaro wiki’s restoring grub guide.
    Run
sudo nano /etc/default/grub

This willl open the grub configuration file. MAKE SURE these settings are present at the top of the file (if they have different values, change the values to the ones shown below):

GRUB_TIMEOUT_STYLE=menu
GRUB_DISABLE_OS_PROBER="false"

If the GRUB_DISABLE_OS_PROBER is not set to false then Windows won’t be detected.

Then generate the config file like this:

sudo update-grub

Finally, you should be able to boot into grub, and access both manjaro and windows!

You may have problems with grub. In this thread I had then too and outlined how to solve them
You should be able to boot from grub now and access both windows and linux.

Hopefully this solution helps someone.

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.