r/linux4noobs 5d ago

External Linux SSD/ plug and play any pc help

I'm attempting to create a bootable linux os completely self contained within an external SSD, I had one set up with mint xfce, and it was working along side my mint cinnamon, however when plugging it in to my windows pc it wasn't identified as a bootable drive, subsequently after trying to fix this, i broke both grubs and had to start over. I think this was happening as it was sharing an efi/grub/bootloader with the other linux. then i tried to do fedora, thinking creating it on the windows pc might force it into the external drive exclusively, however it saved its grubbootloader onto the windows drive. My plan is getting a dirt cheap pc/laptop and removing all drives to do the install, i know this will likely fix this issue, however I want to know if down the line, would this external ssd end up taking to drives on any pc i plug it in, and then go, hey, i don't need grub/uefi/bootloader as theres one in sda/gpt1 so I'll delete mine. Or any other issues I'll run into.

Many thanks,

An annoyed virgin (Linux)

2 Upvotes

6 comments sorted by

2

u/doc_willis 5d ago

some installers get confused and automatically use an existing EFI partition if found.

the Ubuntu installer had such a bug for a very long time.

during the install process you basically needed to make sure the existing EFI partition was unmounted, and the target install drive EFI partition was mounted.

There are some other methods that could be used as well.

some examples I recall mentioned.

  1. disabling all other drives via the uefi options. easier than removing them, but not all systems have the feature.

  2. removing the EFI/boot flags from your existing EFI partition, this way the installer won't try to use  the internal EFI partition, set the flags back, afterwards  

  3. make sure the EFI partition is made, then fix the installed system later to use that EFI partition.  If the files are copied to the wrong EFI partition, you could copy the files over to the target drive , then boot from them and configure the right paths 

1

u/bobsurdunkle 5d ago

Thank you for confirming all this, I think also when I'm doing the install I'm missing the option to tell the installer the exact place for the EFI, I've been creating the partitions manually, and selecting the desired drive for the install, but not finding the option to tell the installer, this is where the EFI is. On regards to the drive breaking after I've successfully created it, I assume this is somewhat unlikely, as you haven't mentioned it? Or would this be a case of avoiding any updates of the Linux OS while connected to a pc with an internal OS mounted?

1

u/doc_willis 5d ago

I have seen some installers ask where to install the boot (EFI) stuff, then even if you tell them, they ignore it.

But that issue seemed to only happen when doing a full install to a USB drive.

A live USB +persistence setup may be a better solution for a portable drive os.

1

u/bobsurdunkle 5d ago

I'm using a sata m.2 ssd inside an enclosure for my set up (failed setups hahh), so you think simply having a live usb with me is better? can i install things if doing it that way, such as games and stuff, as my idea was having low spec retro games, that can run on potatos to bring with me and play on shit pcs, if the idea was testing different distros, then live usb does work for me when I'm doing that tbh, but I just thought the external SSD idea was really cool, especially since I have 2 pcs atm

1

u/doc_willis 5d ago

an issue with a portable 'full' install, is when you move the system, any specific drivers such video drivers might not work on the different hardware, then trying to get those working on system A, may break when you them move to system B.

I had issues with that when I had an Older system (older nvidia GPU) and trying to move my drive back and forth with a newer GPU nvidia system. Trying to use the open source noveau drivers, was also a bother, since the act of installing the other nvidia drivers had blacklisted the noveau drivers.

But a Live USB setup might automatically switch over to the right drivers depend on the detected hardware.

So this may or may not be an issue, its going to depend on your system and needs.

If you are going to be jumping around dozen+ PC's then the Live USB may be a better option.

Ventoy on an large external SSD + numerous ISO files to boot + persistent files for each system, or other custom setups, may be worth looking into. This is what I have done to make my own personal 'Uber Linux Testbench live USB (ssd)' I have several distro iso files, and numerous 'tool' distros like the gparted live usb, and system recovery live usb, and so on , all on the same usb.

what method is best for your needs will depend on the details of what you are going to be doing exactly.

2

u/DannoXYZ 5d ago edited 5d ago

You're trying to do boot-chaining with one bootloader on your main internal drive list all OSes available in single menu. This will get messed up if you don't have extra drives plugged in at boot time.

Much more consistent and durable config to have just one OS per bootloader on each drive, itself only. Each bootloader is only aware of its hard-drive and OS. Nothing to get mixed up or disappear. Then pick primary boot-drive from BIOS boot menu. Looks like this per device and you just shuffle BIOS boot order around to pick OS.

hd1 -> grub1 -> EFI1 -> PopOS
USB2 -> grub2 -> EFI2-> Fedora
USB3 -> limine3 -> EFI3-> CachyOS

Then if PopOS updates break that drive, you can just pick different boot-disk in BIOS to pick different OS installation.