Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion...

29
Getting Started on Getting Started on Linux Linux Marion Trompeter Senior Software Engineer, Informix Software

Transcript of Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion...

Page 1: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

Getting Started on LinuxGetting Started on Linux

Marion TrompeterSenior Software Engineer,

Informix Software

Page 2: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

2

useruser .conference.conferenceInformixInformix

Where to Obtain Informix ProductsWhere to Obtain Informix Products

• Download through Intraware http://www.intraware.com

• Request a CD from Jones Business Systems,Inchttp://www.jbsi.com

• In the UK, purchase directly from Linux IT http://www.linuxit.com

• Call Informix at 1-800-331-1763, or your local Informix office http://www.informix.com/informix/contact

• Download through Intraware http://www.intraware.com

• Request a CD from Jones Business Systems,Inchttp://www.jbsi.com

• In the UK, purchase directly from Linux IT http://www.linuxit.com

• Call Informix at 1-800-331-1763, or your local Informix office http://www.informix.com/informix/contact

Page 3: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

3

useruser .conference.conferenceInformixInformix

Compatibility StatementCompatibility Statement

• Definition of the OS version• Kernel version (I.e. kernel 2.2.12)• glibc version (I.e. glibc 2.1.2)

• Informix is not supporting any specific distributor, but certain combinations of kernel and glibc versions

• With each major version change of the kernel or glibc, Informix products will be re-certified for these versions

• Definition of the OS version• Kernel version (I.e. kernel 2.2.12)• glibc version (I.e. glibc 2.1.2)

• Informix is not supporting any specific distributor, but certain combinations of kernel and glibc versions

• With each major version change of the kernel or glibc, Informix products will be re-certified for these versions

Page 4: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

4

useruser .conference.conferenceInformixInformix

Product Availability - IntelProduct Availability - Intel

Product Version kernel glibcIDS-LE 7.30 2.0.36 2.0.7

2.2.5 2.1.1IDS.2000/Foundation.2000 9.20 2.2.5 2.1.1

9.21 2.2.12 2.1.2C-ISAM 7.24 2.2.5 2.1.1SE 7.24 2.2.5 2.1.1

Page 5: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

5

useruser .conference.conferenceInformixInformix

Product Availability - IntelProduct Availability - Intel

Product Version kernel glibcCSDK 2.40 2.2.5 2.1.1ESQL/Cobol 7.25 2.2.5 2.1.1Web Datablade 4.10 2.2.5 2.1.1Excalibur Text 1.30 2.2.5 2.1.1Geodetic 3.00 2.2.5 2.1.1TimeSeries 3.30 2.2.5 2.1.1MAXConnext 1.00 2.2.5 2.1.1Tools (4GL, ISQL) 7.30 2.2.5 2.1.1D4GL 3.01 2.2.5 2.1.1ISA 1.20 2.2.5 2.1.1

Page 6: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

6

useruser .conference.conferenceInformixInformix

Product Availability - OthersProduct Availability - Others

• Linux AXP (Alpha processors)• IDS.2000 9.21• kernel 2.2.13• glibc 2.1.2

• CSDK 2.50• kernel 2.2.13• glibc 2.1.2

• ISA 1.20• kernel 2.2.13• glibc 2.1.2

• Linux for S390• C-ISAM 7.24• kernel 2.2.16• glibc 2.1.3

• Linux AXP (Alpha processors)• IDS.2000 9.21• kernel 2.2.13• glibc 2.1.2

• CSDK 2.50• kernel 2.2.13• glibc 2.1.2

• ISA 1.20• kernel 2.2.13• glibc 2.1.2

• Linux for S390• C-ISAM 7.24• kernel 2.2.16• glibc 2.1.3

Page 7: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

7

useruser .conference.conferenceInformixInformix

Unsupported Features 7.30Unsupported Features 7.30• High-End Enterprise Features:• Optical • Enterprise Replication (ER) • Back up and restore utility (ON-Bar) • Informix Storage Manager (ISM) • Parallel load utility (pload, ipload) • Communication Support Modules (CSM) • Online Simple Network Management Protocol (onsnmp) • High-Availability Data Replication (HDR) • Performance metrics monitor (Onperf) • Back up and restore at server granularity level (Onarchive)

