Linux vs. Windows- Which one is better?
When I first met Travis, our new CEO and Windows System Admin, he was telling me that he really liked Windows and was very good at administration of the Windows OS. My response, being a hard core Linux user, was "Well, to me a computer without Windows is like a dog without a brick tied to its tail." Thus began a friendly rivalry that continues almost daily. But really which one is better?
Personally, I've seen Windows be an OS worthy of weekly reboots just to keep it online in a server environment, and I've seen some aweful implementations of Windows software that comes free with Linux and does its job without skipping a beat. In Linux, reboots are a last ditch effort rather than a first step. My opinion of Windows was very low.
When Travis came aboard however, my views began to change. It became clear that Travis is a competent Windows administrator. He turned our four Windows servers into reliable, well running machines. Then he did something that I never would have thought would happen at this company. He moved our whole website into a .NET application called Dot Net Nuke. In fact, you're looking at it right now. The application is amazing. It also happens to run ONLY on Windows Server. I've seen what the application can do and I must say that I am quite impressed with it. With the Windows servers running so well, I am finally starting to see it as a capable Network OS.
Have I converted to Windows then, abandoning Linux? Hardly. As I write this I am using Ubuntu 7.04 on my workstation here at the office. At home, Ubuntu 7.04 runs well on my older Dell laptop with only 384MB RAM. My home server runs Fedora Core 5 (The last great Fedora, IMHO) and my server at work runs CentOS 4.5. I find Linux to be easy to use (for a tech guy like me anyway) and very stable. My workstation here at the office can go for many weeks without a reboot.
Regarding our friendly rivalry, a situation came up a couple of weeks ago that had us setting aside our differences for the common good of the company. The server that this website is hosted on is an Intel box with two hard disks in a RAID1 configuration. When one of the disks in the array failed, Travis was notified of the problem. He took out the failed disk and put in a new disk. Then, the trouble started.
The RAID configuration tool that came with the controller he uses would not allow him to add the new disk to the array. After fumbling around for quite some time to try to figure out how to add the new disk to the mirrored array, a fatal mistake was made. Travis accidentally removed the partition table and master boot record for the remaining disk! To the uninitiated this is similar to removing the subject of each catagory in an encyclopaedia. The information is still there, but the computer (having lost the index and what not) does not know how to find it.
We realized what the problem was and went on a search for ways to restore the deleted partition tables. Travis found a program called "Stellar" that turned out to be not so stellar. It promised to recover the data from the hard disk and copy it to the directory or drive of choice. Travis bought the software ($100), installed it on his computer and put the drive in his computer. While it was copying everything, he built a new OS on a new disk for the server. When the restore was complete, he moved the files that were recovered into the new disk. Voila! The sites were back. There was a perplexing problem with the files though. Anything under about 2KB was corrupted! The data that was recovered was useless. Now he was back to square one.
I offered my help and told him I'd search to find if there were any Linux tools that could do the job. I jumped to google.com and did some basic searches. I saw some references to a program called "Testdisk" but I didn't want to test a disk, I wanted to *recover* a disk. I did some more reading and found that it does much more, including partition recovery. And, it was Open Source. I used "apt-get install testdisk"s on my Ubuntu machine. After some experimenting with the software using the known bad disk and having positive results, we installed the known good disk that had lost its partition tables.
I ran the testdisk software and performed the functions that restore the partition tables and also rewrite the master boot record. This took under two minutes, even working slowly. I then powered down my workstation, and gave Travis the disk. He installed it into the server and lo and behold, the machine booted as if nothing had ever happened. Hours and hours of labor had been wasted. If we'd only known of this great utility sooner, the machine would have been back online in minutes instead of almost 36 hours later.
Before my views about Windows had been adjusted, I'd have constantly gloated about how Linux saved a Windows server. But really, I'd have been wrong about that. Yes, the software that I got for Linux did save the day but it wasn't about it being a Linux computer anymore.
In a world of so much propoganda (on both sides of the Linux vs. Windows conflict) it is easy to align ones self with one side or ther other, but that does not need to be the case.
The experiences I've had have shown me that its not important which OS one uses to perform a task. Its all about having the right tool for the job. Recognition of this fact will allow anyone to be more productive and effective in their work.
(Side note: The software vendor has refused to refund Travis for their software that did not work. Why? They want a reciept for the software that we used to do the job. How are we supposed to have a receipt for something that is free?)