Moving Small Organizations from Windows to Linux?
chris1646 asks: "Currently we are a small organization that is entirely a Windows shop. Next year much of the server and desktop hardware we run will need replacing. I am looking for creative ways to introduce Linux as my desktop and server OS of choice, however a couple of our core applications run exclusively on Windows. Has anyone had any success hosting Windows applications via terminal server while using Linux as the client OS? Has anyone handled a AD to open source LDAP migration?"
Look at your costs before migrating to Linux clients for RDP. Terminal Services Licenses cost nearly as much as a full XP license, so you will likely spend more to do it this way. Having said that, you might be able to run your critical apps under WINE, and use Linux X clients to run it via SSH. I would definitely focus on the servers first though. Check out the O'Reilly books for LDAP and "Linux in a Windows World" for guidance, but it really depends on how many people need to use those critical windows apps, and what apps they are. Let me know what type of apps you are talking about, as there may be replacements or documented WINE support for them. AD to LDAP isn't likely to be much trouble with only a few users, and any mail, file, and print services should be relatively simple to implement, whether you convert or use winbind to maintain AD integration. Having been on both sides, though, I would definitely prefer switching to LDAP first, as AD can give you plenty of headaches down the road. Also, regardless of which path you take, be sure to make use of NTP to maintain your clocks, since a small drift will eventually wreak havoc on anything using kerberos, and it might not be the first thing that comes to mind when something suddenly stops working.
--That's the point of being root, you can do anything you want, even if it's stupid.
As always, there's not enough information. Why do you want to do this? What are you trying to accomplish? What apps? How critical are they? If you want to switch just for the sake of switching, then really, you should be fired.
We have a single W2K3 system which serves up a couple of legacy apps over RDP (Rdesktop) and integration with Samba, etc. has gone well for us. The standard KDE applications work fine although you do have to choose your distribution, largely because Flash can hang and/or crash Konqueror on a regular basis (blame Flash, not Konq).
The only issue we have run in to is that Windows will only let you log in with RDP so many times before it will blacklist your machine's hostname for not having a genuine MS license. It's a pain but we just more or less randomize the hostname regularly. Good old Micro$oft... they won't even let you administratively remove the blacklisting without delving into the Registry (haven't tried that, but I figure it must be possible). This happens infrequently, by the way, W2k3 will probably accept a good 100 connections before it whines.
...Steve
> however a couple of our core applications run exclusively on Windows
Then that is where you have to start.
Yes, you could insert a couple of Linux systems in side roles that don't require them to run the core apps, e.g., a DNS server here and a CGI server there and so on and so forth -- and that's likely worth doing for its own sake -- but if you want to migrate entirely off of Windows, you've first got to migrate to all cross-platform applications.
Cut that out, or I will ship you to Norilsk in a box.
My current boss, a close friend of mine, single-handedly began a FOSS migration in our 3-location 100-desktop 20-offsite-laptop-user office about a year ago. I came on board about 3 months ago, almost through the first stages of the process. We now have 99% of our users on OpenOffice (one holdout, and I am going to fix his missing feature ASAP to get him off Excel), and 100% migrated away from IE+Outlook (most on Firefox+Thunderbird, a few people requested Mac desktops and are using Safari+Mail). We transitioned to Open Directory on an OS X Server with nary a hitch, with the added bonus that OD supports LDAP which means it plays nice with all of our new extranet and internet services (LDAP login to our helpdesk, CMS, etc).
Eventually Windows XP will lose support and we will have to consider sticking with unsupported XP, or moving to Vista/Fiji/Vienna, or a complete migration to Mac, or a final alternative that I am starting to push slowly up the list of possibilities... Linux. My boss is a Mac user, he dislikes many of the problems with Windows. He had the popular misconception that Linux is hard to install, hard to maintain, and hard to use in general. My first day, when provided free reign over my own desktop, I let him watch me go through a Kubuntu installation. Cleared up all that nonsense right quick. From a blank hard drive to a better-than-Explorer GUI, with both of our network printers completely configured, desktop shortcuts to our network shares, Firefox and Thunderbird installed as well as a GUI terminal (we have legacy apps requiring telnet to our SCO UNIX machine), all in under 30 minutes, and without touching a text console.
Running actual GUI Windows applications in Linux CAN be difficult, but often is not. There is a VERY good chance that they will 'Just Work' under WINE or Crossover Office. If you need terminal services functionality, rdesktop has worked great for me. There is also the VMWare/etc option, if the programs are old enough for the perfomance hit to not matter (and if you're developing "core" applications that only run on Windows TODAY, then youve got other problems).
The problem with businesses is that they are not very open to OS theology; businesses just want to do what they are doing, and if the job requires computers and OS and apps and stuff, well - that's just the cost of doing business. It will cost money to run a Linux shop, and it will be probably *more expensive* to run a Linux shop, considering that every Windows app -- that normally would be "install and run" on any Windows box -- becomes a WINE nightmare, to see where it crashes and how to work around those crashes. Do you really want to buy a $20,000 app (there are plenty of specialty apps in this price range, all mission-critical) just to find out that no, it won't run under WINE, and no, vendor support in such environment is not provided. Do you want to lose the support on such an expensive app? You are risking not just your job, you are risking jobs of your coworkers too - if the company loses a contract because of OS troubles then some employees may need to be laid off, starting with you, of course.
If you have dreams about using RDP for those few apps that you must have on Windows, it depends on what those apps are. Some apps do not permit running under RDP because that would be inviting to buy one copy of an app and then have the whole company to access the server and run the thing. I personally know of some examples, so check before you buy into it. And other posters already said that the cost of a terminal license is as high as WinXP, and you have all the eggs in one basket (server.) Server dies - the whole company stops; are you OK with that?
Again, businesses don't want anything that deviates from tried, tested and true path. Cost is not a concern here; labor and apps cost uncountably more than the OS. If you want to migrate, you still can do that; I tried myself, starting with a 3-man company, and guess what eventually happened? Once we started growing, the total cost of maintenance of a mixed network shot through the roof (and disappeared among the stars.) Now we stick to Linux on firewalls, and Windows XP everywhere else. We do use Linux on our embedded systems, and it's perfect there. Desktops are a different matter.
Ok, I'll be the first to admit that there is a tremedous lure to FOSS software and have rolled it out myself in a number of situations, but not to desktops. I've replaced web servers, database servers and Windows file servers with servers running Apache, PostgreSQL and Samba. However, before I considered something like this in my current environment, I'd need to do a serious cost analysis that went way beyond licensing costs. For example, what will this mean to the user that has been using Windows and MS Office for 10 years? And, you mentioned that some of your core applications are Windows-only affairs. Sure, you can use RDP/Citrix to run these apps, but then you're throwing the Windows licensing costs into the mix. Not to mention the possibility that your apps won't like running in this way.
So, how much is your infrastructure *really* costing you?
How much would retraining cost?
How much would it cost to possibly have to give up your core vendor support due to running in an potentially unsupported configuration?
This may sound like I'm anti-FOSS. Actually, I'm not - I love FOSS in the right situation. WHat I AM against is FOSS for the sake of FOSS. While I "grew up" on the IT side of the house, I'm a big believer in the business needs dictating IT's role and responsiblity rather than the other way around.
My advice: Think this through before you put a lot of time into it. You may end up saving a whole lot more (not just money) by sticking with what works.
The plural of anecdote is not data -- Frank Kotsonis
<anecdote>
Now, here are the facts as they're found in ONE PREVIOUS PLACE OF WORK:
We had roughly 150 people working in a branch office, 110 of which were a mix of hardware and software engineers. The rest were either support or upper management.
We had roughly twice as many computers as people, with the computers in the lab area shared among many people depending on who was using a bench on any particular day.
About 80% of the computers were running a couple of Unix variants, mostly Solaris. The rest of the computers were running Windows.
We had 3 full time IT people who had to support all the workstations, servers, and communications equipment.
</anecdote>
I have yet to talk to anybody who has actually experienced a situation where Windows support and development costs were less than Unix (or Linux) support and development costs for the same staff at the same location. I figure these places must exist, because SEVERAL INDEPENDENT RESEARCH INSTITUTES seem to stumble over them all the time. I'm glad I've never worked at any of them though.
However, if I were to add to that first bit as a reply to the submitter, I'd seriously consider the question of whether or not this small shop can continue on servicing a Linux deployment with a complex mix of Windows/Linux after you leave. After all, you don't plan to work there forever and given that you have to ask others for advice, how likely is it that:
A) you can seamlessly make the transition yourself; and
B) someone else can easily pick up where you left off?
Unix-based servers are absolutely great and typically rock solid at doing server kind of stuff... much more so than Windows presently is. However, I'd actually advise you to stay with Windows. It's what a lot of people know, you know it currently works, and unless there is a serious compelling reason why you can't just continue with the status quo, it's the cheaper to use what you have than try and make changes with potentially unknown complications.
If anything, I'd setup a parallel network running Linux and host some services off of that, gradually migrating services one at a time over to it while you transition off. And if things go south and you run into issues you can't resolve, you could always pull the plug and you still have your original Windows network.
Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
Oh, and when putting machines out for testing you have a good opportunity to help manipulate the users.
Make the test machines pretty spiffy. Get some flat panel displays for example, if you haven't already got them deployed. Draw lots for who gets the 'first upgrades' rather than allocating it out like it's work.
Properly set up (if your office is anything like mine just set the default screensaver to the 3D matrix one and make them dual screen machines) you will get huge enthusiasm for 'the upgrade' rather than bitching about how everything is now insignificantly different.
Beep beep.
Ok. You're right. That means that 2 hours of employee time make up for the cost of one Windows XP license.
Please don't misunderstand - F/OSS provides LOTS of great software, but I don't see any way you can pencil the cost of Linux as a desktop replacement for Windows. Linux makes just about everything possible. (FWIW, I have been a daily Linux user since 1994.) Just because it's possible doesn't make it a good idea. Just because it's cool doesn't make it make any business sense, either.
All of the software/hardware vendors work their butts off to make sure that Windows compatibility is met. This doesn't mean that they do it well, but they don't care about any other OS. You can care, and if you select peripherals well, it won't be any issue at all. What happens when one of your "important" users goes out and finds a great deal on a digital camera/printer/trackpad/some other device which is completely unsupported in Linux?
It's not worth fighting the battle for the desktop. Linux is not complete enough yet for non-technical users to have. Linux on the server makes great sense, and I highly recommend it. (Although at home I just migrated all of my services to OS X.)
Respectfully,
Anomaly
But Herr Heisenberg, how does the electron know when I'm looking?
Hold up, there, cowboy. That is the wrong question to ask.
The systems and servers aren't your personal plaything. They are there to meet the needs of your employer. The small organization. The all-Windows shop.
There are often reasons for choosing the proprietary app. The predominant OS for a business of your size or type or location. Reasons that are not always narrowly technical, not always narrowly economic.
Software and hardware costs, rent, business licenses, salaries and taxes are your business expenses. It does not matter what names you use; it only matters what you pay for. If you rent a tool, it's out of your pocket. If you hire an employee, it's out of your pocket. Money-wise they are the same.
The rest of your analysis is based on the presumption that Windows works. If that was true, no one would be considering a migration.
Modern Windows works, that's not the problem. IMO, one of primary motives to migrate to F/OSS is costs of licensing. Windows-only infrastructure may be expensive if you go beyond the desktop and start buying PDC, BDC, TS, SBS, Exchange and other servers that MS will happily sell you. That's where the real cost is - server license, CAL licenses, TS licenses... start counting. That's what I consider a motivation. Cost of a desktop OS is nothing. Cost of several Win2k3 servers, each with full complement of CALs for all your employees, can be devastating.
Then you probably need to be running Windows, at least on the client.
I have a day job as the head system administrator for a medium sized but very high-tech non-profit. We run Macintosh (OSX) clients and Linux servers because they do what we need to do, and do it well. I have also been working with Linux and various other forms of Unix since 1994 (this includes using Linux and/or FreeBSD as a primary desktop OS since 1994. LaTeX works fine as a word processor if you know what you're doing.)
I also do consulting work for several smallish companies, and they all run Windows. It's really simple - if you need good 2D CAD software, you need Windows. If you need a modern multi-user accounting package that can do strange things like payroll and integrate with direct deposit, you need Windows. If you need a *good* spreadsheet (no, OOo calc doesn't count), you need Windows or OSX. If you want to run all of this on one desktop operating system, you need Windows. Crossover Office, WINE, VMWare, etc. aren't going to convert many small businesses; they want less complexity, not more. (some of these clients have Linux servers - network edge, multiprotocol file and print services, web apps, etc. - but they are close to 100% Windows on the desktop)
I think that you could convert a LOT of small businesses over if you could get a Peachtree or Quickbooks port for Linux. However, for small business, you don't stand a chance until you get *good* accounting software. OOo calc not sucking would really help too; lots of businesses make very heavy use of spreadsheets. (OOo Writer sucks, but so does Word. OOo Impress is adequate, as it's all pretty much PowerPointless anyway.)
If you're looking for long-term savings, I'd suggest considering Windows TS clients (use your old XP machines/licenses/etc), and a Windows 2k3 server terminal server. It won't be all that cheap to setup initially, but you will be able to significantly reduce your maintenance headaches.
Look at the business needs, and pick technologies that meet the business needs. Make technology work FOR your business; I've see what happens when you flip that around, and it isn't pretty.
ERROR: Null
I actually don't work for the group in charge of maintaining the systems, but I know a few things about how they are maintained. Basically, all systems have the same exact same RH4 image and sync up against an internal yum repository for software updates. There is basically zero maintenance for each machine besides that. Users can't write to the hard drive, all data is stored on netapp filers. When you are hired, you get really basic classes on how to use KDE, the internal wiki, Open Office, get on mailing lists, etc. A caveman could pass these classes.
We have over 7000 linux machines and 4 people to maintain them, plus 1000+ technical and non technical employees. Using Linux saves us millions of dollars, which pays for a couple of those netapps. The thing is, Linux just works, not to mention the vast amount of free software that is available for it.
Truthfully, and its a sad truth for some people, anyone who says Linux isn't ready for the corporate world has no idea what they are talking about. Its been there for while.
Good point, however your assumption is incorrect. Most of the Windows machines were co-located with a Unix machine on the same desk, with a few more running dedicated Windows-only applications in the lab. Roughly 95-98% of the staff were regular Unix users. I can only think of three people who had only Windows machines at their desks. One admin assistant had started in the department using only a Unix machine for a few years (typing reports using *roff).
As I stated in the original comment, we didn't have root access, therefore we couldn't solve our own Unix issues. The IT people worked on 100% of the Unix issues which came up. Many of these issues were nothing more than getting a machine cleanly shut down so it could be moved.