Re: IBM z/VM 6.1 + z/Series + Debian
On Tue, 14 Sep 2010 22:45:37 -0400 (EDT), anandhcoe wrote:
> Thanks for your reply.. I have downloaded three iso images of Debian
> Linux as debian-505-s390-CD-1.iso, debian-505-s390-CD-2.iso and
> debian-505-s390-CD-3.iso !! Then i downloaded the booting files likes
> initrd, parmfile.debian, debian.exec and kernel!!!! I have created a Z/VM
> image over which i am going to install Debian Linux!!! Thereby i have
> transferred all the bootable files to the Z/VM... I don no to proceed
> further... Could you pls help on this...
> Which file is used as bootable and how to do that....
If you're installing the Debian GNU/Linux s390 port in a virtual machine
under z/VM, you don't need any CD images. Do you have any experience
running any other Linux distributions under z/VM? If so, your experience
in setting up network connections will be valuable. If not, let me tell
you in advance that getting the network connections to work is the
hardest part of setting up a Linux virtual machine under z/VM. A working
network connection is a *requirement* for a virtual machine installation:
it is not optional. If you don't have any previous experience installing
any Linux distribution under z/VM, I suggest that you read the IBM
publication "Getting Started with Linux on System z", SC24-6096.
The preferred network connection is a virtual switch. See the IBM
publications for details.
Depending on which release of z/VM you are running, it may be important
in the virtual machine's directory entry, as opposed to, say,
On some releases of z/VM, a virtual machine with "MACHINE XA" in its
directory entry *cannot* be switched into z/Architecture mode during
execution, whereas a virtual machine with "MACHINE ESA" in its
directory entry *can* be switched into z/Architecture mode during
execution. The newer kernels do switch into z/Architecture mode
very soon after booting; so if your virtual machine can't make the
switch, you will be "dead in the water". I believe newer releases
of z/VM treat "MACHINE XA" as an alias for "MACHINE ESA", but it's
best to use "MACHINE ESA". Also, make sure your virtual machine
has enough virtual storage. I usually use about 512M for installs,
which should be plenty. I adjust the virtual storage size later
as needed, depending on workload.
The first step is to download the newest installation images you can
find. The last time I tried to use the production Squeeze installer,
it wouldn't even boot. In fairness, that was several months ago; so
maybe that problem has been fixed since then; but in my experience
the newer the installation image, the more likely it is to work.
(By the way, I'm assuming that you want to install Squeeze. I wouldn't
mess with Lenny at this late date. Squeeze is already frozen, and
will become the stable release soon.)
The latest installation images used to be located here:
These images were built on Frans Pop's personal web space on
people.debian.org. But sadly, due to Frans' recent death, these
images are no longer available; and we must look elsewhere.
Logon to the Linux virtual machine and IPL CMS. If you don't
have the FTP client files on the Y disk, LINK and ACCESS
the TCP/IP client disk
LINK TCPMAINT 592 592 RR
ACCESS 592 E
Now, FTP to your favorite Debian mirror. For example,
get debian.exec DEBIAN.EXEC
get parmfile.debian PARMFILE.DEBIAN
binary f 80
get initrd.debian INITRD.DEBIAN
get kernel.debian KERNEL.DEBIAN
Obviously, make sure that the virtual machine (I'll call it DEBIAN1)
has enough space on its "A" disk to download these files. Notice
that we went to the "sid" distribution, not the "squeeze"
distribution, to download the installer files. These are the
latest images that I can find at the moment. Sometimes you
can find images under "experimental" in addition to "sid".
The "experimental" images, if they exist, are generally newer
than the "sid" images, but right now they don't exist.
Now we need to do some post-processing. If you used the
binary f 80
command in the FTP client, as shown above, the "INITRD DEBIAN A"
file and the "KERNEL DEBIAN A" file should be OK. They will be
fixed-length, 80-byte files, padded with binary zeros as necessary
to make the last record exactly 80 bytes long. That's what they
need to be, since we are going to IPL from a virtual card reader.
But the "DEBIAN EXEC A" file and the "PARMFILE DEBIAN A" file
need some work. By virtue of being downloaded under the "ascii"
protocol, as shown above, a translation was made between ASCII
and EBCDIC during download. But the files are not in the final
format that they need to be in.
PIPE < DEBIAN EXEC A|JOIN *|SPLIT AT X25|> DEBIAN1 EXEC A
ERASE DEBIAN EXEC A
RENAME DEBIAN1 EXEC A DEBIAN = =
This sequence of commands will create a "DEBIAN EXEC A" file
in the proper format for execution as an "EXEC" (script) under CMS.
Note that X25 (X'25') is the EBCDIC code for a line-feed character, which
is X'0A' in ASCII, but we must use X25 since the data has already
been translated to EBCDIC.
Now we need to work on the "PARMFILE DEBIAN A" file. Edit the
file with the System Product Editor (XEDIT).
XEDIT PARMFILE DEBIAN A
Assuming that you have
SET NONDISP "
in effect, which is the default, the file should look like this:
The quotation mark (") at the end of the line represents the
line-feed character (X'25'). This character is not displayable,
so XEDIT substitutes the quotation mark in its place. It is
NOT a literal quotation mark. The first thing we need to do is to issue
some commands on the command line to preserve the data in the file
from unwanted translations:
SET CASE MIXED RESPECT
SET IMAGE OFF
SET NULLS ON
I recommend running the installer in expert mode;
so issue the following commands:
CHANGE :locale=C:locale=C debconf/priority=low:
Notice that we had to use a non-standard delimiter, the colon in this
case, since the new text contains a forward slash.
Now, before filing the data, make sure that the trailing line-feed
character, X'25', is still there and has not been overlaid by issuing
SET VERIFY OFF H 1 *
This will cause the editor to display the file in hexadecimal. The
last two digits displayed (except for trailing blanks, whose code in
EBCDIC is 40) should be 25. The trailing blanks will be stripped off
when the FILE command is issued.
Now, convert the file into the proper format for use by Linux:
PIPE < PARMFILE DEBIAN A|XLATE E2A|FBLOCK 80 00|> PARMFILE DEBIAN1 A F
ERASE PARMFILE DEBIAN A
RENAME PARMFILE DEBIAN1 A = DEBIAN =
This converts the file from EBCDIC back to ASCII and pads it with nulls
as needed to make it a fixed-length, 80-byte file.
Now check your virtual reader to make sure that there are no reader files
that you want to save. The DEBIAN EXEC file that you are about to
run will purge all files from your virtual reader.
When you are ready to begin the install, type
at a CMS "Ready;" prompt. This will spool your virtual punch to your
virtual reader, punch the kernel, parmfile, and initrd images (which get
transferred to the virtual reader), then IPL from the virtual reader.
No CD is required! CDs are used when installing Linux in an LPAR,
but when installing in a virtual machine under z/VM they are not needed.
Perform the first few installation steps in order using the 3215 virtual
console. These steps are as follows:
1. Configure the network device
2. Configure a network using static addressing
3. Continue installation remotely using SSH
Once these steps are done, you must use a remote ssh client to connect
to the virtual server, login to the installation id, and continue the
installation from the network console. I use PuTTY as my remote ssh client
from my Windows workstation. PuTTY is free software and is
When you configure your PuTTY session, be sure to use the UTF-8 character
set (under Window -> Translation) or the graphics characters used by the
installer will look horrible. Once I get Debian installed, I usually
change the locale to en_us via
shutdown and reboot, then change my PuTTY session to ISO-8859-1.
You may also want to visit my web site at
I have a number of things on that site that may be useful to you, such
as how to implement the dasd diag driver, which I recommend for anyone
running Debian in a virtual machine under z/VM. For more detailed installation
instructions, see the Installation Guide at
This should get you started.
.''`. Stephen Powell
: :' :