Originally posted by: BoomAM
Hi.
Ive been interested in running Linux for a while now, but have never found a reason for me to use it over XP.
What advantages would it give me over windows?
That's not as simple a question as it could be.
In my mind, Linux (or FreeBSD, preferably) offers you 3 advantages over Windows: stability, flexibility, and legality.
I've got a Linux box running in my house that's hosting a fairly popular forum -- 250-350 users online at any moment, half a million posts so far, maybe a million hits a day -- that has uptimes measured in months. Reboots are for kernel upgrades. That box is running mostly free software (we paid for the bulletin board software) and is peforming at a level that a Windows box can't match.
(For a while I set up a Windows 2000 AD in my house, and tried to host basic services on it reliably. I'm an MCSE and have been working with Windows since Windows/286 so I am reasonably comfortable making things happen in the Windows server world -- this isn't uninformed bashing going on here. In general, Windows can be made to perform acceptably in server roles, but you're going to need to limit what each server is doing, and you'll need to watch it closely to make sure you aren't experiencing some kind of non-intuitive failure. That's not to say that Unix or Netware is perfect, but in my experience they're closer. Hell, DOS was a fairly reliable BBS platform in pre-pentium days, supporting 60+ simultaneous users for a long time on TBBS systems...)
That's not even getting into incompatabilities between 2k and XP, or difficult-to-diagnose registry-related problems (hint: it's more cost-effective to re-image a machine that's gone screwy than to try and diagnose it, so save important files centrally), or incompatabilities caused by required security patches (anyone else having trouble running Interbase after the most recent RPC patch?)
Flexibility is something that's harder to understand if you're coming from a Windows-only world. Examples:
[*]I've got 5 machines networked here in my house. Backups are something of a pain -- you can copy files from, one machine to another, but that doesn't cover against things like site failures. The fix I'm implementing now is loading free software on a FreeBSD box and using it as a centralized backup point for all the machines on the network (Windows, Linux, FreeBSD). You can do the same thing under Windows with something like Backup Exec with agents on each machine at fairly high cost. You can also do this with Windows 2000/XP boxes running the backup application to a common file-server, but it's not nearly as flexible a solution.
[*]When I bought a Sony digital camera there was no Linux software available. So, I did a 10 minute google search, and set up a batch script to mount the camera, create a new directory for the new images, download and delete all the images, and unmount the camera. Much easier than mounting under Windows, double-clicking a shortcut on your desktop, selecting all and cutting, moving to another direcroty and creading a subfolder, pasting, and unmounting the digital camera in a way that Windows doesn't complain to you. It's a small thing, but pretty much anything can be done as simply with basic scripting.
[*]Want to run commands remotely on other machines with just a keystroke? Want to create a secure connection between your desktop and the server on the other end of a wireless link using standard, well-tested tools? Would you like to be able to do your day-to-day work without interruptions caused by the worm of the week? Unix.
I guess the biggest difference between Unix and Windows is one of basic philosophy. In Windows, the goal seems to be to create single programs that can do everything the user might require, while hiding the complexity from the user. In Unix, it's about building small applications that do one job well and can intercommunicate, and running them on a platform that's completely transparent. Guess which platform is easier to diagnose problems on? Guess which makes it easier to do something new, or exactly as you want? Guess which requires more of the user?
Unix in all cases.
If you want to run a Windows-based e-mail server, you do a search to find the available options (most are somewhat pricy, but there are a couple of decent free ones) and choose one to install. That program handles SMTP, POP, and (possibly) IMAP itself, and offers you an integrated management tool to control everything. When something doesn't work as expected or if your needs fall outside the range of expected usage, then you're mostly out of luck.
With Unix, you need to pick a program to handle SMTP (most are free, though some can be purchased if you want the vendor's support), another to handle POP, and a third to handle IMAP. Then you need to configure each program individually so they integrate well. Configuration is via texts files, and getting everything to work can be a pain at first. If your needs are non-typical and you want to scan for viruses, or scan for spam, or utilize RBLs, or whatever, the functionality is there if you turn it on. Better: once it's working, it'll keep working. And working. And working...
As far as legality: how many people do you know who have Phjotoshop? How many of them licensed it? How about Microsoft Office? Quicken/Quickbooks? Norton antivirus? The list goes on -- to get real work done on Windows
legally means spending a bunch of money to do so. In the Unix world, there are solid tools out there that are freely available. There isn't the same drive to violate copyrights as there is in the Windows world.
So....what reason do i have to use it on a regular basis?
That's a more difficult question. If you're running a server the only reason I see to run Windows is because one of your ventors requires it to run. If you're dependent on some vertical-market application, then you don't have much choice. As far as desktops go, you'll have a harder time making that argument.
The problem right now is that there isn't much third-party support for Linux/Unix. Want to buy the latest and greatest handheld? Support might be questionable, and a number of applications you may want to use assume you'll be updating from a Windows machine (and require a Windows binary to run). If you're looking for a more rational computing environment and you're willing to limit your hardware/software choices to components that integrate well into your existing system, then free Unix can be a great way to go.