There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

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!!

transientpunk ,
@transientpunk@sh.itjust.works avatar

Tips on running multiple distros together on my laptop?

Sure. Don’t.

Just use VMs instead. Partitioning your hard drive to boot multiple operating systems from is asking for trouble if you don’t know what you’re doing.

Macaroni9538 OP ,

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?

Ooops ,
@Ooops@kbin.social avatar

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.

Macaroni9538 OP ,

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.

520 ,

Who said anything about the cloud? It's all on your local machine. The VM 'hard disks' are just files on your computer.

Macaroni9538 OP ,

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.

520 ,

No worries. For easy reference:

Cloud: someone else's computer
VM: walled-off compartment of your PC
container: not-so-walled-off compartment of your PC.

Macaroni9538 OP ,

Perfect! thank you. And I always thought containers and VMs were opposite, like a container is more ingrained into the distro. TIL!

520 ,

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.

Macaroni9538 OP ,

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

520 ,

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 <container id>. You can also mount host folders to folders in the guest, where they are as changeable as anything on your host.

Macaroni9538 OP ,

Ahh I see. I definitely do want to learn docker but I think that may be too tricky for me right now. I do tend to get sidetracked and go off into little experiments though and end up not getting anything done lol

Boterham ,

Everything is saved like on a “real” system.

Macaroni9538 OP ,

Well perfect! Idk why I was under the impression that each time you spin a VM, its like a temporary session…

520 ,

VMs are as easy as installing applications. VirtualBox and VMware do great jobs in guiding users through the process.

Macaroni9538 OP ,

perhaps I will take a gander if I can’t figure it out manually.

transientpunk , (edited )
@transientpunk@sh.itjust.works avatar

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.

Macaroni9538 OP ,

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

transientpunk ,
@transientpunk@sh.itjust.works avatar

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.

Macaroni9538 OP ,

Perfect! so you feel that Virtualbox is the way to go then?

Macaroni9538 OP ,

Is there a specific VM software or method you would recommend for this project?

transientpunk ,
@transientpunk@sh.itjust.works avatar

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.

Macaroni9538 OP ,

Perfect, thanks for all the replies lol

Franzia ,

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.

Macaroni9538 OP ,

Do you have a recommended virtualization platform for such a project like this?

mvirts ,

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 😹

Macaroni9538 OP ,

Awesome, thanks for the reassurance :)

Abnorc ,

Thank you Stack Exchange.

lvxferre ,
@lvxferre@lemmy.ml avatar

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.

Macaroni9538 OP ,

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.

3laws ,

VM are as easy as point and click with GNOME Boxes, also available as standalone.

Macaroni9538 OP ,

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

3laws ,

Happy hacking ✌️

odium ,

Grub is compatible with pretty much everything.

Macaroni9538 OP ,

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?

odium ,

The system won’t do that by itself. I would recommend letting one of your distros do it. During the installation process, when you set that bootloader partition to be the boot partition, many distros will automatically install grub if it doesn’t exist and add themselves to an existing grub config if it does exist.

Find a distro which installs with a default grub bootloader and make that the first distro you install.

Macaroni9538 OP ,

Thanks! and as far as making one bootloader your default, is that just a matter of changing the order of your boot process? and if a distro automatically installs their own bootloader, would just the first installed one take precedence by default or is there some configuring you have to do? so I maybe really just be overthinking this. Is it as simple as making roughly 3 ~60gb ext4 partitions and simply just do the regular install according to each partition? what about mounting and all that. No clue how that all works

odium , (edited )

For the bootloader questions: You just have to go to your bios (spam a function key during start up, which function key depends on manufacturer) and change the boot order. The order of things which happen when you startup your machine is:

  • your bios starts up
  • your bios selects the highest priority bootloader you have (you want this to be grub)
  • you can choose which OS to open in grub, if you don’t choose, it goes with whatever is set to be default in the grub config. If you haven’t edited the grub config, I think this would either be the first installed OS or the first alphabetically
  • grub runs the startup sequence for the chosen OS

For the other questions: You might have to manually choose what to mount where. For each distro, you will want to mount a boot partition (your grub partition), a swap if your ram is low (make all your distros share the same swap partition), and a unique home partition.

You might also want to mount a shared files partition. These would be files you want stored locally that you can access from all the distros. Don’t mount this in the install process, instead mount it after you install from whatever file manager you use on each distro. Make a ~/shared folder and mount it to that.

Macaroni9538 OP ,

now this version sounds more simple. SO create three ext4 partitions roughly 50-60gb for each distro, maybe create a swap or maybe a storage partition? I don’t understand how the storage partition would come into play, but I can just save anything important to my cloud drive anyway, so I don’t necessarily need extra on device storage. So is that really it?

odium ,

I edited the comment you are replying to to answer more of the questions.

