this post was submitted on 26 Jan 2025
90 points (96.9% liked)

Linux

50682 readers
1678 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

VirtualBox is ridiculously simple to set up and get virtual machines going. Shared folders, shared clipboard and much more are no issue.

But.

It eats resources. The installed virtual machines (VM) run relatively slow. What have you found to be feature comparable - and most importantly more resource-efficient - alternatives for running VMs under Linux?

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 54 points 1 month ago (5 children)

Under Linux, the recommended route is KVM/Qemu, with Virt-Manager as the GUI front-end for them. You will need to follow tutorials to install it correctly, as it requires special steps, e.g. adding them to specific usergroups. But once it works, it works well.

[–] [email protected] 15 points 1 month ago

definitely not as easy as virtualbox

[–] [email protected] 10 points 1 month ago

Yes, I just switched to Qemu. Its great.

This video helped:

https://youtu.be/BgZHbCDFODk

[–] [email protected] 5 points 1 month ago

Yea, the installation isn't too difficult. Looking at my groups as well I think it's only the libvirt group that you have to add a user to for KVM/QEMU with Virt-Manager, but the same could be said for VirtualBox as I believe you have to still add the user to the vboxusers group if you were to install it instead.

[–] [email protected] 2 points 1 month ago

I recall I had to do like one thing to get it working outside of just apt install but I can't for the life of me remember what it was. I just put the error in a web search and found what was needed to deal with it.

[–] [email protected] 2 points 1 month ago

Not for the faint of heart, but I'll keep it in mind.

[–] [email protected] 43 points 1 month ago* (last edited 1 month ago)

virt-manager is my go-to. There's also Gnome Boxes, but I've never used it myself. virt-manager is the best I've tried, personally. Both use KVM, so they should be much more resource efficient

[–] [email protected] 28 points 1 month ago

KVM, QEMU are the most common solutions here

[–] [email protected] 26 points 1 month ago (1 children)

works decently enough for me is https://virt-manager.org/ to deal with libvirt. its not quite as nice in some ways but way less resource intensive.

[–] [email protected] 3 points 1 month ago (2 children)

I agree. The only feature where I'd say it's weaker feature-wise is it doesn't have any form of virtual GPU acceleration - either you deal with software rendering or have to pass through a graphics card (I've done it, but it's not easy.).

Otherwise, I'd say it tends to run better than VirtualBox, though it's been years since I last used Vbox anyhow. A plus is Virt Manager comes in most distro repos, whereas VirtualBox doesn't. Also, it allows you to directly edit the XML, so you can do some cool stuff that would be really annoying (not impossible) to do in VirtualBox.

[–] [email protected] 5 points 1 month ago

actually, you can do vulkan passthrough if the guest machine is also linux

[–] [email protected] 1 points 1 month ago

That's my struggle with this solution as well.

Still, a solid choice.

[–] [email protected] 18 points 1 month ago* (last edited 1 month ago) (1 children)

https://virt-manager.org/ is a no brainer. Built upon libvirt/Qemu/KVM it's way more powerful and pretty much just as easy to use. There is zero reasons to use anything else.

[–] Zachariah 2 points 1 month ago (1 children)

How easy is it to convert a VirtualBox machine+hdd to Virt Manager?

[–] [email protected] 20 points 1 month ago

Pretty damn easy.

qemu-img convert -f vdi -O qcow2 Windows10.vdi Windows10.qcow2

Here's a more complete guide: https://cubiclenate.com/2024/05/30/converting-vdi-to-qcow2-step-by-step-guide-for-virt-manager-migration/

[–] [email protected] 14 points 1 month ago (3 children)

Definitely if you're on Linux, use Qemu (and the best is to install a GUI to use it after)

[–] [email protected] 4 points 1 month ago (1 children)

I use Quickemu for mine, makes it really quick and easy to get a new system up and running.

[–] [email protected] 1 points 1 month ago

Using virt-manager, never tried quickemu

[–] [email protected] 2 points 1 month ago (1 children)

I've looked at it. It comes up a lot. Thank you.

[–] [email protected] 1 points 1 month ago

Did you use virt-manager with it?

[–] [email protected] 1 points 1 month ago (2 children)

Really wish we could get in the habit of recommending GUIs first, not last.

[–] [email protected] 4 points 1 month ago

Without any kind of software behind GUI this is almost useless and I think that CLI (or even TUI) are today so underrated that we should give more and more power to them instead of GUI

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago)

Really wish we wouldn't have to separate the two. This adds a complication layer for exiting Windows users.

Ideally: install app (insert name). Run and enjoy.

[–] [email protected] 12 points 1 month ago* (last edited 1 month ago) (3 children)

As jet points out, QEMU for actual hardware virtualisation.

There is one relevant thing, which is not exactly in the same category, but does somewhat similar thing:
containers
most popular example being Docker
https://en.wikipedia.org/wiki/Containerization_(computing)
containers don't emulate whole hardware stack like virtual machines do, they just run the guest OS on top of host OS.
so because they don't put resources towards emulating hardware, they are much more resource efficient.
so if your problem is "I'm running Fedora but I want to run something that for some reason runs just on Ubuntu", then you could use containers for that.
containers are mostly used in headless environments (as in servers, no GUI), so running and displaying desktop Linux inside them is a bit tricky, but it can be done.

