I've used Vagrant with Virtualbox before but VB is not working on this computer so I thought I would try a different approach, but I can't quite make sense of this cluster of software, what their uses are individually and interdependently... I know Vagrant boxes can have QEMU or Libvirt (or KVM?) providers, and there's qemu, and qemu-kvm, and vagrant-libvirt, and I just can't compartmentalize it all and their interconnection. I want to run virtual machines with synchronized folders on my host. Are all those required, and how? If not, why and how would one use all together? So I can better understand. On Debian 10
Asked
Active
Viewed 9,029 times
18
-
It might be helpful for you to get VirtualBox up and running since you already seem more familiar with it. – oxr463 Apr 20 '20 at 13:59
-
Related: https://serverfault.com/questions/208693/difference-between-kvm-and-qemu – smwikipedia Feb 09 '23 at 06:12
1 Answers
31
Differences between QEMU, KVM, and Libvirt
QEMU is a machine (hardware) emulator.
KVM is a kernel module for Linux to enable virtualization; this is the hypervisor.
QEMU can run without KVM but it can be quite a bit slower.
libvirt is a virtualization library which wraps QEMU and KVM to provide APIs for use by other programs, such as Vagrant, which is a tool for creating virtualized development environments.
Summary:
- Vagrant uses libvirt.
- libvirt uses QEMU and KVM.
How to use with Vagrant
First be sure to install the required dependencies:
apt-get build-dep vagrant ruby-libvirt
apt-get install qemu libvirt-daemon-system libvirt-clients ebtables dnsmasq-base
apt-get install libxslt-dev libxml2-dev libvirt-dev zlib1g-dev ruby-dev
Source: https://github.com/vagrant-libvirt/vagrant-libvirt#installation
Then use the following command to run:
vagrant up --provider=libvirt
Or, use an environment variable instead:
export VAGRANT_DEFAULT_PROVIDER=libvirt
Source: https://github.com/vagrant-libvirt/vagrant-libvirt#start-vm

oxr463
- 1,573
- 3
- 14
- 34
-
3
-
2
-
3Replace QEMU and KVM with either VirtualBox or VMware; both are hypervisors that come with their own drivers. – oxr463 Aug 05 '20 at 19:22