• Other Features: • Very Large Memory (VLM; for 64-bit support) • Secure auditing (OS C2 auditing) • Pinning of a CPU VP process (Affinity) • Raw Device Support • KAIO• Disabling priority aging of CPU VP’s (no aging)

• High-End Enterprise Features:• Optical • Enterprise Replication (ER) • Back up and restore utility (ON-Bar) • Informix Storage Manager (ISM) • Parallel load utility (pload, ipload) • Communication Support Modules (CSM) • Online Simple Network Management Protocol (onsnmp) • High-Availability Data Replication (HDR) • Performance metrics monitor (Onperf) • Back up and restore at server granularity level (Onarchive)

• Other Features: • Very Large Memory (VLM; for 64-bit support) • Secure auditing (OS C2 auditing) • Pinning of a CPU VP process (Affinity) • Raw Device Support • KAIO• Disabling priority aging of CPU VP’s (no aging)

Page 8: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

8

useruser .conference.conferenceInformixInformix

Unsupported Features 9.21Unsupported Features 9.21

• High-End Enterprise Features:• Online Simple Network Management Protocol (onsnmp) • Back up and restore at server granularity level (Onarchive)

• Other Features: • Secure auditing (OS C2 auditing) • Pinning of a CPU VP process (Affinity) • KAIO

Support of Processor Affinity and KAIO Are Planned for Kernel 2.4!

• High-End Enterprise Features:• Online Simple Network Management Protocol (onsnmp) • Back up and restore at server granularity level (Onarchive)

• Other Features: • Secure auditing (OS C2 auditing) • Pinning of a CPU VP process (Affinity) • KAIO

Support of Processor Affinity and KAIO Are Planned for Kernel 2.4!

Page 9: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

9

useruser .conference.conferenceInformixInformix

Determining the OS VersionDetermining the OS Version

• Kernel version• uname -r

2.2.14

• glibc version• ls -l /lib/libc.so*• lrwxrwxrwx 1 root root … /lib/libc.so.6 -> libc-2.1.2.so

• rpm -qa | grep libc• glibc-2.1.2-11

• Kernel version• uname -r

2.2.14

• glibc version• ls -l /lib/libc.so*• lrwxrwxrwx 1 root root … /lib/libc.so.6 -> libc-2.1.2.so

• rpm -qa | grep libc• glibc-2.1.2-11

Page 10: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

10

useruser .conference.conferenceInformixInformix

Distribution ExamplesDistribution Examples

• Caldera 2.4• kernel 2.2.14• glibc 2.1.2

• RedHat 7• kernel 2.2.16• glibc 2.2 (2.1.92)

• Suse 7• kernel 2.2.16• glibc 2.1.3

• TurboLinux 6.0• kernel 2.2.14• glibc 2.1.2

• Caldera 2.4• kernel 2.2.14• glibc 2.1.2

• RedHat 7• kernel 2.2.16• glibc 2.2 (2.1.92)

• Suse 7• kernel 2.2.16• glibc 2.1.3

• TurboLinux 6.0• kernel 2.2.14• glibc 2.1.2

Page 11: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

11

useruser .conference.conferenceInformixInformix

Installing Foundation.2000Installing Foundation.2000

• Setting the environment• INFORMIXDIR• default: /opt/informix

• Installation command• rpm -I <filename>

• Installation to different $INFORMIXDIR• rpm -I --relocate /opt/informix=$INFORMIXDIR \

<filename>

• Setting the environment• INFORMIXDIR• default: /opt/informix

• Installation command• rpm -I <filename>

• Installation to different $INFORMIXDIR• rpm -I --relocate /opt/informix=$INFORMIXDIR \

<filename>

Page 12: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

12

useruser .conference.conferenceInformixInformix

Limitations of RPMLimitations of RPM

• Each product should be installed only once per machine

• Parallel test and production systems

• Different products installed in the same directory can only have each file name once

• CSDK on top of database server

• To use graphical tools, user interaction and environment variables should be avoided

• $INFORMIXDIR• Licensing

• Each product should be installed only once per machine

• Parallel test and production systems

