0% found this document useful (0 votes)
39 views

Migrating From Unix To Linux

The document discusses migrating from Unix to Linux and outlines some key differences in command syntax and utility output between the two operating systems. Specifically, it notes differences in commands for viewing CPU usage, memory usage, shutting down servers, and the output of utilities like vmstat and netstat. It recommends scheduling all Oracle tasks within Oracle and avoiding reliance on operating system utilities to ease the migration process.

Uploaded by

sumeet gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views

Migrating From Unix To Linux

The document discusses migrating from Unix to Linux and outlines some key differences in command syntax and utility output between the two operating systems. Specifically, it notes differences in commands for viewing CPU usage, memory usage, shutting down servers, and the output of utilities like vmstat and netstat. It recommends scheduling all Oracle tasks within Oracle and avoiding reliance on operating system utilities to ease the migration process.

Uploaded by

sumeet gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

Migrating from Unix to Linux:

Migrating to Linux from Proprietary UNIX

Migrating into Linux can be very easy or very difficult, depending on your existing Oracle
configuration. It is not uncommon to see small “dialect” differences between implementations of
UNIX, especially with respect to display output and command arguments.

Those shops that find a migration difficult are those that have made extensive use of operating
system utilities for their Oracle functions:

External scheduling of Oracle tasks

   – Crontab
   – Windows “at” scheduling

Extensive use of OS shell scripts

   – Automated e-mail alerts (new dumps, alert log messages, Linux syslog messages)
   – File system alerts
   – Server overload alerts

If you avoid the OS trap and use Oracle to schedule all Oracle tasks you can easily port your
database across OS platforms. This is especially true if you migrate to Oracle10g where Oracle
automatically collects OS metrics and has a built-in alert and scheduling mechanism:
 Migrate to Oracle10g
 Schedule all Oracle tasks with dbms_scheduler
 Use the Oracle dbms_alert package to replace OS scripting

Let’s take a closer look at the syntax differences between proprietary UNIX and Linux so that
you can appreciate the challenge of migration.

Linux command syntax

Users of proprietary UNIX will immediately recognize many similarities between Sun, HP, AIX
and Linux commands. However, there are significant syntax issues, especially with regard to
command arguments and the output from Linux utilities:

Linux Command Syntax examples

Display the number of CPUs            cat /proc/cpuinfo|grep processor|wc –l


Show top CPU%                         ps aux|sort -n +2
Display top-10 CPU consumers          ps aux|sort -rn +2|head -10
RAM memory display free

Shutdown server as root               /sbin/shutdown -r now


Kill all xxx processes                pkill [-9] “xxx”
Show swap paging space                /sbin/swapon -s
Show Linux syslog errors              tail /var/log/messages
Show swap disk details                swapon -s
See held memory segments              ipcs -m
Show Linux system parms               sysctl -a
Linux command history files           history|more

Migrating from Sun to Linux can be especially problematic because of the syntax differences and
the different output from the utilities such as vmstat and netstat. This can cause considerable re-
writing of shell scripts.

vmstat Linux:

>vmstat 2 5

procs memory swap io system cpu


r b w swpd free buff cache si … bi bo in cs us sy id
1 0 0 140 90372 726988 26228 0 … 0 0 14 7 0 0 4
0 0 0 140 90372 726988 26228 0 … 0 2 103 11 0 0 100

vmstat Solaris:

>vmstat 2 5

procs memory  page disk faults cpu


r b w swap free re mf pi po … s6 -- -- in sy cs us sy id
0 0 0 2949744 988800 0 4 0 0 … 0 0 0 148 200 41 0 0 99
0 0 0 2874808 938960 27 247 0 1 … 0 0 0 196 434 64 1 2 98

Display number of CPU’s:

Linux:

>cat /proc/cpuinfo|grep processor|wc -l

16

Solaris:

>psrinfo -v|grep "Status of processor"|wc -l


8

RAM Size in Linux:

>free

total used free shared buffers cached


Mem: 3728668 504688 3223980 41316 430072 29440
-/+ buffers/cache: 45176 3683492
Swap: 265032 608 264424
RAM Size in Solaris:

>prtconf|grep -i mem

Memory size: 2048 Megabytes


memory (driver not attached)
virtual-memory (driver not attached)

Netstat Differences

On any Sun and Linux server the netstat utility provides information about all network traffic
touching the server. However the output is different:

Solaris netstat

>netstat

TCP: IPv4
Local Address Remote Address   Swind Send-Q Rwind Recv-Q State
------------- ------------------- ----- ------ ----- ------  -----------
sting.32773 ting.1521 32768 0 32768 0  ESTABLISHED
sting.1521 ting.32773 32768 0 32768 0  ESTABLISHED
sting.32774 ting.1521 32768 0 32768 0  ESTABLISHED

Linux netstat

In Linux, we see that the output from netstat is quite different from Solaris:

>netstat

Proto Recv-Q Send-Q Local Address       Foreign Address State


tcp 0     0     donsrv1.rov:netbios-ssn intranet.janet.com:1351 ESTABLISHED
tcp 0     0     donsrv1.janet.com:1120 sting.janet.com:ssh TIME_WAIT
tcp 0     40    donsrv1.janet.com:ssh hpop3-146.gloryroa:1096 ESTABLISHED

Ironically the syntax differences between proprietary UNIX and Linux can hinder your migration
and shops that use SFU on Windows often have a far easier migration. In sum, those Oracle
shops that avoid OS utilities such as scheduling (crontab) and shell scripts will find database
migration very easy.

You might also like