You are not logged in.
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. ![]()
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 rwAny ideas?
Thanks for any help.
Last edited by wombatvvv (2019-01-31 14:18:53)
Offline
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 -Pand 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
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/1000Next, 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
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