• Different products installed in the same directory can only have each file name once

• CSDK on top of database server

• To use graphical tools, user interaction and environment variables should be avoided

• $INFORMIXDIR• Licensing

Page 13: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

13

useruser .conference.conferenceInformixInformix

Installation ProceduresInstallation ProceduresProduct Installation MethodC-ISAMSEIDS-LE 7.30

Copying files intodestination directoryusing RPM.Installation scriptneeds to be runafterwards.

CSDK/ConnectIDS.2000IIF.2000DataBlades

Complete installationwith RPM.$INFORMIXDIRneeds to be set priorto installation.

ISAISQL4GLD4GL

‘Classic’ installation,using cpio or tar andinstallation script.Same on allplatforms.

Page 14: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

14

useruser .conference.conferenceInformixInformix

Installation FAQ’sInstallation FAQ’s

• rpm -i csdk240uc1.rpm returns /opt/informix/bin/chkenv conflicts with file from IIF-9.20.UC1-1...• The error is due to the RPM attempting to replace

the existing files with different checksum.• Use --replacefiles or -- force option

• rpm -i csdk230uc1.rpm returns error:

failed dependencies:

libifgls.so is needed by iconn-2.30.UC1-1

libifglx.so is needed by iconn-2.30.UC1-1• Use --nodeps option

• rpm -i csdk240uc1.rpm returns /opt/informix/bin/chkenv conflicts with file from IIF-9.20.UC1-1...• The error is due to the RPM attempting to replace

the existing files with different checksum.• Use --replacefiles or -- force option

• rpm -i csdk230uc1.rpm returns error:

failed dependencies:

libifgls.so is needed by iconn-2.30.UC1-1

libifglx.so is needed by iconn-2.30.UC1-1• Use --nodeps option

Page 15: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

15

useruser .conference.conferenceInformixInformix

Installation FAQ’sInstallation FAQ’s

• Message during installation

"To complete the installation of Informix Dynamic Server 2000, run RUN_AS_ROOT.server as root.”• Disregard the message. Installation continues

automatically. Later message is indicating this: "Performing root portion of installation of Informix Dynamic Server 2000..."

• Message during installation

"To complete the installation of Informix Dynamic Server 2000, run RUN_AS_ROOT.server as root.”• Disregard the message. Installation continues

automatically. Later message is indicating this: "Performing root portion of installation of Informix Dynamic Server 2000..."

Page 16: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

16

useruser .conference.conferenceInformixInformix

Setting Up Raw DevicesSetting Up Raw Devices

• Create a partition• fdisk• Disk Druid (RedHat)• YaST/YaST2

• Partition type 83 (Linux native)

• Not referenced in fstab, no filesystem

• Bind a raw device to a block device using the command “raw”• raw /dev/raw/raw1 /dev/sda10

• Binding will be lost with next re-boot• add command to startup scripts (/etc/rc.d)

• Change owner to informix.informix

• Change permissions to 660

• Create a partition• fdisk• Disk Druid (RedHat)• YaST/YaST2

• Partition type 83 (Linux native)

• Not referenced in fstab, no filesystem

• Bind a raw device to a block device using the command “raw”• raw /dev/raw/raw1 /dev/sda10

• Binding will be lost with next re-boot• add command to startup scripts (/etc/rc.d)

• Change owner to informix.informix

• Change permissions to 660

Page 17: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

17

useruser .conference.conferenceInformixInformix

Krakatoa Setup - 9.21Krakatoa Setup - 9.21

• Bundled JRE 1.2.2 package is available under $INFORMIXDIR/extend/krakatoa/jre to be used with J/Foundation

• setenv JVPJAVAHOME $INFORMIXDIR/extend/krakatoa/jre

• To get the JRE shared libraries loaded properly:• 1. add the following lines at the end of

/etc/ld.so.conf<$INFORMIXDIR>/extend/krakatoa/jre/lib/i386<$INFORMIXDIR>/extend/krakatoa/jre/lib/i386/native_threads<$INFORMIXDIR>/extend/krakatoa/jre/lib/i386/classic

• 2. run ldconfig as root• # ldconfig

• Bundled JRE 1.2.2 package is available under $INFORMIXDIR/extend/krakatoa/jre to be used with J/Foundation

