I’d suggest burning an ISO of Linux (really just about any live Linux) and familiarizing yourself with concepts like mounting filesystems, partitioning, GRUB/U-Boot and the like.
I’d recommend trying the following in this order (easy to most difficult):
Scan your boot device’s (hard drive) filesystems for errors with fsck and repair any errors it finds. If errors were found, reboot and see if the problem has gone away.
Check the boot device’s /boot partition. You’re going to be using any combination of fdisk, parted, lsblkid to figure out which partition is /boot, mount its filesystem, then move on to harder stuff.
“Harder stuff” is going to be finding out if the kernel is botched, and praying that an older one is available and figuring out how to boot from it. If there isn’t an older one, there’s a chance you can search for packages from your distro that include the kernel — I’d try to find an exact filename match and copy it over the existing one but maybe only after backing it up first.
This is where GRUB knowledge comes in handy and unfortunately where my advice ends, because personally I’m inexperienced in this area.
Another option which might be a lot easier (if you know what you’re doing) is reinstalling the OS completely after backing up everything.
Or, if you’re lucky your /home directory was created in its own filesystem in its own partition. Provided you set that up again without destructively destroying/partitioning it while installing the OS again you could very easily get a clean install with all your user-level apps’ preferences, downloads, etc. preserved.
Edit: Taking a look at your GitHub screenshot, my guess is that the three Linux-related lines on the boot screen are different kernel versions. It makes me think there was a botched update to your /boot partition (just because the names are exactly the same) though I could be wrong there.
It’s strange you have a Windows boot option if you don’t have Windows, but it would make sense if the Windows bootloader was there when elementaryOS was installed and the drive hadn’t been completely wiped beforehand.
I used the “wipe everything” option when installing elementary. Thanks for your help, but that was my initial problem, I am traveling and don’t know how to get a bootable medium here, at home I used my other PC to create it :/
I’d look at trying to get into the GRUB shell, assuming that the screen is indeed GRUB. From what I can find online it would be the C key. Are you familiar with CLI commands? It seems like it’s pretty full-featured.
I’m kind of wishing I understood UEFI better, but I mainly run Linux on arm64 devices. Are you sure that’s the BIOS/UEFI? To me it seems strange that it would be smart enough to know about the different OSes but I’m probably wrong. 😞 It looks like a customized GRUB to me.
Yeah it’s some kind of Lenovo thing. Went to a repair shop they changed the HDD because the old one was apparently dead and installed Windows because they don’t have anything else. I haven’t even used Windows ever.
Does Windows boot? I know it’s not ideal but since you’re unable to boot into a Linux ISO you could consider running the filesystems checks from Windows. I’ve never done something like that but I know tools like Paragon exist. I’m not sure if WSL would be capable of checking them, but that could be another option (I haven’t used Windows in years).
I’d suggest burning an ISO of Linux (really just about any live Linux) and familiarizing yourself with concepts like mounting filesystems, partitioning, GRUB/U-Boot and the like.
I’d recommend trying the following in this order (easy to most difficult):
fsck
and repair any errors it finds. If errors were found, reboot and see if the problem has gone away./boot
partition. You’re going to be using any combination offdisk
,parted
,lsblkid
to figure out which partition is/boot
, mount its filesystem, then move on to harder stuff.This is where GRUB knowledge comes in handy and unfortunately where my advice ends, because personally I’m inexperienced in this area.
Another option which might be a lot easier (if you know what you’re doing) is reinstalling the OS completely after backing up everything.
Or, if you’re lucky your
/home
directory was created in its own filesystem in its own partition. Provided you set that up again without destructively destroying/partitioning it while installing the OS again you could very easily get a clean install with all your user-level apps’ preferences, downloads, etc. preserved.Edit: Taking a look at your GitHub screenshot, my guess is that the three Linux-related lines on the boot screen are different kernel versions. It makes me think there was a botched update to your
/boot
partition (just because the names are exactly the same) though I could be wrong there.It’s strange you have a Windows boot option if you don’t have Windows, but it would make sense if the Windows bootloader was there when elementaryOS was installed and the drive hadn’t been completely wiped beforehand.
I used the “wipe everything” option when installing elementary. Thanks for your help, but that was my initial problem, I am traveling and don’t know how to get a bootable medium here, at home I used my other PC to create it :/
I’d look at trying to get into the GRUB shell, assuming that the screen is indeed GRUB. From what I can find online it would be the C key. Are you familiar with CLI commands? It seems like it’s pretty full-featured.
It seems like this is the BIOS boot menu, not grub. Doesn’t even seem to get to grub.
I’m kind of wishing I understood UEFI better, but I mainly run Linux on arm64 devices. Are you sure that’s the BIOS/UEFI? To me it seems strange that it would be smart enough to know about the different OSes but I’m probably wrong. 😞 It looks like a customized GRUB to me.
Yeah it’s some kind of Lenovo thing. Went to a repair shop they changed the HDD because the old one was apparently dead and installed Windows because they don’t have anything else. I haven’t even used Windows ever.
Does Windows boot? I know it’s not ideal but since you’re unable to boot into a Linux ISO you could consider running the filesystems checks from Windows. I’ve never done something like that but I know tools like Paragon exist. I’m not sure if WSL would be capable of checking them, but that could be another option (I haven’t used Windows in years).
Thanks for all the help, really appreciate it. Took it to a repair shop and they replaced the HDD, old one was broken, and installed Windows on it.
Ohh, gotcha. You’re welcome!!