Though Linux certainly is Unix-like, it is not Unix. Even if it were, there still would be a lot to do to port your application over successfully. For instance, you may have an application that runs on Sun Solaris, but perhaps it has not yet been ported over successfully to IBM's AIX. It would be shortsighted and foolish of you to undertake such a task on your own without support either from your hardware vendor or applications group. Similarly, porting your functioning Unix based application to a Linux environment is going to take some work and proper planning. Planning and planning well is the key to success. That's the first tip.
Let's look at a migration project to see what can happen along the way. I'll keep things vendor- and product-neutral. In this way, you can see that the basic steps will work regardless of the specific platform you are running. For example, you have an application X, which is running on a Y database. It is running on a server made by Z running W Unix.
First off, behind the scenes without your knowledge, the CIO has already been tasked to cut costs in all areas of IT. After doing a detailed cost analysis, she has determined that using Linux would cut support costs of your application 200%. You've been tasked to make it all work.
Where do you start? The most important piece is the assessment. You must write down exactly what you want to accomplish and what you have to work with. Start with what you've got, and break it down by hardware, software, database, data and network. Get all the version numbers down carefully, because you will find that some versions might run better than others on Linux, and some might not be supported at all.
Do some research and find out if your application has already been ported to Linux (and if it has, what variant, and on what kernel). You don't want to rewrite the same script if it already has been written. If it has, then you're in good shape. If your application is home-grown running on a Y database, then your first step must be to contact Y. Ask if Y has been ported to Linux. If not, you may be out of luck. If it has, you can move on.
Your next step: Find out what is involved in moving the database over to Linux, and get your DBAs start learning about how to support this database on that platform.
From here, you'll move on to determining the right Linux server for your environment. As you know, there are many Linux variants out there. What is right for you? As usual, it depends. Are you the type that likes a lot of handholding, or do you tend to Google around for all your answers? Do you like industry-standard stuff, or are you more the rebellious open source type that frequents NYLUG meetings on 59th Street in Manhattan? You might be the latter, but if you have a corporate CIO breathing down your neck, you must choose wisely to keep your job.
Breaking my code of neutrality, I'd go with either SuSE or Red Hat; you can't go wrong with either one.
After you've picked your distribution, bring it in as quickly as you can, and start playing. Make sure you spec out your Intel or AMD PC wisely. If your RISC box is a four-way IBM p690 with 4GB of RAM, don't bring in a single processor box with 512 MG of RAM and expect the application to run nicely. I also would advise you not to get a pre-installed version of Linux on your hardware, but to install it yourself. That's the only way you'll learn.
Stay tuned. After Linux is up and running, we can move on to the next steps, which I'll cover in the next Migration & Integration tips.
>> Click here to go on to Part 2.
Kenneth Milberg is the resident Unix-to-Linux migration expert on SearchEnterpriseLinux.com and an independent contractor who has been working with Unix systems over 12 years. Ken has managed, configured and administered various Unix environments, most recently IBM SP Systems. He is also a board member of Unigroup of NY, the oldest Unix users group in NYC. Click here to ask him a question about migrating to Linux.
This was first published in April 2004