You would want the partitions you mentioned as well as a grub bootloader partition.

Macaroni9538 OP ,

Oh I see now. So I don’t have much of a need for storage on my device. If I have anything important to save, I just use my cloud drive. Also I was under the impression from another poster that I don’t need to make a bootloader partition because the installer will automatically do that for me, idk what is correct? if that’s the case, then just mount the second and third distros to that first bootloader plus swap and I should be fine?

odium ,

You need to make sure there’s enough space for your installers to make a grub partition, but yes, if there’s enough space, they will make the partitions themselves. You just need to tell them how big you want the partitions to be.

Macaroni9538 OP ,

Awesome! I think somebody said 50-60gb should be fine per distro? do agree?

odium ,

Yep, that should be fine.

odium ,

As for how exactly you add each distro to the grub config, refer to the distro specific grub instructions. Some user friendly distros auto detect and add themselves to grub, but some of the more customizable and bare bones distros need manual config.

Macaroni9538 OP ,

awwee damn, thats another aspect I wasnt aware of. Are you referring to fstab or the actual grub config?

lvxferre ,
@lvxferre@lemmy.ml avatar

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.

Macaroni9538 OP ,

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?

Gurfaild ,

Hibernation is an OS feature, so you can’t disable it in the BIOS. You can either disable it in all your distros or simply not use it.

Macaroni9538 OP ,

Oh ok thanks. I just coulda swore I saw a hibernation setting in BIOS. That’s another thing, would I have to create a Bios partition? this is a tad more confusing that I thought. Also determining the proper sizes of everything. What about an efi partition? or is that only associated with Windows? I have no clue

Gurfaild , (edited )

There are no BIOS partitions - you may be confusing the term with the BIOS partition scheme, but that doesn’t matter in this context “BIOS partitions” do exist, but they are irrelevant on modern machines - they are for booting GPT disks on systems that only support MBR disks.

If you need an EFI partition, the first installer will create one. As for the sizes, the recommendation in the other comment makes sense to me (one ≈60 GB partition per distro, one swap partition and one partition for your personal files that uses the remaining space on the disk).

Macaroni9538 OP ,

I mean SHOULD I make an efi partition? I have no clue if I need it or if it’s optional. Simple is better in my case lol. SOO just trying to put it all together so far. first create a roughly 8gb fat32 partition for swap? Then a 60gb ext4 partition for distro 1, then so on with the other two partitions and thats it? how does the storage partition work? what format should that be? and I was reading about mount points and stuff, what ought I know about those?

Gurfaild ,

If the installer doesn’t automatically create an EFI partition, you can create a small FAT16 or FAT32 partition (a few hundred MB should be enough).

The swap partition is just a swap partition - that is the partition type you select in your partitioning tool.

The storage partition can be any format you want. If you don’t need to access it from Windows, just use ext4.

Mount points are similar to drive letters, but more flexible. You can read these Wikipedia articles: en.wikipedia.org/wiki/Mount_(computing)en.wikipedia.org/wiki/Fstab

Macaroni9538 OP ,

Thanks again. So did you mention it’s not really necessary to install an efi partition? Idk if I need it or not? or is it just better safe than sorry, sorta like a swap?

Gurfaild ,

If you install your first distro without creating any partitions manually, the installer will probably create an EFI partition. Maybe it wouldn’t need to create one on your specific system, but it will probably do it anyway.

Macaroni9538 OP ,

gotcha! now how would that storage partition work? like do you point each distro to that partition? is that how that works?

Gurfaild ,

Usually you create an entry in /etc/fstab that tells the system which partition should be mounted where. I’d do that in each distro once you have installed all of them.

Macaroni9538 OP ,

But how do you know which partition should be mounted wear and Im sorta confused by that statement. Like what do you mean by “where”? Aren’t they all on the same hard drive, so wouldn’t they all just mount to your drive?

Gurfaild ,

It’s similar to how drive letters work in Windows: the partition you installed it on is C:\ and you can assign any other letter to any other partition.

On Linux, the partition you installed it on is / and you can mount other partitions in any empty directory.

Macaroni9538 OP ,

I understand. Would I mount all partitions to root? also I just thought about something; what about gpt format? I know that is used for linux but where does that come in? like are ext4 and gpt the same types of things or different types of formats for different things?

Gurfaild ,

You can only mount one partition at one mount point, but any empty directory on one partition can be a mount point for another partition.

GPT is a partition table and is not used for Linux specifically, but on any computer with UEFI - it defines how to find partitions on a disk, but not how they are formatted.

ext4 is a filesystem - formatting a partition with ext4 means creating data structures that tell the OS where to find files and directories in the partition.

Macaroni9538 OP ,