• setenv JVPJAVAHOME $INFORMIXDIR/extend/krakatoa/jre

• To get the JRE shared libraries loaded properly:• 1. add the following lines at the end of

/etc/ld.so.conf<$INFORMIXDIR>/extend/krakatoa/jre/lib/i386<$INFORMIXDIR>/extend/krakatoa/jre/lib/i386/native_threads<$INFORMIXDIR>/extend/krakatoa/jre/lib/i386/classic

• 2. run ldconfig as root• # ldconfig

Page 18: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

18

useruser .conference.conferenceInformixInformix

Krakatoa Setup - 9.21Krakatoa Setup - 9.21• Server onconfig Settings for J/Foundation• VPCLASS jvp,num=number

where 'number' is the number of Java Virtual Processors

• JVPHOME <jvphome>where <jvphome> is $INFORMIXDIR/extend/krakatoa

• JVPLOGFILE <jvphome>/jvp.log• JVPPROPFILE <jvphome>/.jvpprops• JVPJAVAVM hpi:jvm:java:net:zip:jpeg• JDKVERSION 1.2• JVMTHREAD native• JVPJAVAHOME <jvphome>/jre• JVPJAVALIB /lib/i386• JVPCLASSPATH

<jvphome>/krakatoa.jar:<jvphome>/jdbc.jar

• Server onconfig Settings for J/Foundation• VPCLASS jvp,num=number

where 'number' is the number of Java Virtual Processors

• JVPHOME <jvphome>where <jvphome> is $INFORMIXDIR/extend/krakatoa

• JVPLOGFILE <jvphome>/jvp.log• JVPPROPFILE <jvphome>/.jvpprops• JVPJAVAVM hpi:jvm:java:net:zip:jpeg• JDKVERSION 1.2• JVMTHREAD native• JVPJAVAHOME <jvphome>/jre• JVPJAVALIB /lib/i386• JVPCLASSPATH

<jvphome>/krakatoa.jar:<jvphome>/jdbc.jar

Page 19: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

19

useruser .conference.conferenceInformixInformix

Kernel ParametersKernel Parameters

• Files• NR_OPEN

number of open files per process

• NR_FILEnumber of open files system wide

• Semaphores• SEMMNI

number of semaphore identifiers in the kernel

• SEMMSLmaximum number of semaphores per identifier list

• Files• NR_OPEN

number of open files per process

• NR_FILEnumber of open files system wide

• Semaphores• SEMMNI

number of semaphore identifiers in the kernel

• SEMMSLmaximum number of semaphores per identifier list

Page 20: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

20

useruser .conference.conferenceInformixInformix

Kernel ParametersKernel Parameters

• Shared Memory• SHMALL

maximum total shared memory system wide

• SHMMNImaximum number of shared memory segments system wide

• SHMSEGnumber of attached shared memory segments per process

• SHMMAXmaximum shared memory segment size

• Shared Memory• SHMALL

maximum total shared memory system wide

• SHMMNImaximum number of shared memory segments system wide

• SHMSEGnumber of attached shared memory segments per process

• SHMMAXmaximum shared memory segment size

Page 21: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

21

useruser .conference.conferenceInformixInformix

/proc/proc

• Pseudo file system

• internal data structures

• change kernel parameters at run time

• /proc/sys - tunable kernel parameters

• For permanent changes, parameter changes must be added to the system startup scripts /etc/rc.d

• Pseudo file system

• internal data structures

• change kernel parameters at run time

• /proc/sys - tunable kernel parameters

• For permanent changes, parameter changes must be added to the system startup scripts /etc/rc.d

Page 22: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

22

useruser .conference.conferenceInformixInformix

/proc/sys/proc/sys

• Files• /proc/sys/fs/file-max

maximum number of file handles

• /proc/sys/fs/file-nrnumber of allocated file handles, number of used file

handles, and maximum number of file handles

• Memory• /proc/sys/kernel/shmall

maximum shared memory system wide (pages)

• /proc/sys/kernel/shmmaxmaximum shared memory segment size (bytes)

• Files• /proc/sys/fs/file-max

maximum number of file handles

