Problem: lost/zeroed boot partition (I've experienced this ~5 times so far) Solution ("#" at start of command = running as root): 1. Startup Arch Linux liveboot 2. Connect to wifi by running "man iwctl | cat; iwctl" and "iwctl> station wlan0 connect [ssid]" and whatever) 3. # curl -L https://web.archive.org/web/20241122165154if_/https://www.cgsecurity.org/testdisk-7.3-WIP.linux26-x86_64.tar.bz2 | tar -xj 4. cd into that folder with the "testdisk_static" file 5. # ./testdisk_static /dev/sda 6. Go through testdisk's interactive thing, it'll restore the non-boot partition but not the boot partition 7. Maybe reboot so the previously missing /dev/sda1 will show up. 8 Boot partition maybe has to be /dev/sda1 and not /dev/sda2, so move /dev/sda1 to /dev/sda2 9. # sfdisk --dump /dev/sda > sda.bkp 10. # cp sda.bkp sda.bkp.bak 11. # vim sda.bkp 12. Change "/dev/sda1" to "/dev/sda2", save the text file 13. # sfdisk /dev/sda < sda.bkp 14. # fdisk /dev/sda 15. Interactive thing, "n" for new partition should be at the start of sda, like sector 2048 to 618,495. 16 "t" to change type of sda1 to EFI which is number 1 - not sure if this step is necessary. "w" to write partition. 17. For the new/EFI partition you just created: # mkfs.fat -F 32 /dev/sda1" 18. # note: https://superuser.com/questions/1234860 19. Mount HDD root partition: # mkdir /mnt/a # mount /dev/sda2 /mnt/a" 20. Mount live media stuff to HDD root mount: # mount -o bind /dev /mnt/a/dev # mount -o bind /proc /mnt/a/proc # mount -o bind /sys /mnt/a/sys 21. # mount /dev/sda1 /mnt/a/boot/efi 22. # SHELL=/bin/bash # chroot /mnt/a 23. # /sbin/grub-install 24. Exit chrooted environment where /mnt/a was / and /mnt/a/boot/efi was /boot/efi: # exit 25. # shutdown now 26. Remove liveboot medium, power on computer. 27. It should be fixed and boot and everything: worked every time for me.