Ahh ok I understand the filesystem types but still darn confused about the mount points. So the first distro I should mount to root??? then how could I partition the next distros in empty partitions that don’t have directories yet (since theres no distro on them yet). Sorry, just getting a lil confused on some parts

Gurfaild ,

Mount points are specific to one install - for example, you can mount your Manjaro root partition as /mnt/manjaro on Fedora. From every distro’s perspective, the partition it is installed on is /.

You seem to be mixing up the locations of partitions and mount points - a partition is somewhere on a disk and a mount point is basically a sign that points to it, and every distro can have different signs that point to the same thing.

Macaroni9538 OP ,

Ok I’m following. that doesn’t make sense to me to make the mount points for one distro inside another. I dont understand that. In my mind, it seems like the mount points would all be to the bootloader? but again, I dont know much about this stuff lol

Gurfaild ,

You only need mount points in each distro for partitions that you want to be able to access from that distro. If you don’t need access to your Arch system files from Debian, don’t mount the Arch partition in Debian.

But if you have a partition that you want to access from multiple distros, you don’t need to use the same mountpoint in each distro - just like a USB flash drive can be E:\ on one Windows computer and H:\ on another - that is just a name and the files on it are the same.

Macaroni9538 OP ,

Thanks for all your help. I have a feeling that once I start the process, things will become more clear as Im actually doing it

lvxferre ,
@lvxferre@lemmy.ml avatar

If this is a plain computer (desktop/laptop): I’d simply turn EFI off and call it a day.

Macaroni9538 OP ,

Sounds good to me. If I dont really know what it is, then maybe I dont need it enabled

Ooops ,
@Ooops@kbin.social avatar

Oh, believe me: There are so many messy BIOS and UEFI implementations out there that you can definitely deactivate it in the BIOS for some. Which just introduces even more mess where hibernation triggered on the OS level then fails.

lvxferre ,
@lvxferre@lemmy.ml avatar

Also, how exactly do you choose a default bootloader when each distro automatically installs their own?

I’d probably let Debian or LMDE do it simply because I’m more used to those distros, but you can simply roll a die if you want.

Or, if you already chose which distro should manage boot, and you want to know how to do it - the tutorial in the link does the trick. I’ll adapt and copypaste a simplified version here:

how to let the distro of your choice manage boot1. Install all distros the way that you want. Make sure that you know in which partition each is installed. 2. Pick the distro of your choice to manage boot. Let’s say that it’s Foobar Linux, and it’s installed in /dev/sda69. (why 69? Because it’s funny, so you’ll remember to replace it with the right number later on.) 3. Boot in some live USB. The distro in that USB doesn’t matter. 4. Open a terminal. Type the following junk in it: sudo sudo mount /dev/sda69 /mnt for i in /sys /proc /run /dev; do sudo mount --rbind “$i” “/mnt$i”; done sudo chroot /mnt update-grub 5. This should be enough. Now restart your computer without the live USB, and your Foobar Linux should be managing the boot.

And just now I realised that some random distro might decide to take over the boot, once it updates kernel (as it triggers updating grub). So when installing the other distros, look for some configuration that allows you to not install grub in it. (It’s also possible to remove it after the installation of the distro.)

Or do things like display managers matter? or is Xorg or Wayland pretty much good for all three?

That’s a per-distro choice, you could go with Wayland for some and Xorg for others. I would probably go with Xorg for all three because it works for me.

Macaroni9538 OP ,

Thanks! still a tad confusing for me, but it’s something to work with at least. so you only mount the one that you want to handle the bootloader? what about the storage drive? do I just mount all the partitions to that drive and they will all automatically save to that storage drive? I ought to look up diagrams and such just to see it visually I think. Also, someone mentioned creating the partition first. how would that work out if you’re still running a distro? would rebooting wipe that out and keep the partition in tact and then you work from there? or do you just partition as you go along with each install?

lvxferre ,
@lvxferre@lemmy.ml avatar

I think that this might help you, since you said that you mentioned diagrams:

https://lemmy.ml/pictrs/image/38de1d1b-ca88-4183-90fc-e85572db6c45.png

The numbers after /dev/sda will change depending on how you partition your SSD, as well as their order, and I’m assuming that your username will be “macaroni” for simplicity, but look at the idea. (Also, you don’t need to mount your personal files partition in /home/macaroni/storage. It could be mounted anywhere you want, even /randomjunk/catpix/dogpix/mypartition.)

If I recall correctly you don’t need to mount the partition with grub (the bootloader), but do check it with other users as I’m not sure of that. Once you update grub in that distribution, it’ll automatically detect “look! There are other systems here! I’ll add them to the boot options!”.

Also, someone mentioned creating the partition first. how would that work out if you’re still running a distro?

You should only create, delete or modify partitions of your SSD from a live USB. Never do it while the system installed in your SSD is running. Those partitions will stay even after you reboot.