[–] [email protected] 12 points 1 month ago (1 children)

they emulate just the OS

Containers don't emulate anything. They have an OS installed within them. Typically you use Alpine Linux which super minimalistic and lightweight.

[–] [email protected] 3 points 1 month ago

yes, valid point, thank you for the correction

[–] [email protected] 4 points 1 month ago (1 children)

I've been using https://containertoolbx.org/ recently to manage my "other distro" requirements. It doesn't do anything special but works nicely as a wrapper around podman and does all the bind mounts and uid mappings so you can just enter your $HOME as though you have set up your account in a new OS.

[–] [email protected] 2 points 1 month ago

Distrobox is Toolbx but more portable (packaged on basically all distributions) and supports way more distributions as guests. I recommend using that if not on Fedora or you want to run a different guest than Fedora.

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago)

for running GUI app, I use flatpak which is a sort of a container / sandbox

[–] [email protected] 9 points 1 month ago* (last edited 1 month ago) (2 children)

Vagrant by Hashicorp.

Edit: if the news of IBM acquiring them goes through, I will cry. And we live in the worst timeline, so it'll happen.

[–] [email protected] 7 points 1 month ago

ibm is going to buy the entire ansible-verse; so be ready.

i will weep with you in solidarity. 😉

[–] milliams 3 points 1 month ago (1 children)

While it wasn't a requirement, be aware that Vagrant (along with all Hashicorp products) are no longer free software and are instead under the Business Software Licence.

load more comments (1 replies)
[–] BrianTheeBiscuiteer 7 points 1 month ago

I haven't used it nearly as much as VirtualBox but Boxes (flatpak) is definitely a breeze to use. It uses KVM under the hood I think. If your use cases are complicated it might abstract away too much though.

[–] dinckelman 6 points 1 month ago

Especially on Linux, libvirt/qemu on kvm is a no-brainer. It works, it's fast, the setup is practically effortless

[–] [email protected] 5 points 1 month ago* (last edited 1 month ago)

Qemu/Kvm or VMware(Sadly only works on some distros and vmware works best with Windows)

[–] [email protected] 4 points 1 month ago (1 children)
[–] [email protected] 1 points 1 month ago

This has been mentioned a few times here. Didn't know that. Thank you.

[–] [email protected] 3 points 1 month ago
[–] [email protected] 3 points 1 month ago

What about VMware Workstation Pro? Or are you looking for something FOSS? It’s easy to download without creating an account and I found it easier to setup that VB. I actually switched because I’d been having connectivity issues with VB and it took me a year to realise it was a VB issue.

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago)

VMware workstation is free, it's not open source but it's faster than VirtualBox, if you want GPU passthrough KVM is the only choice but require quite bit of effort to setup

[–] Jestzer 3 points 1 month ago

I don’t know if it’s more resource-efficient, but when I wanted to start using VMs for work, I knew VirtualBox would not be a viable choice (thanks to Oracle and their horrible licensing), so I chose GNOME Boxes and have been pretty happy with it. I didn’t do any tests so I can’t say for certain , but it doesn’t seem like the resource consumption is that much different.

[–] [email protected] 2 points 1 month ago (1 children)
[–] [email protected] 2 points 1 month ago (1 children)

This "Beginners Guide" they have there is a serious turnoff. They might want to consider a more lightweight and friendly intro to their software. 😄

Still, if I find the time to go through this massive wall of text, I will.

[–] [email protected] 1 points 1 week ago

To be clear, I don't recommend it. But it was once favored over KVM for a variety of applications and it works in a fundamentally different way. I'm just surprised how quickly it's lost favor among techies.

[–] [email protected] 2 points 1 month ago (1 children)

You can specify the virtualization engine in VirtualBox, including KVM.

A couple of easy virtualization tools that allow you to create VMs in a few clicks are Gnome Boxes and QuickEmu, which leverages Qemu and KVM

[–] [email protected] 1 points 1 month ago

Good tip. Thanks.

[–] mvirts 2 points 1 month ago

Virt-manager with qemu-system, although if you use the kvm driver for both performance should be about the same I think.

Don't forget virtualbox has a lot of configuration options that may improve performance, Ive never had a problem with it but also never need high performance from a VM.

[–] [email protected] 1 points 1 month ago (1 children)

There's nothing better than virtual box for desktop environments, especially after you install the guest tools.

I don't know what you mean by "it eats resources" - of course it does, you're emulating and entire system. What are your expectations?

[–] limonfiesta 6 points 1 month ago* (last edited 1 month ago) (1 children)

Virtual Box is a Type 2 hypervisor, which means it's running on top of the OS, and not directly on the hardware.

KVM is a Type 1, which runs directly on the hardware itself.

There are pros and cons to each, and VBOX is a great piece of software, but it is more resource intensive than other options available.

[–] [email protected] 2 points 1 month ago

And it performs very well, especially for gui applications. It even supports multiple monitors for the guest.

For running a desktop it's clearly superior and "fast enough". I used it to run my primary development environment for years.

load more comments
view more: next ›