You are not logged in.

#1 2019-01-31 14:05:21

wombatvvv
Member
Registered: 2016-07-29
Posts: 50

Windows fails to boot after Arch Linux System upgrade

Hi,

I'm in a bit of a pickle here, so any help is very much appreciated.

Anyway, I setup a dual-boot EFI system with Windows 10 and Arch Linux using the beginners guide. Unfortunately, because I can't get FortiClient VPN to work in Arch Linux and nobody seems to have any ideas as to how to fix it (https://bbs.archlinux.org/viewtopic.php?id=243423), I was using Windows to do all my work. I recently updated Arch Linux (pacman -Syu), and now Windows won't boot anymore.

I get a screen saying "Windows failed to boot." and "this maybe due to a recent software update". "Info: the boot configuration for your computer is missing or contains errors".

I'm using systemd-boot as a boot manager. I have one .conf loader file setup, for Arch Linux. It seems to detect Windows by itself without a .conf file (listed under "Windows Boot Manager") on the boot screen. I'm not sure how it got there or how to look at or edit the details.

I don't really even know where to start with this apart from formatting the harddrive and starting again with a fresh Windows install which is a major pain considering I had so much work related stuff installed already. It's not a total disaster if I need to reinstall Windows as I have all my work on a separate partition to the one the OS is installed on, however I wouldn't be able to afford to mess around with re-installing Arch any more, especially considering I can't get FortiClient to work in it, which would be a huge pity as I'd really like to learn how to use it properly. sad

output of "bootctl":

System:
     Firmware: UEFI 2.50 (INSYDE Corp. 22097.4152)
  Secure Boot: disabled
   Setup Mode: user

Current Boot Loader:
      Product: systemd-boot 240 
     Features: + Boot counting
               + Menu timeout control
               + One-shot menu timeout control
               + Default entry control
               + One-shot entry control
          ESP: /dev/disk/by-partuuid/0b75ea60-ef90-48c6-883b-8f3ded4579ae
         File: `-/EFI/systemd/systemd-bootx64.efi
                                                                                                        
Available Boot Loaders on ESP:
          ESP: /boot (/dev/disk/by-partuuid/0b75ea60-ef90-48c6-883b-8f3ded4579ae)
         File: `-/EFI/systemd/systemd-bootx64.efi (systemd-boot 240)
         File: `-/EFI/BOOT/bootx64.efi (systemd-boot 240)

Boot Loaders Listed in EFI Variables:
        Title: Linux Boot Manager
           ID: 0x0002
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/0b75ea60-ef90-48c6-883b-8f3ded4579ae
         File: `-/EFI/systemd/systemd-bootx64.efi

        Title: Windows Boot Manager
           ID: 0x0000
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/0b75ea60-ef90-48c6-883b-8f3ded4579ae
         File: `-/EFI/Microsoft/Boot/bootmgfw.efi

Default Boot Loader Entry:
        title: Arch Linux
           id: arch
        linux: /vmlinuz-linux
       initrd: /intel-ucode.img /initramfs-linux.img
      options: root=/dev/nvme0n1p6 rw

Any ideas?

Thanks for any help.

Last edited by wombatvvv (2019-01-31 14:18:53)

Offline

#2 2019-01-31 14:50:48

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,427

Re: Windows fails to boot after Arch Linux System upgrade

How does the free space on your ESP look? The only way I can think of that this could really lead to an issue similar to what you are describing is if you are close to not having enough space and the kernel write leading to some corruption in your FAT table. If it's just some FAT table corruption, running fsck (with dosfstools installed) on the unmounted EFI  partition might be able to salvage this. If it doesn't you must restore the Windows Boot Loader (there's no need to reinstall the entire system, Windows disks also have facilities to repair the bootloader) however at that point it is no longer an Arch issue and you'll have to look for solutions elsewhere.

FWIW for something that still might be Arch related, if you are having space issues on the ESP and can't easily resize, you could omit the "large" fallback kernel image from being written by adjusting

/etc/mkinitcpio.d/linux.preset

(however there may be certain corner cases where you might be glad to have access to a fallback image) and removing it from the ESP.  Alternatively, remove the kernel images from the ESP entirely mount it at a different place than /boot regenerate the initramfs with

mkinitcpio -P

and use a more sophisticated boot loader like GRUB which will allow you to boot kernel images from more advanced file systems like ext4 and the like

Last edited by V1del (2019-01-31 15:05:04)

Offline

#3 2019-02-01 00:00:03

wombatvvv
Member
Registered: 2016-07-29
Posts: 50

Re: Windows fails to boot after Arch Linux System upgrade

Thankyou for your help, I really appreciate it!!

Unfortunately, I haven't figured out the problem yet.

I had used 70% of the 100MB space that was allocated for my EFI system ESP (is 100M too little for a dual boot system?). I removed the fallback image and now I have used only 41% of the space:

Device             Start       End   Sectors   Size Type
/dev/nvme0n1p1      2048   1023999   1021952   499M Windows recovery environment
/dev/nvme0n1p2   1024000   1228799    204800   100M EFI System
/dev/nvme0n1p3   1228800   1261567     32768    16M Microsoft reserved
/dev/nvme0n1p4   1261568  74631167  73369600    35G Microsoft basic data
/dev/nvme0n1p5  74631168  78825471   4194304     2G Linux swap
/dev/nvme0n1p6  78825472 141740031  62914560    30G Linux filesystem
/dev/nvme0n1p7 141740032 500118158 358378127 170.9G Microsoft basic data


df

Filesystem     1K-blocks     Used Available Use% Mounted on
dev              4016136        0   4016136   0% /dev
run              4023784      852   4022932   1% /run
/dev/nvme0n1p6  30832548  6857412  22385888  24% /
tmpfs            4023784    18184   4005600   1% /dev/shm
tmpfs            4023784        0   4023784   0% /sys/fs/cgroup
tmpfs            4023784        8   4023776   1% /tmp
/dev/nvme0n1p2     98304    40303     58001  41% /boot
/dev/nvme0n1p7 179189060 31287164 147901896  18% /shared-Win10
tmpfs             804756        4    804752   1% /run/user/1000

Next, I booted into the Arch using a USB key and ran fsck on n1p2, but it didn't fix anything.

I suppose now I'll have to create a new Windows USB key and boot with that and run the repair tool from the USB installer?

Offline

#4 2019-02-01 08:09:03

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,659

Re: Windows fails to boot after Arch Linux System upgrade

100MB is the absolute minimum (according to MS) and probably unsuited for multiple OS entries.
The arch installation guide suggests 550MB for the ESP.
You can probably rescue the windows installation by fixing it's bootloader entries from the installation disk, but you won't be able to install/manage multiple OS. So if you intend to install everything over again, pick a larger ESP when re-formating the disk.

Offline

Board footer

Powered by FluxBB