I recommend creating the partitions first, then installing your distros. This way you’ll have better control on how to organise your partitions. For example, if you decide to install Arch on the third partition, you can simply say it “hey, you shall be installed in /dev/sda3”, no matter the order that you’re installing Arch vs. other distros.

Macaroni9538 OP ,

this is very very helpful, thanks alot. I love lemmy over reddit. you guys are actually kind and helpful here. so I mentioned in other posts, I don’t store a whole lot of things at all and anything important is stored in a cloud. So do I necessarilly need to create a storage partition? can’t I just use storage within each distro partition for trivial stuff like downloads or whatever? I hope that makes sense

lvxferre ,
@lvxferre@lemmy.ml avatar

You don’t need to create a storage partition if you don’t want to. You could theoretically reduce that partition table from the diagram to three partitions - one for each distro. It’s up to you, really.

The problem that I see with that is organisation and security:

  • you’ll likely use one distro more than the other two. That distro’s partition will get full of personal files faster. Eventually you’ll need to juggle files to the other two partitions.
  • you’ll need to remember which system you were using in order to remember where your files are. And since you’ll be juggling files back and forth, you’ll reach a point where you need to search three directories to find a file.
  • if your personal files are spread across multiple partitions, you’ll likely need to mount all of them in all your systems. This means that you’ll need to mount Debian’s and RHEL’s partitions in Arch, Arch’s and Debian’s in RHEL, etc. It’s generally not a good idea to mount partitions with system files unnecessarily.
Macaroni9538 OP ,

Oh ok, so scratch that idea then lol see, this is the stuff I have no clue about! thank you

Pantherina ,

What?

  1. Install virt-manager qemu qemu-kvm
  2. Run virt-manager
  3. Install a new distro, choose the .iso that you downloaded, assign 8GB RAM and 60GB storage
  4. Leave the rest default
  5. Follow the Distros installing process as usual
  6. 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.

Macaroni9538 OP ,

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?

Pantherina ,

Hmm, I use Virt-manager as it supports some things with no GUI in Gnome boxes. Gnome boxes seems nice, but after trying certain things you get to a limit of functionalities.

Kvm ans qemu are always needed.

Gnome boxes has a flatpak, but that one has no usb support for some weird reason.

Macaroni9538 OP ,

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?

lvxferre ,
@lvxferre@lemmy.ml avatar

/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.

Macaroni9538 OP ,

Ahh brilliant! so create ONE storage partition and just mount that one partition in each distro’s home directory?

lvxferre ,
@lvxferre@lemmy.ml avatar

Yup. Check the diagram that I posted as a reply to another comment. It’s a clean way and it allows you to access your files from all your distros.

At least in theory you could even use a /home partition if you really, really wanted, but then you’d need to make sure that your username is different for each distro. It’s more work than it’s worth, and muscle memory will make you to try to log into one system with the username of another system.

Pantherina ,

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

lvxferre ,
@lvxferre@lemmy.ml avatar

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.

Pantherina ,

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

lvxferre ,
@lvxferre@lemmy.ml avatar

It’s less messy than it looks like.

Physically you’d have N+2 partitions for N systems: one for swap, another for storage, and N for system files. Then inside each system you’d have simply to mount the swap, /, and /home/user/storage.

I recommended OP to turn EFI off, it sounds pointless in his situation. Regarding /boot: it boils down to installing grub in one of those distros, and letting it manage the boot.

Dotdev ,
@Dotdev@programming.dev avatar

Have you tried distrobox ? That would sound more reasonable.

Macaroni9538 OP ,

Never heard of this one. Some more research to do! Thanks for all the info

Pantherina ,

Its a container tool using Podman or Docker.

See a video on “container vs. Virtual machine”.

What Distrobox does is downloading container images or any distro basically. It uses your system Kernel still, but all the libraries and packages are from the distro.

I.e. you can install Arch (AUR too), Ubuntu, Debian, Fedora, Opensuse packages on any distro.

The only thing not working are Flatpak and Snap as they need systemd

Dotdev ,
@Dotdev@programming.dev avatar

But would you need flatpak and snap with aur

Pantherina ,

I guess not haha

Macaroni9538 OP ,

Darn, I do like to use flatpaks and occasionally snaps… I know I know, most people hate them lol. But the big question for going the VM route is, do the distros I load up remember all my settings, configs, programs, etc? I want them to be like actual desktop distros where everything stays in tact and I’m not resetting everutime I boot up a VM iso

Pantherina ,

Yes they work completely normal. In theory the allocated space also just occupies what is actually used

And if you use Flatpak and snap just install it on your main system?

Macaroni9538 OP ,

So this images will always remain the same as I make tweaks and download programs and such? And if I use flatpaks from my main distro, how would that install things on my VM distros?

