view body-zvm-centos4.html @ 18:090d339bcbc0 default tip

updates --- hercules-s390.html | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-)
author Peter van Dijk <peter.van.dijk@netherlabs.nl>
date Fri, 25 Oct 2013 08:22:27 -0400
parents e5ab4d0d4407
children
line wrap: on
line source

</pre>
<hr>
<h2>Let's get started</h2>

<p>
If you follow this HOWTO, at the end of it you'll have a 31-bit CENTOS 4.6
running under z/VM.
</p>

<p>
The following howto assumes, that you know at least a little bit of:
<ul>
	<li>CentOS/RHEL installer familiarity on non s390</li>
	<li>General networking knowledge</li>
</ul>
</p>

<p>
The following software is required:
<ul>
	<li>telnet client</li>
	<li>3270 terminal emulator (e.g., c3270)</li>
</ul>
</p>

<p>
The install can take anywhere from half hour to a couple of hours depending
on a couple of things, including your internet connection speed, as well as
how much CPU time your VM guest gets.
</p>

<!--more-->

<p>
First of all, you'll need to get the installation files to get things going.
</p>

<p>
So, point your browser to the mirror nearest you, navigate to this path:
<pre>/centos-4/4.6/os/s390/images/</pre>

and grab these files:
<pre>
kernel.img
initrd.img
generic.prm
</pre>

I used CentOS 4.6 to write this howto, but a newer version should work just
as well.<br/>
<br/>
Note: If you want a 64-bit system, you'll want to use <strong>s390x</strong>
in the path instead.<br/>
<br/>
I used this REXX script as to make my life easier. I called it
redhat.exec (you'll notice that some of the files are called redhat or rhel,
that's because I based my install steps on scripts/config files used to
install RHEL on s390):<br/>
<pre>
/* */                    
'CL RDR'                 
'PURGE RDR ALL'          
'SPOOL PUNCH * RDR'      
'PUNCH KERNEL IMG A (NOH'
'PUNCH REDHAT PARM A (NOH'
'PUNCH INITRD IMG A (NOH'
'CH RDR ALL KEEP NOHOLD' 
'I 00C'
</pre>
</p>

<p>
Login to your VM id, and start CMS <pre>ipl cms</pre>. Then transfer the
files you got to your A minidisk. You can either use FTP, or IND$FILE
through your 3270 terminal emulator. I used the IND$FILE method via c3270.<br/>
<br/>
<b>Note:</b> The .img files should be transfered as binaries, and the other
two need to be converted to EBCDIC. Both, FTP and IND$FILE support
converting between ASCII and EBCDIC.<br/>
<br/>
I used the following commands in c3270 to do the transfers:<br/>

<pre>
transfer host=vm ... mode=binary localfile=kernel.img &quot;hostfile=kernel img a&quot;
transfer host=vm ... mode=binary localfile=initrd.img &quot;hostfile=initrd img a&quot;
transfer host=vm ... mode=ascii localfile=redhat.exec &quot;hostfile=redhat exec a&quot;
transfer host=vm ... mode=ascii localfile=generic.prm &quot;hostfile=generic prm a&quot;
</pre>

As one might easily guess, the first is the kernel image, and the second is
the initrd. The third file is a short REXX script that'll punch the files in
the proper order to your rdr, and then IPLs from device 000c - which by
convention is your rdr. The last file contains the kernel command line
options, which on systems like i386, you specify via a keyboard to the
bootloader.
</p>

<p>
At this point, your CMS A minidisk should look like something like
this:<br/>
<img src="zvm-centos4/install1.png" alt="CMS listing the files on A" /><br/>
<br/>
The RHEL5.CONF file contains configuration options for the installer. Here's
an example config file from the CentOS install docs:

<pre>
DASD=200
HOSTNAME=client.z900.example.com
NETTYPE=ctc
IPADDR=192.168.0.10
SUBCHANNELS=0.0.0150,0.0.0151
NETWORK=192.168.0.0
NETMASK=255.255.255.0
SEARCHDNS=example.com:dns.example.com:z900.example.com
BROADCAST=192.168.0.255
GATEWAY=192.168.0.1
DNS=192.168.0.254
MTU=1492 
CTCPROT=0
</pre>

You will want to change the DASD to list all your DASDs that Linux should
bring online. The HOSTNAME, IPADDR, NETWORK, NETMASK, SEARCHDNS, BROADCAST,
GATEWAY, DNS, and MTU need to be changed to match your network config. And
chances are that you'll want to change NETTYPE to qeth, or something other
than ctc (possible values are: ctc, qeth, iucv, lcs). Go read the 
<a href="http://www.centos.org/docs/4/4.5/rhel-ig-s390-multi-en-4/ch-parmfiles.html">CentOS documentation</a>
to figure out what are all the options you can use in the config file.
</p>

<p>
Now, it is time to run the REXX script. Just type <pre>redhat</pre> and
press enter. You'll see the reader getting purged, and then three files
getting punched:<br/>
<img src="zvm-centos4/install2.png" alt="Files punched to RDR" />
</p>

<p>
Shortly after, you'll see the kernel banner displayed. Since I installed
CentOS 4.x, the kernel version is 2.6.9. If you use 5.x, the version will be
obviously different.<br/>
<img src="zvm-centos4/install3.png" alt="Kernel banner" />
</p>

<p>
Some more scrolling later, you'll see a message prompting you to telnet or
ssh into the system, and continue with the installation process:<br/>
<img src="zvm-centos4/install5.png" alt="SSH/telnet prompt" /><br/>
SSH or telnet in as root. The password is the empty string, so when
prompted for it, simply press the enter key.<br/>
<br/>
At this point, the install process is much like network install on any other
architecture.
</p>

<p>
The regular CentOS installer will kick in. It'll prompt you for the type of
install (http, ftp, nfs). I went with HTTP.<br/>
<br/>
The next screen prompts you for the hostname and path on the HTTP server
that contains the CentOS packages:<br/>
<img src="zvm-centos4/install7.png" alt="SSH/telnet prompt" /><br/>
Right after, the installer tries to grab stage 2 of itself:
<img src="zvm-centos4/install8.png" alt="Stage2 being downloaded" /><br/>
</p>

<p>
Partition your DASDs whichever way you want. It's a good idea to use LVM,
since DASDs are limited to about 2.2GB (3338 cylinders). On my setup, I made
/home a logical volume of 5 3390-3 DASDs.
</p>

<p>
Most of the questions the installer normally asks you get answered by the
options in the RHEL5.CONF file. And before long, you'll see the install
process doing its thing:<br/>
<img src="zvm-centos4/install9.png" alt="Install!" />
</p>

<p>
Although this howto was aimed at 31-bit CentOS...<br/>
<ul>
	<li> installing a 64-bit version should be the same process...just
	use the <i>s390x</i> directories on the mirror instead of
	<i>s390</i>.</li>
	<li> installing RHEL 4.x should be the same process; just grab the
	right kernel/initrd files, and then point the installer at a server
	with RHEL4 RPMS.</li>
</ul>
</p>

<h2>Final Note</h2>
<p>
I hope this HOWTO helped you get started with CentOS under z/VM. I tried to
be as accurate and specific with the details where I thought it was
necessary - the S/390 specific parts. If you have any suggestions, or
comments (content, spelling, etc.) feel free to contact me via email:
<a href="mailto:jeffpc@josefsipek.net">jeffpc@josefsipek.net</a>.
</p>

<hr>
<h2>Full history</h2>
<pre>