Any and all help would be so greatly appreciated. I’ve been battling with my laptop to be able to dual-boot Ubuntu Cinnamon and Windows 10 for about four days now. I’ve probably gone down five or six different rabbit-holes of troubleshooting, GRUB command-line fun, reinstalling and updating the BIOS, trying and failing to deal with VMX and locked NVram. As of now, my system boot-loops and fails to run Windows, but paradoxically I am able to get Ubuntu running, which is what I am using now.
I’ll try to provide as much relevant information here as I can:
- Device: HP ZBook 17, gen 6
- Primary OS: Windows 10 Home
- Linux distro: Ubuntu Cinnamon 23.10
- Ubuntu location: /dev/sda3
grub-install --version
= 2.12~rc1-10ubuntu4- boot-repair Boot-info summary: https://paste.ubuntu.com/p/rxZ3D5GtpP/
- I’m more than happy to provide more information as it’s requested.
As of now, I am unable to run Windows through the BIOS. If I run via the dedicated SSD as I normally do, it boot-loops, and if I try to go through any other drives it just tells me I need to install an OS. I am currently able to run Ubuntu, but only by going through the following process:
- Startup menu
- Boot configuration
Boot from EFI > Ubuntu > shimx64.efi
At this point, I am happy with two outcomes to this scenario:
- I am able to run my laptop with Windows 10 as the primary OS, with the ability to dual-boot to Ubuntu Cinnamon 23.10.
- Assuming option 1 is impossible/requires a Herculean amount of work to pull off from this state, I am willing to scrub Windows 10 from my laptop and move forward with Cinnamon as my daily driver, though I am rather inexperienced in it. I can learn to move forward as I need to and run a VM or WINE for any Windows-specific processes I still need to do. But I would rather keep this option as my dead man’s switch.
Imo at this point you’re better off just nuking everything (after you backed up your important files) and reinstalling with the following process:
- Install windows, with the linux drive removed
- Plug linux drive back and install ubuntu on it (make sure you select the right drive in the installer) If you do this ubuntu should automatically detect windows. If it doesn’t you should still be able to boot into either one of them using your device’s bios.
I am going with this game plan, courtesy of ChatGPT 4. It aligns very nicely with my goals and the steps involved also seem to coincide nicely with the suggestions made in this thread. Gives me a path forward, which is really what I need now.
-
Backup Personal Files:
- Access your Linux partition (A:).
- Mount the Windows SSD (C:) and HDD (F:) within Linux.
- Carefully check for any personal files on C: and copy them to F:. Verify that all important data is on F:.
-
Create a Full Backup of F:
- Connect an external storage device with sufficient space.
- Create a full backup of your HDD (F:) to this external device. This is crucial to prevent data loss.
-
Verify Backup Integrity:
- Ensure that the backup on the external storage is complete and the files are accessible.
-
Prepare for OS Installation:
- Download the latest Linux Cinnamon 23.10 ISO.
- Create a bootable USB drive with this ISO using a tool like Rufus or Etcher.
-
Remove HDD:
- Power down your PC.
- Physically remove the HDD (F:) to ensure it remains untouched during the OS installation.
-
Boot from Linux USB Drive:
- Insert the bootable Linux USB drive.
- Access BIOS/UEFI and set the USB drive as the primary boot device.
-
Install Linux Cinnamon on SSD:
- Proceed with the Linux installation on the SSD (formerly C:).
- During installation, select the option to format and use the entire SSD. This will erase Windows 10 and all data on it.
-
Post-Installation Checks:
- After installation, boot into Linux Cinnamon.
- Check that all hardware components are recognized and functioning.
-
Reinstall HDD:
- Power down your PC.
- Reinstall the HDD (F:).
-
Mount and Access HDD in Linux:
- Boot into Linux.
- Mount the HDD (F:). You may need to install additional drivers or file system utilities depending on its format.
-
Data Restoration or Access:
- If required, restore the personal files from the external backup to HDD (F:).
- Alternatively, if the HDD is accessible without issues, use it as is for storage.
-
Install Necessary Software:
- Install any Linux-compatible software that you need.
-
Final System Checks:
- Ensure everything is working as expected.
- Make any necessary adjustments in system settings, drivers, or configurations.
-
Create a New System Backup:
- Once everything is set up, consider creating a new system image backup.
You might not want to trust chatgpt with anything where accuracy and specificity are both essential to not brick a machine or lose data though. Especially since you can’t check the sources it used. It did a decent job at getting the general workflow right, but even that’s not a given. :/
-
I don’t fully understand how you are going about your installation. Are you attempting to install Windows 10, and Ubuntu onto different partitions on one drive, or each on a separate drive? Are you wanting to use grub to boot the OS of choice, or to choose the boot device from the BIOS boot device menu? In what order did you initially install the OS’s (Windows 10 first, then Ubuntu, or vice-versa)?
Dedicated SSD (C:) has Windows on it.
Internal HDD has F: (storage) and a partition for Ubuntu, which is the A: drive in Windows and /dev/sda3 in Linux.
I was originally hoping to do it this way and be able to dual boot them, but the more I think about it the more I feel that just going straight to Linux and biting the bullet would be better in the long run, and I can flash Windows if I really need it.
I was trying to get GRUB to act as boot loader but for the longest time I couldn’t even get GRUB running, even with at least 5 different troubleshooting ideas. Then once it was running, I still couldn’t get it to mount the EFI. Then I started getting the boot loop issues and Windows OS stopped working, but I figured out how to get Linux desktop running via
shimx64.efi
in the BIOS boot loader.This computer is natively a Win 10 machine, and I was trying to add Linux to it.
I encourage you to read through this Archwiki page on dualbooting – it has a lot of very helpful information on the topic.
I was originally hoping to do it this way and be able to dual boot them, but the more I think about it the more I feel that just going straight to Linux and biting the bullet would be better in the long run, and I can flash Windows if I really need it.
It is certainly possible to dual boot (in my experience, with the occasional headache that you may, or may not be willing to deal with) Windows and Linux, but yes, the most reliable installation would be one, or the other.
I was trying to get GRUB to act as boot loader but for the longest time I couldn’t even get GRUB running, even with at least 5 different troubleshooting ideas
Hrm, I’m not sure how you are going about your installation procedure. You mentioned that you are installing Ubuntu, but Ubuntu should come with Grub pre packaged. Installing Ubuntu really only requires clicking a couple buttons in the install wizard.
but I figured out how to get Linux desktop running via shimx64.efi in the BIOS boot loader.
Im not really familiar with shim, but, from what I understand, it’s the loader for when you have secure boot enabled, but you should have that disabled.
Hrm, I’m not sure how you are going about your installation procedure. You mentioned that you are installing Ubuntu, but Ubuntu should come with Grub pre packaged. Installing Ubuntu really only requires clicking a couple buttons in the install wizard.
I had Linux installed on a tertiary partition of a secondary drive, my F: drive. I neglected to store it within the dedicated SSD, C:, and I believe that GRUB was just not being picked up because instead of being
sda
or something close to it, it was insteadsda6
.Further this with the fact that GRUB seemed to not have elevated permissions and when I eventually got into its command line, it was not able to run Linux for reasons I’m unaware. Windows BIOS menu never had
Linux
or any corollary term available as a boot order item, and only through digging through theBoot from EFI
item and submenus was I able to find anything to actually boot Ubuntu without live CD at all.grubx.efi
(or whatever it was called) black screened.Im not really familiar with shim, but, from what I understand, it’s the loader for when you have secure boot enabled, but you should have that disabled.
Scout’s honor, I really did disable Secure Boot. I did so through Shell. I did so in the Windows directory. I even triple checked that it was disabled through the BIOS menu. If
shimx64.efi
is only supposed to work when Secure Boot is disabled, that must be because Windows has just been acting screwy as all get out.I had Linux installed on a tertiary partition of a secondary drive, my F: drive. I neglected to store it within the dedicated SSD, C:, and I believe that GRUB was just not being picked up because instead of being
sda
or something close to it, it was insteadsda6
.First of all
sda
refers to a physical drive, whereassda6
refers to a partition on that drive. As for the rest of it, I’m not exactly sure what you are talking about – it doesn’t really matter where in your system Linux is installed; the bootloader probes for an OS, and, once found, will update its table with the position of the OS on the drive.Further this with the fact that GRUB seemed to not have elevated permissions
This statement doesn’t really make sense; Grub runs independently of Linux (it even loads before initramfs), so the concept of “execution privelege” doesn’t apply. (source)
when I eventually got into its command line, it was not able to run Linux for reasons I’m unaware.
I will point you to this answer, if you wish to boot linux from the Grub command line.
Windows BIOS
There’s no such thing (well, as far as I’m aware, anyways – maybe a microsoft surface, or the like, labels it as such 😜). The BIOS is contained within a physical chip on the device’s motherboard.
Windows BIOS menu never had
Linux
or any corollary term available as a boot order itemIf you’re talking abou the boot menu, it doesn’t necessarily have to list the linux distro. If you know what drive it is installed on, you select that, then the BIOS finds the bootloader from there. A boot device is just that – a device to boot from, not an OS to boot into.
I really did disable Secure Boot. I did so through Shell.
I don’t understand what you mean here. As far as I’m aware, secure boot is only able to be disabled within the BIOS.
I was unsure if maybe there was some alternative command line trickery that exists to modify it that I am unaware of, but a quick websearch seems to corroborate my pre existing belief.
Windows has just been acting screwy as all get out.
This is an unfortunate reality of dual booting with Windows. Windows can do all sorts of trickery on your system (even when the system is powered down!). If I want to boot Windows (I keep it installed on a separate, dedicated, and air-gapped drive), I plug in its drive, and disconnect all other drives related to Linux. This has been the most reliable method that I have found to dual boot Windows. However, this method is still not without possible issue, as Windows can still leave devices in weird states that end up messing with how they are used in Linux.
Thank you for the breakdown. I’ve learned a fair bit about the infrastructure of my computer and Linux since posting this, and I’m now dedicated Ubuntu with only needing to do some very minor work with WINE here and there in the last two weeks or so. Linux has been a blast and learning about everything has been a lot of fun so far.
My problem turned out to be something with the BIOS. I don’t know if a switch got flipped somewhere along the way or what, but when I reset the BIOS to factory default settings in the boot menu I no longer had issues with boot looping and a CPU I could fry an egg on.
I do believe that GRUB was initially installed on sda2 and not sda, and Windows was just taking precidence over grubx64.efi upon startup. Now that I’ve scrubbed windows from my PC I no longer have any issues booting up and my PC seems to run just about the same as before, less a few graphical funnies with some larger proprietary software I use.
Funny enough, I tried to do a clean install of Debian with KDE on my system and I went back to having boot issues, mainly where it would just open to GRUB CL and I couldn’t get it to initialize Debian, when I was certain it was a good install. So I’m just going to stick to Ubuntu for a good while and learn it. Once I feel very confident in filesystem maintenance, command line navigation, snap/flatpak/.deb/whatever, all the major things, I’ll start shopping around for another distro again. Ubuntu has been treating me very nicely though.
Thank you for the breakdown.
You are very welcome! 😊
I’m now dedicated Ubuntu
A very fair decision! Dual booting can be a huge pain, and, for the average user, it really isn’t all that necessary anymore – Linux has come a very long way!
My problem turned out to be something with the BIOS. I don’t know if a switch got flipped somewhere along the way or what, but when I reset the BIOS to factory default settings in the boot menu I no longer had issues with boot looping and a CPU I could fry an egg on.
Interesting. I’m curious what the setting was. But, I’m glad that it worked out for you in the end!
I do believe that GRUB was initially installed on sda2 and not sda
I refer back to my previous comment –
sda2
refers to a partition on the drive namedsda
. You could have a drivesda
,sdb
,sdc
, etc. If one was given some partitionsdc3
that means it is partition 3 on drivesdc
. Everything gets installed into a partition on a drive.Windows was just taking precidence over grubx64.efi upon startup
This can certainly happen – especially if Windows is installed after Linux. I woud refer you to this answer to fix it.
less a few graphical funnies with some larger proprietary software I use.
Yeah, I’m not too surprised about that (depending on the speicfic graphical issues that you are referring to, mind you) – especially if you are using Wine. If you don’t mind me asking, what software are you wanting/needing to use?
Funny enough, I tried to do a clean install of Debian with KDE on my system and I went back to having boot issues, mainly where it would just open to GRUB CL and I couldn’t get it to initialize Debian, when I was certain it was a good install.
Hm, this is strange. I would err on the side of a layer 8 error, but there could certainly be some other fuckery afoot.
So I’m just going to stick to Ubuntu for a good while and learn it.
There’s no problem with that! Ubuntu was the first distro that I used, as well, when I first got into Linux. Granted, I didn’t stick with Ubuntu for long, cause I got mildly annoyed with how it worked.
Once I feel very confident in filesystem maintenance, command line navigation, snap/flatpak/.deb/whatever, all the major things, I’ll start shopping around for another distro again.
Sounds like a solid plan! When you do decide to move on from Ubuntu, I’d recommend Arch LInux 😜
I refer back to my previous comment
Yes, I am aware of how the partition naming structure works, to a degree. I am going off the fact that when I installed Ubuntu, it was installed on a partition (sda2) rather than a primary drive (sda). I’ve read that when GRUB is installed, if it gets installed to /dev/sda2 rather than /dev/sda it can cause issues with dual booting as the BIOS will read in a sequential order, and it may miss a partition if it’s “far enough down the list”. As another example, you may be in for some trouble if grubx.efi is installed on /dev/sda8 or something.
Everything gets installed into a partition on a drive.
I guess I must have gotten my preconceptions wrong, or perhaps I misread something. From my impression, certain things can be installed on the primary drive such as boot loaders, but I could be wrong.
If you don’t mind me asking, what software are you wanting/needing to use?
Finale 2012c is the main software I needed. And by funnies I mostly just mean that it’s slow to update graphics, but the program works entirely as intended. MIDI drivers work, sound libraries (Garritan and ARIA Player) function, print to PDF is fine, I’m actually incredibly impressed! I’m using WINE 8.0.1.
I also wouldn’t mind trying to get Cakewalk running, as my workflow is definitely more attuned to that software, but maybe trying to get all the proprietary drivers (e.g. TASCAM’s interface drivers) to work with Linux may be more headache than its worth.
Arch
I’ve heard it can be pretty challenging to get into Arch, is this true? I don’t know if I’ll ever be a “script kiddie” as it were. I plan on getting good at using bash and learning the other ones like ssh, but I don’t know how much I like the idea of having to hand-craft my OS from bare metal.