Pantherina ,

A VM is like a container but also with its own Kernel. KVM shares the resources tightly with your systems kernel, so it has best performance afaik.

Its its own system, persistent storage, no interaction except if you choose to with spice integration, network, usb, GPU or filesystem passthrough

Pantherina ,

So Question: What do you actually want to achieve?

Do you want a rolling, semi-rolling or stable releases? More tested or even LTS packages, or the latest?

Macaroni9538 OP ,

Uhmmm so it would be interesting to learn about rolling releases and thats where my choice of manjaro could fit in. Sometimes I simply get bored of debian/Ubuntu but its what I’m most familiar with. The goal is to learn and USE other distros. Not just browse or hop around but I want to use the three main distro types all on one system. I want things to remain in tact like a normal workstation installed on your desktop. Idk much about virtualization, but I’m under the impression that they wipe your disk or a certain distro clean after each use. I do NOT want that.

caseyweederman ,

I run Debian with a bunch of virtual machines for exploring other distros. This might not be a good solution for a laptop though.

Pantherina ,

I went a huge journey.

  • mint, crashed
  • manjaro, weird reputation but very nice
  • mxlinux: damn old packages back then
  • kubuntu: broke
  • kde neon: lol also broke
  • fedora kde: broke
  • fedora kinoite: have it the longest, didnt break yet

I like immutable as you can reset your system. You can see most of your deviation from “what works” using rpm-ostree status.

And sorry but its all Linux, it doesnt work differently if you are not a server admin or tweaking SELinux, custom polkit rules and stuff like that.

Macaroni9538 OP ,

Thanks. The time I was using Manjaro, I liked it alot but am also confused by the weird negative reputation…

Pantherina ,

I mean they are based on Arch and their “stable” is simply that they wait to ship packages. I dont think this is the best way, unsure if they also handle bugfixes like that.

So its basically preconfigured Arch with a weird repo. If you want the AUR, it is said to break on Manjaro.

Pantherina ,

So… I guess it should work but you will end up with looots of partitions and pretty sure you have no idea what is what.

But if you plan on nuking it in the end, here is how to do it:

  • install a Distro to full hard drive
  • use some partition manager like KDE-Partitionmanager (the best of all) or Gparted and resize the big ext4/btrfs/zfs whatever storage partition as small as you want
  • install the next distro into the empty space
  • shrink that distros storage again, repeat

And please report if some crazy stuff happens with Grub or if you get secureboot working!

Macaroni9538 OP ,

If I utilize this route, do you believe it’d be more trouble than anything or should it hypothetically work just fine?

Maoo ,
@Maoo@hexbear.net avatar

Why do you want to do this? If it’s just to try out different distributions, I would suggest using per-distro virtual machines or USB drives instead.

Macaroni9538 OP ,

Well its more than just trying them out, in want to learn and actually use them too. Like as work stations, not just like a live image where you can browse around. Sometimes in get bored of my debian distro and I dont want to just delete it and reinstall another type, ya know? I’d rather have all three where I can actually use and work on them and they all stay in tact and keep all my settings and files and programs, like how a normal desktop installed distro does. More of a learning and adventure thing than anything. One day I could focus on manjaro and then the next work on fedora or if I get bored and just want to casually use my computer I could just hop on my more comfortable debian distro. Idk maybe it seems weird to others, its just how my brain works. I want to be proficient in the big three, plus opensuse eventually too.

Maoo ,
@Maoo@hexbear.net avatar

Using a USB device might work well for this! You can do basically exactly what you want but your whole OS is on a USB drive. You’ll get native performance for everything except disk read/write. If you use a fast device with a fast USB interface you might not even notice.

Macaroni9538 OP ,

Do you have a recommended virtualization platform for such a project?

Maoo ,
@Maoo@hexbear.net avatar

There are a few that are nice.

QEMU-based options work well. Boxes for GNOME uses this.

My backup option is always virtualbox with guest additions installed.

redprog ,

All these people saying don’t do it - clearly, they’re trying to learn something and are not necessarily after a fully usable, encrypted production system. Instead of telling them it’s too complicated, we should encourage to play around and figure it out, so in the process maybe they find out on their own why this configuration might not make any sense in most situations.

So @op, just go for it, you’re going to learn a lot from this!

Macaroni9538 OP ,

Thank you. Its seeming that the VM route is more doable. I’m just curious if a VM for a linux distro will keep everything as is, like your files and filesystem, settings, tweaks, configs, etc. I essentially want three workstations. I dont want to keep starting over on a clean slate ya know? And if so, do you have a recommended virtualization platform that you would recommend for this project?

transientpunk ,
@transientpunk@sh.itjust.works avatar

VMs are persistent unless you configure them not to be.

