Introduction 1 to zLinux Specifics

This document is intended for the  Linux administrator on other platforms that may not be familiar with some of the  specific utilities that zlinux has to faciliate its use on the mainframe.

 

I will start with the IBM utilities: zipl and  chccwdev.

 

zipl command

 

zipl is easy to remember as (Z)linux intial program  load (IPL) or booting.

It basically is a loader with configuration  files.

The config file is located /etc/zipl.conf, and when  you run the zipl executable, it creates a bootmap file in

 

/boot/zipl/bootmap (default target file).

 

The config file as used by Novell SuSE SLES10.

[defaultboot]
defaultmenu = menu

:menu
target =  /boot/zipl
timeout = 10
prompt = 1
1 = ipl
2 = failsafe
default =  1

 

###Don't change this comment - YaST2 identifier:  Original name: ipl###


[ipl]
target = /boot/zipl
image  = /boot/image
ramdisk = /boot/initrd,0x1000000
parameters = "root=/dev/dasda1 TERM=dumb  dasd=201-20F,192"

[failsafe]
target =  /boot/zipl
image = /boot/image
ramdisk = /boot/initrd,0x1000000
parameters = "root=/dev/dasda1 TERM=dumb"

 

If your familar with grub or lilo then this seems  straight forward.

 

The parameter values is where the user specifies  what dasd device addresses he will be using and what device the root can be  found among other parms that can be specified.

 

The important thing to understand is that you need  to configure this properly so that have access to your devices. I will discuss  distro specifics to zipl but also here is some references to others who also  have discussed some of these distro specific issues. Linux for S/390 - mkinitrd and  cloning notes

 

A typical command when cloning is to change root  and run zipl on the mounted copy of the system to prepare that volume for future  IPL:

 

chroot /mnt/new zipl

 

Basically, you update zipl.conf with your needed  parms and run zipl:

  • update /etc/zipl.conf

parameters="dasd=0201-020F,0191  root=/dev/dasda1"

  • and exec zipl

Here is a list of typical procedures for some some  distros:

on SLES8:

  • mk_initrd

  • update /etc/zipl.conf

ramdisk=/boot/initrd  parameters="dasd=201-20F,0191,01B4-01BF root=/dev/dasda1 initrd

  • zipl

on RHEL3:

  • update /etc/modules.conf

options dasd_mod dasd=201-20F,191,01B4-01BF

  • cd /boot

  • mkinitrd -f initrd-2.4.21-4.EL.img 2.4.21-4.EL

  • update /etc/zipl.conf

ramdisk=/boot/initrd-2.4.21-4.EL.img  parameters="root=/dev/dasda1 initrd"

  • zipl

on SLES9:

  • chccwdev -e <devno>

  • chccwdev -e 202

To have at initial boot:

  • mk_initrd

  • zipl

on RHEL4:

  • update /etc/modprobe.conf

options dasd_mod dasd=201-20F,191,01B4-01BF

  • cd /boot

  • mkinitrd -f initrd-2.6.8-1.528.2.10.img  2.6.8-1.528.2.10

  • update /etc/zipl.conf

ramdisk=/boot/initrd-2.6.8-1.528.2.10.img  parameters="root=/dev/dasda1 initrd"

  • zipl

Of course, the above may no longer apply to your  specifics so your mileage will vary.

 

Redhat for example, generally required the  modprobe.conf to be updated in addition to zipl.conf. Whereas, Novell/SuSE SLES  needed only zipl.conf to be updated to read the dasd parms. Also as indicated  above, the following is necessary only if you specify kernel parameter INITRD in  Redhat (below, like above is only an example of a specific kernel level).

  • mkinitrd /boot/initrd-2.6.9-22.EL1.img 2.6.9-22.EL

  • mv initrd-2.6.9-22.EL1.img initrd-2.6.9-22.EL.img


chccwdev  command

 

This is a nice command that allows you to take a  device online or offline to zlinux. Under z/VM you can attach a disk device and  the use this command to bring it online and then mount the filesystem to linux  or prepare one if needed.

 

Command Syntax:

chccwdev -d xxx to remove a device (take  offline)

chccwdev -e xxx to add a device (bring online)

Verify device status by

cat /proc/dasd/devices (reference: SuSE  sles10)

 

My next post will discuss some of the great  features that z/VM creates for the zLinux administrator.

 

For example, you can setup the ability to mount  other zLinux machine's volumes to your zlinux and fix them in the event that you  can not bring up the other zLinux.

 

Additionally in future posts, I will discuss other  utilities available that allow zlinux to converse with other z/VM guests  directly using a device driver and a command called hcp.

 

Stay in touch.