I have a friend thats setting up linux (ubuntu) on his machine. He has a windows installation. I personally use mac as my primary OS, but I’ve had a linux partition on my machine as well, and I’m having a slightly hard time giving him good advice as to what solution he should choose when setting up linux (I don’t even know how I would partition a disk on a windows machine to prep it for dual booting).
My question is quite simple: What are the pros/cons of WSL vs. Dual Booting vs. Virtualbox, both with regards to setup and with regards to usage?
WSL: If your friend is a dev and needs Linux cli utilities, use this. Dual Boot: If your friend wants to daily drive Linux, use this. Shrink Windows NTFS partition within Windows then install Linux to blank space. Virtualbox: Testing ground for dual boot, your friend can familiarise themselves with Linux safely using a VM.
This is what I was going to say.
- If they’re a dev WSL is a godsend for development.
- If they are looking to move away from windows, dual boot or live cd/thumb drive are good ways to test things out.
WSL Pros: easy to use and to install Cons: it still runs on top of Windows and some hardware functions are not available. Also, terminal-only
Virtualbox Basically the same as WSL but it could be slower being a layer2 hypervisor
Dual booting Pros: a full-fledged Linux OS Cons: Harder to install and to mantain.
Also, terminal-only
this is not the case anymore. You can run graphical applications.
I didn’t know, thank you
While they do work, the UX is kinda gimped (knowing Micro$oft - that’s on purpose).
Source: using Rider Snap in Ubuntu in daily work
Dual booting Pros: a full-fledged Linux OS Cons: Harder to install and to mantain.
Also, sometimes Windows being an ass and “accidentally” breaking the bootloader.
I advice anyone to have just one OS per drive installed. Keep Windows and Linux separate if possible, or some Windows update may break GRUB.
They did that to my daughter. I’d setup a laptop for her. The windows boot partition was still there (my bad for scraping every last bit of Windows off - it was setup in haste) and she accidentally chose windows from grub one day. The Windows Bootloader decided to change boot options in the bios and then remove grub somehow, but there was no windows on disk to launch so it was bricked.
The next time I could out hands on the computer I scoured that disk clean of Microsoft’s plague rats so they wouldn’t get a finger in edgewise again.
Then you can wipe out windows when you realize you don’t use it anymore :)
Maybe, another consideration might be to not run Linux on Windows in some way, but the other way around.
Linux offers great virtualization, maybe you can use QEMU with KVM and GPU passthrough, and then run Windows inside this box.
I find Linux more powerful and less annoying to use day to day, and having those annoyances inside a small virtualized container I can just shut down is more peaceful.
WSL can be restricting, since Linux can’t access anything, and I think getting “the real and proper thing” might be better.
And dual booting, by having both Windows and Linux on the same drive, is something I would advise against. Windows doesn’t play nice with others and often “accidentally” breaks the bootloader and hard drive permissions, leading only to trouble. If you dual boot, install them on a separate drive and select the booting drive manually in the BIOS.
Also, why do you want to run Ubuntu specifically? Did you also look up for alternatives, like Fedora or Debian?
If you are going to dual boot and your computer has room for 2 drives. The way I would recommend doing it is to add a second drive for Linux, and disconnect to windows drive from the computer. Do a normal linux install. And then add the windows drive back in. Then you can set one of the drives as the default boot device and if you want to boot to the other just open the Boot options on boot.
This keeps things totally separated and you can even remove one of the drives later if you want to single boot.
Windows as a daily driver, want to do some development / docker usage based on Linux - WSL. Also you can if I remember correctly only run windows containers on windows as well as linux containers. You cant run windows containers on a linux host
You want to daily drive Linux but sometimes swap back to windows for some specific purpose (like specific games or applications that proton doesnt work with), Dual Boot
Only reason I would use virtualbox over WSL is if I need to work with a fully fledged Linux OS. I havent needed to do this since WSL though
To prep for dual booting, simplest is to have windows installed first then use the graphical installer from Linux distro which lets you select a partition to split, resize and setup GRUB etc. Very easy to do. BACK YOUR SHIT UP THOUGH
I’d love it if VirtualBox emulated some really basic 3D cards (Voodoo 3, Radeon 9800) so I could do some old school gaming. I have a few old Windows games that won’t run under Wine.
Dual boot
WSL is pretty good these days. Dual boot with Windows is still a pretty risky move with how easily Windows will overwrite your boot loader. I usually recommend you pick one os or the other rather than dual boot, so I’m in favor of WSL or virtualbox. Personally, I have never cared for needing to reboot just to switch operating systems. I tend to stick with one and the second one does nothing but take up disk partition space.
WSL lets you run both simultaneously without rebooting. Virtualbox lets you do the same with extra setup. Virtualbox makes it easier to do GUI setups than WSL does, and the network configuration is a little more obvious.
The best option is to get a second machine so you can run both. If that’s not an option, virtualbox is the better choice for learning. If you just want a Linux environment on your existing setup (similar to using a Mac) then WSL is usually good enough
Depends on their specific needs, so they should probably jump into some Linux community and ask for themselves.
My anecdotal evidence includes vastly different experiences.
I have a friend who hates Linux desktop and exclusively uses it for running dev related stuff via WSL.
Another who uses Linux desktop primarely, but dualboots Windows for certain games.
And I am on Linux single boot and rarely use KVM (without GPU) for running my CNC or other software.
For a person with not much familiarity with Linux, and just wants to check things out, I would recommend starting out with a VM. WSL is good, but that is not the “Linux experience”. Moreover, if they are not already familiar with the command line, it may be a bit intimidating. The same goes for dual booting. It’s more technical, and it’s more appealing to just jump back into Windows when things go wrong on Linux. VM approach though, gives you a sandboxed space (with DEs and all) where you can smoothly get familiar and comfortable with Linux before making the final switch. That’s my personal opinion for beginners.
WSL windows street legal… cant take m$ threads serious.