VirtualBox is the go-to easy-mode virtualization software. You’ll likely quickly outgrow it as you learn it’s limitations, but, it will teach you all the concepts you need to know, and they’ll largely be transferable to more robust systems like esxi or proxmox.

Macaroni9538 OP ,

Thanks again

SnailMagnitude ,
@SnailMagnitude@mander.xyz avatar

Why?

Triple booting is a pita, moreso if you don’t know how to partition a disk. I’d want any laptop encrypted, which adds further complexity to the triple boot.

If you wanna browse, research, watch videos and tinker just install a distro. If you wanna spend time switching your system off and on again over and over and over again to find out what’s working/broken go for the triple boot.

Docker could be worth a shot. You can ‘docker pull fedora/arch/debina/whatever’ and can play around with the base systems. Alpine takes up about 6mib so isn’t too resource intensive if you need to nuke it a few hundred times to get up and running.

Macaroni9538 OP ,

But with virtualization or containerization, is there persistence for the distros? I think thats the right word. Like does it remember everything I tweak or install? I’m not necessarily wanting to just browse new distros, I want to learn them and use them too and if a VM wipes the image every time, thats not useful for me

nitefox ,

Yes it does

Macaroni9538 OP ,

I’m sorry yes it does wipe after each use or yes it does keep things in tact?

nitefox ,

Keeps things intact. Try Parallels (I use it at work and it’s not free, but I’m pretty sure there are some great free alternatives)

Macaroni9538 OP ,

Parallels as in parallel computing? Or are those different terms?

nitefox ,

It’s a VM software

Macaroni9538 OP ,

Oh gotcha! Thanks for clarifying. Another thing to look into. Thanks

librecat ,
@librecat@lemmy.basedcount.com avatar

Not an answer to your question, but have you checked out Bedrock Linux as opposed to installing multiple distros? Or maybe using virtual machines?

Macaroni9538 OP ,

I have HEARD of Bedrock but never really read about it. I will give it a check out now. Not too interested in VM’s ATM

Dotdev ,
@Dotdev@programming.dev avatar

Bedrock linux is not a vm. It is a meta distro means it runs on top of your distros kernel.

Macaroni9538 OP ,

Oh I wasn’t inferring Bedrock was VM, was just saying I dont want to explore the VM route… I tried to before and messed things up lol though I will learn about it down the road! I’ll read up on Bedrock though

Gurfaild ,

One thing that might matter is that if all distros use the same swap partition for hibernation, you shouldn’t boot one distro after hibernating another or you might overwrite the saved RAM contents.

If you use different swap partitions or files, you probably should still avoid writing to a partition that belongs to a distro that isn’t actually shut down.

Macaroni9538 OP ,

Ok, so maybe make a separate partition for each distro and a swap for each distro too? I’m also confused about the bootloader part too. I’ve never manually partitioned for a distro before, just always did the auto/recommended route.

Gurfaild ,

I think the easier solution would be not to use hibernation - either shut the system down properly or use suspend-to-RAM.

If everything works, the bootloader should be whichever GRUB version comes with the distro you install first and the other distros’ installers should just add entries to boot them.

Macaroni9538 OP ,

Perfect! Thanks for this info. Sounds much easier. Is there one particular bootloader you think would be BEST for multibooting different distro types? My guess would be a Debian system first probably? and do you recommend I make separate partitions for everything or just install the other distros into the same partition as the first install?

Gurfaild ,

There shouldn’t be any significant difference between the GRUB versions that come with different distros, so the order in which you install the distros doesn’t really matter.

You can’t install multiple distros on one partition, so you need at least one partition per distro.

Macaroni9538 OP ,

Ok cool, thanks. Does the bootloader partition get created automatically by the installer or is that something you must do manually? and should each partition for each distro have it’s own swap? or just one swap to handle all three?

Gurfaild ,

The first installer will install the bootloader automatically.

It will also create a swap partition unless you tell it not to, and all distros will use all swap partitions by default, so you don’t need more than one per disk.

If you don’t hibernate one distro and then boot another, sharing a swap partition isn’t a problem.

Macaroni9538 OP ,

I appreciate the patience and helpfulness. Dont the distro installers automatically create a swap for you? if not, how large of a swap do you recommend and would that just be an empty fat32 or ext4 partition?

Gurfaild ,

A swap partition doesn’t have a filesystem - it has its own partition type and doesn’t contain files. The installer might create one automatically or it might not - if it asks how large it should be, a good rule of thumb is to use the same size as your RAM.

If that turns out not to be enough, you can create a swap file on a data partition later and if it’s too large, you just wasted a few GB but usually that doesn’t matter.

Macaroni9538 OP ,

Ok so then in this case, create one swap approximately the size of my RAM as I guess the first partition? and then each partition beyond would be just for the distros? i’ve scene diagrams of efi and bios partitions in the front too, what about those?

