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!!
Warning: this is definitively doable, but messier than it looks like. I’d recommend you to partition it manually, before installing any distro, like this:
- one partition per distro. For sizes check their requirements. Given 500GB I’d probably reserve 60GB for each, perhaps a bit more if I know that I’ll install a lot of stuff in that distro.
- one swap partition, that’ll be accessed across distros. Optional if you have 16GB+ of RAM.
- use the leftover space for a “storage” partition, for personal files that you won’t save in someone else’s computer (i.e. the cloud). That allows you to mess with the distros without risking your personal files.
Don’t worry too much on getting the space right though - if necessary you can always resize a few partitions after installation. It’s a bit of a bother though.
Do not share /home across distros, it’s simply more trouble than it’s worth. Instead, mount that “storage” partition in each distro, inside your /home/[$username] directory.
Another thing that you might want to consider is virtualisation. Odds are that you won’t use a lot of those distros in your everyday, and that you’re just curious about their differences. In that case, consider installing one of them, install Virtualbox in it, and then the other distros get installed inside Virtualbox. I’m suggesting that because it’ll use overall less space, and make distro management less messy.
Thanks. I do not want to mess around with virtualization; I went down that rabbithole before and got lost and broke stuff lol. I need to do a bit more research and learning before im more confident with virtualization. So how large should the swap be? and what about a bootloader?? Are all three compatible with grub? also how large should the bootloader partition be? thanks, this is all a bit foreign to me.
VM are as easy as point and click with GNOME Boxes, also available as standalone.
Gotcha. Never explored Gnome boxes yet; probably just waiting for the right time. I’ve been trying to learn a whole lot of other tech stuff, so I sorta put virtualization on the back burner for now. Definitely wanna learn about KVM, lxd and lxc and even gnome boxes. just not right now
All those distros are compatible with grub, and come with their own copies of it. You just need to install your distros, and then when you say “I want THIS ONE to manage boot”, you follow this tutorial. (It’s supposed to help you reinstalling grub after Windows, but it works fine for grub after another Linux instal).
Or, if you want to be lazy - install last the distro that you want to manage boot, then tell it “screw the current boot, reinstall it”.
I wouldn’t bother with a bootloader partition. The bootloader runs fine from any distro partition, and it’s small enough so you don’t need to worry about it wasting space.
swap
I’ve been running my system without swap whatsoever for quite some time, and it runs fine. But if you’re planning to use hibernation or similar, reserve the same amount of swap space as you have RAM; for example if you have 8GB RAM then at least 8GB swap.
IMPORTANT: if hibernating a distro, don’t boot another distro, otherwise the hibernation data will get wiped.
Perfect! I will be disabling hibernation in Bios. Also, how exactly do you choose a default bootloader when each distro automatically installs their own? not sure on that process. Or do things like display managers matter? or is Xorg or Wayland pretty much good for all three?
Dude please excuse my ignorance, but I would obviously need to make a bootloader partition, but do I have to like download grub software and install it on that partition or is that something the system will do during the partitioning process itself?
What?
- Install
virt-manager qemu qemu-kvm
- Run virt-manager
- Install a new distro, choose the .iso that you downloaded, assign 8GB RAM and 60GB storage
- Leave the rest default
- Follow the Distros installing process as usual
- Delete the VM if you are done
Important note: using distrobox
or toolbox
you can run packages of pretty much any distro on your Laptop. I am currently using Ubuntu PPA VLC 4.0 on Fedora Kinoite.
So virt manager, KVM, and qemu is the recommendation solution for this? Opposed to other methods like virtual box or gnome boxes or the other various virtualization platforms out there?
Really nice idea with the shared swap and storage!
Caveats:
- you can LUKS encrypt that, but you may need to tweak some polkit rules to automatically unlock it.
- Fedora uses zram and swap and SELinux is a hell of a task
Apart from that, great recommendation!
In the end you can simply delete all partitions except your storage partition, reinstall any distro and mount that partition to /home
Fedora’s swap on zram shouldn’t pose a problem - at most it won’t use the disk swap, but other distros still would.
Encryption is important but I wonder if OP would make much use out of it, given that he plans to bulk store his items in the cloud. The storage partition would be mostly for things “at hand”. And if necessary, as you said, some elbow grease lets you have encryption and still access it from all distros.
I don’t recommend OP to mount that partition directly to /home
itself. It’s bound to create problems later on due to software in different versions interacting with software that may or may not be present depending on the distro. Mounting it inside some other directory (even inside /home, e.g. /home/username/storage) feels considerably safer.
Right you would then have something like
- swap
- zram
- /home/user/storage
- boot
- boot/efi
- /
- boot
- boot/efi
- /
- boot
- boot/efi
…
What a mess. But if you kinda keep track of what is what (maybe search for the packages dnf
apt
yay
and so on) it can work
Oh I just watched a video about home. So is that a partition of it’s own? the guy was saying he was using different homes for each distro and it became a mess, so he planned to install one home directory for all distros… idk?
/home is a directory (“folder”). Inside that directory, there’s one subdirectory for each user, where you’re expected to keep your personal files, configuration files, user data from software (e.g. save games from your games), stuff like this, personal data.
And Linux allows you to mount any partition in any directory of your choice.
Because of those two things, a lot of people create a partition and mount it as /home. So if something bad happens with the distro, and you need to reinstall it, your princess is in another castle your data is in another partition, safely stored. It’s usually a good idea, but in your case it’s a bad idea - because your /home/[insert username] directory from one distro will be likely the same as in the other distros, so they’ll interfere on each other, and software user data will become a mess.
Instead, what I recommend you is to not create a /home partition. Let each distro have its own /home. However, do create a partition to store your data, and mount it inside your /home/[insert your username] directory. That way you can access all your files from all your distros, but the software user data won’t be mixed.
Ahh brilliant! so create ONE storage partition and just mount that one partition in each distro’s home directory?