Tips on running multiple distros together on my laptop?
Hello all, sorry for such a newbish question, as I should probably know how to properly partition a hard drive, but I really don't know where to start. So what I'm looking to do is install a Debian distro, RHEL, and Arch. Want to go with Mint LMDE, Manjaro, and Fedora. I do not need very much storage, so I don't think space is an issue. I have like a 500+ something GB ssd and the few things that I do need to store are in a cloud. I pretty much use my laptop for browsing, researching, maybe streaming videos, and hopefully more programming and tinkering as I learn more; that's about all... no gaming or no data hoarding.
Do I basically just start off installing one distro on the full hard drive and then when I go to install the others, just choose the "run alongside" option? or would I have to manually partition things out? Any thing to worry about with conflicts between different types of distros, etc.? hoping you kind folks can offer me some simple advice on how to go about this without messing up my system. It SEEMS simple enough and it might be so, but I just don't personally know how to go about it lol. Thanks alot!!
Thanks, though it's actually that tricky? I honestly figured it would be more simple, but hey I guess not. Ehh I just don't want to get into VM quite yet; I've got alot of other learning to do first. But people dual boot windows and linux all the time with no problems, what is so different about dual booting or in my case triple booting three linux distros?
VMs are so much easier and more fun than dual booting. The best part about VMs is you can use both at once and they're the same system. Dual booting forces the OS's apart, and it's difficult to set up.
They actually don't. They try and it works for some time. And then the next Windows update intentionally fries their dual-boot. Then they go back to Windows.
Or they understood enough about the details and how to minimize the risk (basically running Linux with an linux boot manager that then chain-loads Windows boot files from another disk, so Windows is mostly oblivious about the other OS... and even then Windows likes to screw with the efi record) that they are mainly running linux. And later they tend to ditch Windows completely of just keep a virtual machine if they really need it for some proprietory stuff.
At least those scenarios above cover 95% of all people "dual-booting" I know...
In comparison, dual- or triple-booting Linux is indeed a bit less problematic. But the same thing applies: You mainly run one. And given that Linux distributions are all nearly the same, with just a few differences in pre-configuration and defaults, there's not much point to it.
Thanks for the info. Since im an explorer and learner and want to try new things, I figure I ought to step out of my debian/ubuntu bubble and start to familiarize myself with Arch and Fedora (or RHEL I guess?). but I just personally want then physically installed instead of some image in the cloud, ya know? It's just actually implementing this plan is a tad confusing for me.
That's my bad, I tend to kinda lump cloud, VMs, and containers together and sometimes use catchall phrases. I know they're all different and I should clarify.
So, with a VM everything inside it runs on a completely separate software stack completely different OS, Kernel, etc. It's very much pretending to be another machine.
With a container, it's running from the same kernel as the host, and the compartmentalisation is handled by the kernel basically. By default they can't really see each other, but the kernel can see both.
Do the distros remember and keep everything the same way though? like do they remember all your settings and apps and what not? Idk why, but im under the impression that they wipe each time. probably way wrong lol
So, docker images don't save their changes by default. The idea being that the image is supposed to be a reliable image that can fix any snafus with a simple revert of the system disk.
It's really easy to save changes though, just use docker commit . You can also mount host folders to folders in the guest, where they are as changeable as anything on your host.
Honestly to me it's not bad, plus I think on a Linux system for home use it's nice to always push your comfort zone a bit. I use 4 partitions generally: boot files, distro #1, distro #2, and home data on a separate partition. This works for me because I like to tinker with one Linux installation while I have the other in case I need to get real work done while I'm in the middle of fixing the other install. Currently I run Ubuntu and nixos, booting from grub2 efi and letting nixos manage grub installation.
Even when it's totally borked grub2 is very capable of giving you tools to boot manually, and we all have magic reference books in our pockets 😹
There just isn't any reason to do it manually. You don't learn anything useful that you can't learn on a VM. And it adds complexity to your system that doesn't need to be there.
As others have stated, the main risk comes from having Windows as one of your partitions, as Windows doesn't care if you are working with other systems, it only cares about Windows.
I know SOLID principles are meant for object oriented programming, but, they have merit in many areas. One of the more impactful ones is the principle of single responsibility "...[X] should do one thing and therefore it should have only a single reason to change." Adding in additional responsibilities increases entropy and increases the likelihood that if something goes wrong, you won't be able to pinpoint what caused it, and therefore how to fix it. Situations like that are antithetical to your stated impetus of learning.
However, if you used virtual machines, not only are you now abiding by the principle of single responsibility, but you are also giving yourself access to standard industry tools and techniques that will serve you well in your learning journey. For example, when dual booting, if you royally mess something up, you are now left with a useless hunk of computer until you either figure out what you did and how to undo it, or you just give up and reinstall your OS. With VMs, you can just take a snapshot before you make your changes, and if shit hits the fan, you just revert to your snapshot and retry. This gives you the chance to figure out not just what happened, but why, and how to avoid it, all without losing access to your main system.
Not only that, but multiple VMs can be running simultaneously and can be used to simulate networks of interconnected machines all running disparate software with different goals and responsibilities.
It's obviously your computer and your choice. But, I'm trying to save you the headache many of us had to go through on our learning adventures. Just use VMs.
Thanks a lot. I'm just looking for more permanent solutions. Idk a whole lot about VM, but isn't your image wiped after each use? I dont want to keep tweaking settings and configurations, I want them to be like my own personal desktop where you install your own programs and make your own configurations and tweaks and they actually remain. Is that possible for VM distros? I would like to actually learn and use the other distros as work stations too. Not just trying to peak and toy around with other distros. If that were the case, I'd use my ventoy drive
So, for a bit of a crash course, a virtual machine is just that, a machine that is virtualized. So, anything you can do with your physical machine (your computer) you can do on a virtual machine. (You could even dual or triple [or more] boot a VM)
Just like a normal computer, changes made to a virtual machine are persistent unless you configure them not to be. So no need to worry about losing changes. (Though, I would suggest taking a snapshot of your newly installed distro as soon as you finish the initial installation, it will be useful if you need a clean starting point for something you want to do)
I suggest you download a couple of Linux distros you want to play with, download VirtualBox, and setup a virtual machine for each distro. You can also setup the VM to run in full screen mode, so it feels like native.
There are tons of guides online to help you out, and a large number of computer nerds here that will help you too.
The one limitation with VMs is gaming. You can get around that limitation once you're more well versed with them, but just don't expect to be gaming on a VM for quite a while.
VirtualBox is the simplest and must accessible option for beginners. It's not very well aligned with Linux ethos, but it is easy to use and is well documented with many users to help if you need it. It also does a good job of walking you through the installation process when setting up VMs.