Gurfaild ,

The order of the partitions shouldn’t matter - usually the EFI partition comes first if there is one at all, but as far as I know that isn’t actually required.

Macaroni9538 OP ,

thanks, makes it sound easier then. but what about the mount points like I mentioned? and do people make their own partition for the home directory??? and how does a storage partition integrate with three different distros? I just want to make sure I cover all my bases.

Gurfaild ,

You can create dedicated partitions for /home, but unless you know why it makes sense in your specific situation, you shouldn’t.

The data partition is just another partition that you can mount somewhere, for example /mnt/storage.

Macaroni9538 OP ,

Gotcha, thanks again. Now creating these partitions is a bit more clear, now I have to learn about mounting and all of that. No clue on that side of things

Pantherina ,

No need for manual partitioning, just resize the storage partition of the former distro, install automatically, repeat

Macaroni9538 OP ,

Thank you!

Macaroni9538 OP ,

Oh and just to be sure, I need to use the live iso for the distro in order to resize partitions, is that right?

Pantherina ,

No, as I said. Install, in the installed OS use the partition manager to resize itself. I think that should work best.

During the live usb installer phase the system is not installed on disk. You can resize the partition of a running system afaik. If not, yes you may need to use a live usb to do that.

But main question, why?

Macaroni9538 OP ,

Because I would like three daily drivers, one for each main distro type so I can learn more and explore other types like arch and rhel based, since I’m not knowledgeable on those. But I also want them to be workstations too, for normal usage. Just variety… And of course for learning. I dont just want a live disk to tinker with and thats all. I want these distros to maintain everything I do inside them just like any physically installed distro. Maybe I’m not properly conveying my view idk

Pantherina ,

I dont see how this is important.

  • selinux vs apparmor
  • flatpak vs snap vs some package managers with varying names, thats it
  • zram vs swap
  • some filesystem differences

In the end its all GNU+Linux, the usage is the same. Just use Distrobox and learn how to use that, its so awesome.

You have a full CLI environment for each distro there, just no SELinux, apparmor or systemd.

I would recommend you to try Fedora. Mayve even the immutable spins. Thats the future and you can try a lot anyways like what I descriped.

Macaroni9538 OP ,

Thanks again. Im not quite sure what these immutable distros are, I keep hearing about them. Gotta do some researching!

Pantherina ,

Immutable + atomic. Its similar to Android or IOS. It can be explained like that:

  • big parts of the core OS cant be changed easily. Immutable means “you cant change/break it”. This also applies to software, third party install scripts, viruses and other things that might break your system.
  • atomic: updates are done like this:
  1. The system is an image, as if you would live boot a usb stick
  2. When you do an update, the package manager checks on the server for changes, I think it uses git. Only the changes are downloaded.
  3. rpm-ostree has downloaded the diffs, updated packages basically. Instead of just replacing your local packages, from the full operating system on your machine it builds a new image. Remember, the image is like the live USB or CDROM you can boot and use but not change.
  4. This new image is staged. This means if you reboot, you will boot into the updated version automatically. Updates go in the background and you will have a working system without any downtime. This is so much faster than for example Windows Updates or even standard Fedora “secure updates”.
  5. atomic means that if something in that process fails, you will simply not get an update. So updates cant break anything.
  6. But dont forget its Linux and not Android. You can actually install what you want. This means during the “get updates phase” you can not only download “regular update packages” but also any other Fedora RPM package you want. This is called layering, as now this package is always added to your system on every update, as remember on every update your system would get resetted. You can also remove preinstalled packages, a common one on Fedora is the Firefox RPM.

That you can normally install apps is thanks to Flatpak, so you dont need to reboot on every install. The idea is to have a very slim core system and “outsource” as much as possible to Flatpak. This means at the same time, official packages, less work for the distro maintainers, and containerization.

In the future even more packages will be removed as native packages and installed through Flatpak. Buts still a developing technology and important things like native messaging or USB access (hardware security keys) are still missing.

Macaroni9538 OP ,

Very very helpful. I tried to install Silverblue last night, but couldn’t get it to work. after a successful install, when I go to restart, it just wouldn’t restart, it would hang.

Pantherina ,

Hmm weird

Macaroni9538 OP ,

Hey buddy! sent ya a dm a little while ago

doomkernel ,

It could be done if you partition your disk prior to installing but, if there is no particular reason, you could make a bunch of VM’s and daily drive one of the distros.

Macaroni9538 OP ,

ummmm I dont really think I can give a good reason lol, just the way I want to do it. I feel if they’re physically installed on my system, it would sort of force me to use other options, thus furthering my learning. I feel VMs or more impersonal and temporary. I use Ventoy for live OSs just to get a feel for things, but when it actually comes to daily use, I’d rather have them installed.

