My daughter is starting a college computing course next month and has been told they will be using linux.
She has a fairly recent, last 5yrs or less I think, intel macbook but knows nothing about linux or vm's.
I advised her to install Ubuntu in a VM when she asked about it, she asked how to do this. Initial thought is Virtualbox but I've not used MacOS since well before it became MacOS nor used VirtualBox in many years, have heard of new shiny new things like UTM, Parallels & VMWare.
Is it a reasonable suggestion to just use VirtualBox? Is there a better option?
Bit of a dad moment; "Just install Linux and then I can help you", "But how do I install Linux dad?"
I am partial to a dedicated throwaway laptop because I have had the displeasure of accidentally blowing away my VM image’s code files on a roll-back, which is harder to do on bare metal. The biggest lesson learned their was to immediately learn how to use a remote server for code repository and push to dev branches often.
Neat thing I learned recently: create and attach a second virtual disk for data, set it to writethrough mode in virtualbox. That way it is excluded from snapshots and rollbacks.
I guess also depends what they'll be doing. She could in theory install XQuartz and run GUI apps over SSH but that might become more complicated.
If they're gonna do networking and stuff I'd maybe also get into VirtualBox just because networking in VirtualBox is easier to deal with. UTM is kind of like using libvirt on Linux, it relies on the host to do a bunch of stuff like bridges and firewalls whereas VirtualBox just handles most of it internally and has a nicer GUI for it.
Virtualbox all the way. That way, she can still run her day to day apps in macOS while only using virtualbox for the class. And here's the best part - once she reaches the point where she knows the setup she likes, she can create a new VM and set it up cleanly and delete the old one. I would only use the boot camp option if she will need to connect to hardware. VirtualBox can be finicky when it comes to USB devices.
Does she even need Linux? 99% of things that run on Linux will also run on MacOS (or have a MacOS version).
If you need a VM, Virtualbox is good enough. I'd recommend Ubuntu, simply because that's what most people use, ergo you'll find tutorials/information for every little aspect of it.
If you get it from the Mac App Store, it costs $12 that goes to supporting the devs, and keeping the app on the App Store. But you can download the dmg that’s free
Does she actually need Linux or is using a unixoid OS fine? A lot of the time installing homebrew (or whatever the package manager was called) on MacOS can suffice for several use cases.
Other than that, if you're not needing apple exclusive software on it, installing Linux on the Macbook can be a good option.
If you definitely want virtualization, go with VirtualBox
The school may have edu licenses for a macOS hypervisor product that makes it cheap or free. The teachers may recommend something. Ask the school first.
VMware Fusion has a free version for personal use for one VM. IMO it’s the most polished, and the recent tech preview supports video acceleration (really pretty graphics) and super fast drag n drop for easy and fast file sharing between Mac and Linux.
UTM or Virtualbox would be the best alternatives, these have no limitations and are completely free but lack some of the polish and stability present in Fusion.
If possible, buy an old Thinkpad for 50-100 bucks and install on a real hardware for the best experience.
I have no experience with any Mac hardware, but Virtualbox has improved a lot during the years. It won't have accelerated graphics, but still fast and responsive.
At that point, don’t buy a damn thing and simply partition the HD and dual boot it so both OSX and Linux run natively. That’s what I did way back when in uni
Just so you know, running it on bare metal on an Intel Mac is also quite easy using Bootcamp (which is preinstalled and guides you through the install process)
I’ve heard utm is pretty good. I’ve used it on iOS and it worked fine. It’s also foss(based on qemu I believe), while parallels is $169, or $59/year for students
I'd say Virtualbox should be a good fit. I'm using it myself, mainly to quickly set up VMs for trying out new stuff, most recently Kubuntu and Manjaro distros.
I don't know UTM. I've used Parallels before but it's just not worth the cost for what I need it for. Then there's VMware of course, which apparently also has free licenses for personal use. But since I'm happy with Virtualbox, I don't think I'm going to use anything else anytime soon.
Because if it's server side Linux... then Docker is the way to go. It will run Linux inside a very light weight virtual machine that you barely even know is running at all.