Hi all,
I’m having a bad day and did something colossally stupid, deleting everything from /boot/.
The system is still running. What do you think my best course of action is?
My current idea is to create a timeshift backup, reinstall debian from USB, then restore from backup in timeshift
If this won’t work or you have a better idea I would really appreciate your advice.
Thanks in advance
Your system would continue to work as long as you don’t turn it off. So no matter what you do, keep it on until you restored your /boot
Recovering it should be straightforward, assuming you didn’t put custom files directly to /boot.
Just reinstall the linux kernels using apt. Then manually run
grub-install
with appropriate parameters. Finally, runupdate-grub
orgrub-mkconfig
to recreate the grub config.If the system is turned off, you can use live USB and chroot to it to properly install the kernel packages.
I’ve only ever used grub with bios/mbr or a BIOS/gpt (with grub bios partition).
No clue about efi/uefi.
This is the simplest method I can think of.
The arch wiki, however, is, as always, a great source of info:
https://wiki.archlinux.org/title/GRUB
**Linux is amazing in it’s ability to keep working even when you accidentally all the things.
I once sudo apt removed mint-x-icons or something which, for whatever reason, also needed to remove cinnamon. As in cinnamon the entire DE.
I realised what I had done as I watched the terminal.
#%&@! panic.
…
reinstalled.
joy.Linux is amazing in it’s ability to keep working even when you accidentally all the things.
Annoyingly so. I once made a backup. Then to confirm it would restore the system, I deleted everything on root path. as in /
It did as told.
OK let’s reboot and verify system.
Sudo reboot
Command not found
sudo shutdown
Command not found
But it sat there with a blinking cursor on the terminal
Then to confirm it would restore the system, I deleted everything on root path. as in /
I’m a noob, so forgive me if I’m being very ignorant here, but how on earth could that be a good idea? It sounds like “in order to see if I’ve installed these airbags correctly I shall now crash head first into this concrete bridge foundation at max speed”?
I’m assuming it’s a fresh install, so nothing of value was lost if the restore failed. But also I’ve heard attempting to delete things in
/sys
and/dev
can brick your computer. So it’s not a great idea.I’m not so sure your analogy works. Unless you are testing to see how fast you can bring a new test dummy into production. Or you are testing to see how fast you can install new airbags with blemishes and all.
It gave me a reason to finally run the command that <insert something amazing here> by recursively deleting everything.
It sounded like you were testing the (one and only) backup in a live environment is all.
Not to victim blame but you did put in --no-preserve-root. You had to read those instructions.😄
Can you link me to the commands to reinstall the kernel? Thank you for very much your help[
probably something like
apt reinstall linux-image-...
To find …, run
apt list --installed | grep linux-image
and pick oneEdit: also if need current kernel, can see booted kernel name using
uname -a
Can’t find an article for it at the moment, but I can tell you real quick how I would’ve done it.
Use
aptitude
and look for linux-image-amd64 or something under Installed -> kernel. The exact name might be a bit different.View the package and look under the Version and check out the one that’s marked ‘i’ (for installed). Select that package and mark it to reinstall (shortcut ‘L’).
Then finally execute it (shortcut ‘g’ and then ‘g’ again).
Ok thanks again for all the help.
-
I used aptitude to reinstall the kernel, L, g, g
-
Ran Grub-install /dev/nvme1n1
-
Ran update-grub
-
I installed grub-emu to test and am greeted with this error
https://dump.li/image/get/16c4f87164d630a5.png
Brand new to this tool so apologies if I’m interpreting it wrong.
Still waiting on data to backup but I’m scared to reboot now. Any thoughts?
The boot drive has LUKS FDE if that could be what’s confusing it
Not sure if this is a good way to test as it cannot seem to recognize even the most basic command like linux & initrd.
If I were you, I’d just restart, with a liveUSB ready in case it turns out to be unbootable.
Perhaps just a bit to make sure before rebooting:
- you can see the linux kernel you just installed in the /boot directory
- /boot/grub/ directory exist
- you’re using the correct grub-install command, depending on whether you’re using legacy BIOS or UEFI
Just rebooted and it worked flawlessly!!
You are fucking awesome thank you again. Really made my weekend.
Glad to hear that! You’re welcome!
-
Live CD and reinstall kernel should do it. If it’s only boot, it’ll be as of nothing ever happened to it.
No need to reinstall or start over, that’s wildly overkill. This is Linux, if your data is still there, it’s recoverable.
Ok very happy to hear that, thank you.
I’m not familiar with Debian. On arch you could just run the package manager to reinstall linux (kernel) and run grub-install with all the usual commands.
I use systemd-boot now so I might be rusty on that. I don’t know if it’s faster but it feels faster and I don’t really care about dual booting.
Assuming the boot partition is still there and mounted. Just empty. If it were me I would try to reinstall grub2 and kernel packages. I don’t know what errors I would encounter trying it, so that would be the next hurdle.
Ok thank you. I will sleep on it while data copies. I don’t like my odds but I may learn something in the process.
Try not to reboot.
I was able to keep the system online and follow pastermill’s advice to get it working again!
Already rebooted sucessfully.
It was a lame joke. Glad you figured it out.
Backup ASAP as thoroughly possible and accept you’ll probably need to start over. Schedule backups more often in the future as a lesson learned.
Yes indeed.
I made the mistake of putting my timeshift backup on the same disk as the data and kept having it fill my drive to 0bt and crash plasma. Of course I do something this idiotic the one time it’s disabled