Is experimenting with Linux for the first time as a virtual machine beneficial?
Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
View Poll Results: Is using a virtual machine a good idea for first-time Linux users?
Yes. It is a great way to try Linux out.
22
55.00%
No. It prevents adequate trial and experimentation.
17
42.50%
It makes no difference. It's the same as dual boot or full-time installing.
Is experimenting with Linux for the first time as a virtual machine beneficial?
I can't help but notice how many people asking newbie-type questions are running Linux on a virtual machine these days. I must wonder: is this really a good way for new users to experience Linux for the first time?
Perhaps I am just a lazy man, but I cannot imagine having been successful at becoming a full-time Linux user, or even learning a significant amount about it, when using it through VirtualBox or VMWare. It was that push of urgency that I had to make things work or figure out how to do things that made me do it. When I was putzing around with Slackware 3.2, I was forced to spend hours tinkering with things to get them working, or I didn't have the privilege of seeing it work . . . at all. If I had nice, comfortable Windows 95 lurking in the background back then, that circumstance would never have existed.
Plus, what is learning Linux without the thrill of getting X working perfectly with your video card, or finally building that custom kernel just for your hardware and seeing it boot for the first time?
I am not trying to cast any dispersions on those you choose to do this. After all, it seems to be quite a sensible way to "dip one's toe into the water," but I think dual booting or just jumping in headlong would be a more beneficial choice in the long term.
Also, it seems that many more people who are only casually interested are now prone to do this virtual machine Linux experimentation, and thus wind up flooding LQ with half-researched and poorly constructed questions. With dual-booting or all-in switchers, a lot more dedication is required, and a more serious approach to learning is likely.
Different strokes for different folks. Some people prefer to dive right in, others like to ease their way into the water.
I personally started by building a second machine out of spare parts and loading Linux on it, while still using Windows on the other as my main machine while I got used to the new environment. It allowed me to remain productive on a system I was familiar with until I got up to speed on the new one. After about a year-and-a-half of switching back and forth between them, I finally decided to wipe the windows system completely and go straight linux (the fact that it went belly-up at that time and forced a re-install anyway helped that decision ).
OTOH, I consider the decision to switch from Mandrake (now Mandriva) to Debian as being the point where I truly started to learn Linux. I learned much more, and faster, by being forced to deal with the internal workings of the OS, than I did with Mandrake's "user-friendly" hand-holding.
So while in general I agree that the best way to learn is to just take the plunge, there are other factors to consider as well, like whether you can afford to take the time and effort to tackle the steep learning-curve involved in such a quick transition.
1) Speed - I can't say that any VM runs any OS without any overhead. There's always overhead, and this will probably discourage you from running on OS that you might think is slow based upon running it in a VM.
2) Stability - No VM is perfect, in fact, most are far from perfect. They can introduce bugs that do not exist if you were to run Linux outside the VM.
If you do take these things into account, you can go ahead and use a VM if you have to.
I wanted a choice: "It depends." For someone who is a) already a Windows "power user", b) has a newer PC with plenty of CPU and RAM capacity, and is c) very comfortable with tweaking their computer (i.e. understands hardware, partitions, booting, etc.), it probably doesn't matter too much; a VM might be a fine learning environment and decrease the chance they will screw something up "because they tried Linux."
For the overall PC newbie, like I was when I started, I think you miss out on a lot of the "joys" of burning and booting and working through hardware issues that teach you so much about computers independent of Linux. And if your hardware isn't up to it, a VM will be unsatisfactory in terms of performance.
Sure it is. But the question is, is it still good compared to using "the real thing"? Hardly
I've seen Windows run on virtual machines, so if I had always used Linux systems and somebody tried to convince me to try out Windows running it in a virtual machine, I imagine I wouldn't appreciate the experience much...it is probably the same thing the other way around: it's foreign, and any problems or seem-to-be-problems only get magnified by the added slowness and potential inability to do things (for example 3d hardware accelaration in some cases).
I can't help but notice how many people asking newbie-type questions are running Linux on a virtual machine these days. I must wonder: is this really a good way for new users to experience Linux for the first time?
Define "really good".
Seriously, it depends.
First, the new user might find it less threatening to install a VM + Linux than to setup dual-boot. (I **know** that dual-boot is better and easier--but only because I have done it a bazillion times.) Another new user might find it easiest to install a separate hard drive (the lowest risk to the existing system).
I would always adocate starting with LiveCD, the installing as dual-boot or Linux only.
If not for VirtualBox I would probably have never switched!
It was great to be able to try it without risking Windows, but after a few days of playing around I was confident enough to erase Windows completely and install Linux.
I agree it's limiting, but I think it is less stressful, risky, and complicated, so it lets you freely experiment.
But I think that what REALLY made me switch for good that time (I had a few failed attempts before) is that I spent all day reading Linux command-line tutorials as the 4GB Fedora 11 DVD downloaded.
I vote no too. Installing a new OS in a virtual environment is marginally better than running a live CD. You learn more about how to manage the virtual environment than learn about the OS that got installed.
Dual boot is much better to learn a new OS while still providing a fallback to the original OS. IMHO learning how to work with the MBR and boot loader is a more valuable learning experience than learning how to work in a virtual environment.
For the overall PC newbie, like I was when I started, I think you miss out on a lot of the "joys" of burning and booting and working through hardware issues that teach you so much about computers independent of Linux. And if your hardware isn't up to it, a VM will be unsatisfactory in terms of performance.
In my opinion, that all that work and hassle just discourages you from liking Linux.
I don't think that building a custom kernel is necessary to call oneself a linux user. If there is an easy way for beginners to get in touch with linux - why shouldn't they go this way?
I know a lot of computer scientists all using ubuntu linux - why? Because you don't have to spend hours with configuration/building issues and have more time to focus on the really interesting things (if somebody likes building kernels and is really into that, building a kernel might indeed be highly interesting) - but for most people it isn't.
I don't think that building a custom kernel is necessary to call oneself a linux user. If there is an easy way for beginners to get in touch with linux - why shouldn't they go this way?
Certainly, you are correct. There is not a requirement that you tinker around under the hood much to be a "real" Linux user. And, as others have pointed out, there is nothing "wrong" with using a VM to experiment . . . and certainly no reason that an interested party couldn't learn what they need to know by doing so.
Heck, I've used VMWare and VirtualBox myself to keep up to date on Solaris, BSD, and some other Linux distros as they've all evolved over the past few years, even while using Slackware just about exclusively on all of my "real" machines, at work and at home.
I still think it's a lousy way for a UNIX neophyte to try to absorb the completely new kind of computing experience which Linux presents. (Yes, even Ubuntu. )
Distribution: Debian /Jessie/Stretch/Sid, Linux Mint DE
Posts: 5,195
Rep:
I vote no too. Not just because the lack of pressure to experiment.
If you install Linux in a VM you loose a lot. You are still dependent on the stabilitiy of the host. You are not interfacing with the hardware. You have no proper video acceleration (KDE is unusable without it). Gone is your resilience against virus attacks, because basically you are running on top of an uprotected system. Oh - and you loose about 50% of your processor capacity on a virus scanner. I am not even sure if you can run your Linux firewall inside a Linux guest.
OTOH if you install Linux and run Windows as a guest in a VM because you can't do away yet with Windows you gain a lot in Linux experience. You have a solid platform, well protected. But most important, while you win a lot when installing Linux as your host, you loose almost nothing in your Windows environment. Usually you don't want to tweak or modify Windows on a level beyond which every VM can handle, it is most desktop tweaking and some registry issues you do in Windows, more you are not allowed to do anyway.
So, general recommendation, bit the bullet, install Linux and then a VM if you cannot live without Windows.
I don't think that building a custom kernel is necessary to call oneself a linux user. If there is an easy way for beginners to get in touch with linux - why shouldn't they go this way?
I know a lot of computer scientists all using ubuntu linux - why? Because you don't have to spend hours with configuration/building issues and have more time to focus on the really interesting things (if somebody likes building kernels and is really into that, building a kernel might indeed be highly interesting) - but for most people it isn't.
(well of course that's only my opinion)
Cheers,
talla
I agree with you, Talla.
Linux is many things to many different people.
I have gone the route that many here have, that being one installed it on some old hardware and struggled to make things work. It was a great learning experience, no doubt about it.
But.
A business environment, especially now, isn't one where you want to be tinkering with an OS to make things work -- and I don't care what it is. Sometimes it can't be avoided, and when it hits that mark where you're burning time you don't have, calling the vendor for support becomes a very real option. I admin several RHEL/Oracle Unbreakable Linux (HATE that name) servers, and unless we ran a little too close to that bleeding edge hardware-wise, I know exactly what to expect of the OS.
Something else to consider when considering virtualized environments, is that if you're planning on running your servers there, it makes more sense to configure and test your systems that way. One of the factors I love about virtual servers is you can absolutely do whatever you want to one, and as long as you have backed up the image, you can restore it with very little effort.
In many environments, the OS is only a tool used to achieve whatever your goal is. It isn't the focal point. Quickly establishing an efficient, stable platform on which to work is quite often the most important thing. Then again, if one doesn't know the basics, they're probably not going to be in a sysadmin position anyhow.
I'd say no - until you actually install a OS on your own hardware you are never going to learn all the problems and issues you may come across. VM's are OK but they can only replicate a hardware system so far...
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.