Migrating from UNIX to Linux might seem very difficult at first. Some understanding of the pitfalls and how to avoid them is really worthwhile. In the public and private sectors the pressure to drive down costs is putting pressure on organisations to migrate to Open Source systems, including Linux-based platforms.
“To migrate to Linux from UNIX can be complicated if a bespoke application is being moved, but it can also be straightforward if a COTS application is being shifted too”, says Mike Curtis, Executive Director – Service Delivery at Linux implementation expert LinuxIT. To make everything simple he adds that the target server environment must be stable.
For example, there are consequences if this doesn’t happen: an international retailer tried to migrate a server that was running its Enterprise Resource Planning (ERP) platform in an unstable environment, and as a result they kept falling over. On the other hand there is the case study about an agency within the Department for Transport that successfully migrated its Oracle databases and HR and financial applications well.
By getting the Linux implementation right, organisations in both the public and the private sector can gain access to flexibility. This brings with it the benefit of choice and platform consolidation. The benefits are reduced footprint within the data centre, the ability to virtualize their servers and the ability to use a public, private or hybrid cloud.
“As you plan to move to Linux, its flexibility gives you many deployment options and you can start slowly at the edge of your enterprise, migrating basic infrastructure services like web serving and DNS/DHCP; or you can plunge in and deploy Linux to run enterprise applications and host databases just as thousands of companies already do”, says SUSE.com’s report ‘Make the Move from UNIX to Linux: Now is the Time’.
Before you make this move it’s important to understand the main pitfalls. These are:
- Switching compilers when moving from UNIX to Linux often requires compiler flags, makefiles, build process and other coding changes.
- There are standard library issues too, involving ANSI/ISO and C++ library implementations which may differ between vendors and versions.
- Curtis adds that there are endian considerations that occur on older systems as big-endian byte storage is common to UNIX and it needs to be considered whenever moving to Linux on Intel-systems which use little-endian storage.
- Applications that are not written in POSIX will need to be modified.
- Relational databases tend to behave differently on different platforms.
Curtis says there are some other issues to consider too, including whether the software operates on a 32 bit or 64 bit system, memory management issues that can cause locking or contention issues and kernel differences. With regards to memory management, commercial applications should have already taken this problem into account to produce a version of their application, and by calling LinuxIT’s experts all of these issues won’t seem so complicated.