I’ve been using VirtualBox for a year now and I’m getting pretty ticked every time I have to start a new Ubuntu VM. I speed more time going to root shell prompt to add myself to sudoers file, add myself to groups, the addons, shared folder and storage not mounting right away…… etc etc. I’m sure I might be not using VirtualBox to its full potential to avoid long setup times but I feel like I shouldn’t have to deal with this. It should act is it being installed on a bare metal machine. Is there a more modern approach? Something more streamlined? FYI I’m learning containers and miniKube so I’m not jumping in the deep end yet.
Incus has a great selection of images that are ready to go, plus gives scripted access to VMs (and LXC containers) very easily; after
incus launch
to create a VM,incus exec
can immediately run commands as root for provisioning.Some combination of Ansible and cloud-init is probably what you’re looking for.
This. Cloud-init, or autoinstall for Ubuntu, to get the install done, then use ansible for anything more.
There is also Vagrant which lets you specify VM specs, but also lets you install software in the VMs automatically. It also works for other VM software then just Virtualbox.
Thank you I’ll check it out.
Some good advice already in this thread.
Also worth considering QEMU as an alternative to VirtualBox. The Virt-manager tool is decent way of managing machines, and it’s relatively straight forward to create a base machine if you’re duplicating it. Virtualbox is perhaps initially more user friendly for absolute beginners, but once you have any familiarity with virtualization I’d suggest QEMU offers much more.
Also I find integration between the guest and the host linux system is generally more straight forward. Most linux systems already ship with samba and other relevant tools QEMU uses to interact between host and guest. There isn’t a need to faff around with the guest-additions stuff. Plus KVM virtual machines can run with near native performance.
Thank! I’ll check out QEMU. Sounds like something I need.
Simple method is just keep a ready to go VM and clone it.
Thank you!
NP! That’s how I do it on proxmox, I’ll start the VM every so often and update it. Only takes a few seconds to clone so it’s nice and quick to do.
Just read their doc and saw a video about. Very streamlined. I love it.
snapshots, clones, or automated setup with ansible or such
Save the machine state after you get it booted up and configured. Host+T
Mandible is on my list of things to learn and play with. I’ll check it out thank you.
Use virt-manager
deleted by creator
https://www.alpinelinux.org/about/ Check out Alpine. Might just be enough for what you want
I don’t think it’s a OS thing, I think it’s a hypervisor thing.