• /proc/sys/fs/file-nrnumber of allocated file handles, number of used file

handles, and maximum number of file handles

• Memory• /proc/sys/kernel/shmall

maximum shared memory system wide (pages)

• /proc/sys/kernel/shmmaxmaximum shared memory segment size (bytes)

Page 23: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

23

useruser .conference.conferenceInformixInformix

Kernel ParametersKernel Parameters

• Files

• /usr/src/linux/include/linux/limits.h• OPEN_MAX• NR_OPEN

• /usr/src/linux/include/linux/fs.h• NR_OPEN• NR_FILE

• /usr/src/linux/include/linux/posix_types.h• __FD_SETSIZE

• /usr/include/linux

• Files

• /usr/src/linux/include/linux/limits.h• OPEN_MAX• NR_OPEN

• /usr/src/linux/include/linux/fs.h• NR_OPEN• NR_FILE

• /usr/src/linux/include/linux/posix_types.h• __FD_SETSIZE

• /usr/include/linux

Review your kernel source before implementing changes - kernel source differs between versions!

Page 24: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

24

useruser .conference.conferenceInformixInformix

Kernel ParametersKernel Parameters

• Semaphores• /usr/src/linux/include/linux/sem.h• SEMMNI• SEMMSL (<=512)

• Shared Memory• /usr/src/linux/include/asm-i386/shmparam.h• SHMALL• SHMMNI• SHMSEG• SHMMAX

• Semaphores• /usr/src/linux/include/linux/sem.h• SEMMNI• SEMMSL (<=512)

• Shared Memory• /usr/src/linux/include/asm-i386/shmparam.h• SHMALL• SHMMNI• SHMSEG• SHMMAX

Page 25: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

25

useruser .conference.conferenceInformixInformix

Building a KernelBuilding a Kernel

• Configuration• make config

command-line

• make menuconfigmenu-driven,hierarchical structure

• make xconfigX Windows, hierarchical structure

• Configuration• make config

command-line

• make menuconfigmenu-driven,hierarchical structure

• make xconfigX Windows, hierarchical structure

Page 26: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

26

useruser .conference.conferenceInformixInformix

Building a KernelBuilding a Kernel

• Compilation• make dep

prepares dependencies

• make cleanremoves old objects

• make bzImage builds compressed image of the kernel

• make modulesbuilds device driver modules

• Compilation• make dep

prepares dependencies

• make cleanremoves old objects

• make bzImage builds compressed image of the kernel

• make modulesbuilds device driver modules

Page 27: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

27

useruser .conference.conferenceInformixInformix

Building a KernelBuilding a Kernel

• Testing• boot floppy• fdformat /dev/fd0H1440• make bzdisk

• /etc/lilo.conf - /sbin/lilo• image = /boot/vmlinuz.new• label = linux.new• root = /dev/hda1

• Testing• boot floppy• fdformat /dev/fd0H1440• make bzdisk

• /etc/lilo.conf - /sbin/lilo• image = /boot/vmlinuz.new• label = linux.new• root = /dev/hda1

Page 28: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

28

useruser .conference.conferenceInformixInformix

Building a KernelBuilding a Kernel

• Installing• Modules• mv /lib/modules /lib/modules.sv• make modules_install

• Kernel• mv /vmlinuz /vmlinuz.sv• make install

• Lilo• add entry for saved kernel• /sbin/lilo

• Installing• Modules• mv /lib/modules /lib/modules.sv• make modules_install

• Kernel• mv /vmlinuz /vmlinuz.sv• make install

• Lilo• add entry for saved kernel• /sbin/lilo

Page 29: Getting Started on Linux Marion Trompeter Senior Software Engineer, Informix Software Marion Trompeter Senior Software Engineer, Informix Software.

29

useruser .conference.conferenceInformixInformix

FAQ’sFAQ’s

• Which protocol are supported on Linux?• Due to technical restrictions in Linux, the

protocols currently supported are• Shared Memory - onipcshm• Berkley Sockets - onsoctcp

• Which protocol are supported on Linux?• Due to technical restrictions in Linux, the

protocols currently supported are• Shared Memory - onipcshm• Berkley Sockets - onsoctcp