ares35 ,
@ares35@kbin.social avatar

pick one. you'll end up with a favorite you use all of the time anyway, and sooner than you expect--after rebooting into this-or-that constantly to run something specific that's set up in it, or when you get tired of duplicating efforts a half-dozen times in all of them. you'll soon forget which distro has which app set up which way.

the rest in VMs so you can be familiar with their package management, system layout, and such. You can spin 'em up, destroy 'em, run them simultaneously, try out a new package or application or configuration, whatever; and in that process, mess shit up (it happens) without any damage done to your daily-use OS.

you mess up your octo-boot system and it won't boot up. you need answers. your only pc is on vacay. what are you gonna do? use your phone's tiny screen and poke questions or searches into google or stack one letter at a time? nah, mate. don't make it difficult when it don't need to be.

Macaroni9538 OP ,

well damn lol… this is deflating. I honestly would rather avoid VMs for now. trying to focus more on the meat and potatoes of Linux and other topics. I took a deep dive down virtualization and I got lost quickly and broke some stuff haha not really sure if now is the time for me to learn it. I’ve sorta put it on the backburner for now. So no easier, alternatives? You think manually doing this is not a good idea?

Falmarri ,
@Falmarri@lemmy.world avatar

Just pick a distro. It sounds like you want to learn. I suggest arch. It does the least for you, is the least opinionated, but also has by far the best documentation (arch wiki is the de facto linux documentation).

The difference between the distros is otherwise simply what package management tool they use, and what packages are in their repository. Nothing else is different that’s of any importance.

Boterham ,

To be honest, VMs are probably the easiest way to do it, like many said already. You don’t need to deep dive into virtualization to set up a few VMs and use them to learn about different distros. No need to think about how to partition your drive, mounting swap partition, disable hibernation… Want to try out another OS? Just create a new VM and you a ready to use it. You can simply create shared folders between host and guest and enable shared clipboard, if you want. Switching between the different systems is much easier than shutting down and rebooting another OS. You can even run them at the same time if you want and your hardware is good enough. And aside from the better convenience, the potential to break something is much less compared to tinkering around with a multi boot system, imo.

Macaroni9538 OP ,

Do you have a recommended platform for virtualization that would fit my project?

Boterham ,

I use VirtualBox, mostly because I started with that years ago amd had no reason to change. From what you described, it’s capable of your project.

Macaroni9538 OP ,

Perfect, thank you!

Macaroni9538 OP ,

Do you have a recommended virtualization platform for such a project like this? Looks like that will be the route to take. I just want them to be actual workstations that keep all your settings and everything in place, not just like a sandbox to play around with. Not only do I want to learn other distros but I would like the option of actually using them for daily use as well

lloram239 ,

You can use one big BTRFS and multiple subvolumes, that allows you to share the free space across all the distributions. If the distribution supports that, that might be the easiest option, though not all of them do (Guix didn’t last time I tried).

Using distrobox or a VM is also an option and saves you the dual booting, which will get old fast.

throwawayish ,

Perhaps consider watching this excellent video guide on dualbooting and multibooting by DorianDotSlash. It was what I used as a reference the first few times I engaged in dualbooting and/or multibooting.

PipedLinkBot ,

Here is an alternative Piped link(s): piped.video/watch?v=Crleyglb4mo

Piped is a privacy-respecting open-source alternative frontend to YouTube.

I’m open-source, check me out at GitHub.

Macaroni9538 OP ,

Thank you so much

ultra ,

Not really a solution to what you need, but you should consider distros other than manjaro, it does some shady stuff, has ddos’ed the AUR multiple times (even though the AUR is “unsupported”) and let the security certificates for their site expire (their solution: to turn back your clock to update the system). You should try endeavour instead.

Macaroni9538 OP ,

Very interesting and also such a shame. Manjaro seems to have most support and definitely looks and feel the greatest that I’ve tried, all well being newbish friendly

ulu_mulu ,

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?

If you install one distro on full hard drive you won’t have room anymore for the rest, if you want multiple operating systems on your machine you need to partition manually with some planning ahead on how to allocate the space.

Any thing to worry about with conflicts between different types of distros

They don’t interfere with each other, they don’t even “see” each other once you booted into one, they only share the boot manager.

That being said, what you intend to do was the only way to learn many years ago when computers weren’t as powerful as they are today (I did learn that way), but today ANY PC can manage virtual machines, they are much more practical and can save you a lot of time when you mess things up, because whatever you do is confined within the VM and doesn’t affect your PC as a whole.

Install Virtualbox, have a look at how it works and use that to do all experiments you want, you can even learn to multiboot inside a single VM, without the risk of messing up your system.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • [email protected]
  • random
  • lifeLocal
  • goranko
  • All magazines