[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[cobalt-developers] Procedure to install RedHat 8 on a Cobalt (Raq3)
- Subject: [cobalt-developers] Procedure to install RedHat 8 on a Cobalt (Raq3)
- From: "Francisco Jorge" <franjorge@xxxxxxxxxxx>
- Date: Tue Apr 22 07:11:01 2003
- List-id: Discussion Forum for developers on Sun Cobalt Networks products <cobalt-developers.list.cobalt.com>
Hi,
Some time ago I promised to write down the procedure to install RH 8 on a
Raq3 without removing the hard disk. I wrote it the same day of the initial
post, but I wanted to check if there were any mistake on it. Unfortunately I
am becoming more and more busy, so I think I will not have time to do this
in a near future.
So I have decided to post the NON TESTED procedure I have written down some
time ago. Please note that I cannot take any responsibility of any damage
caused to your Cobalt if you decide to try it.
All I can say is that I have the RedHat running on my Cobalt for some weeks
now and it works fine and that I have tried to write the same steps I
followed.
Please note that I have written this procedure more or less by heart. So
maybe I have forgotten some steps or maybe some are unnecessary. If you get
stuck at any point, please, write to the list. I will try to answer as soon
as I can. If anybody is willing to rewrite this procedure in correct English
and put it in a web page, he or she will be welcomed.
If after all these warnings you are still willing to try it, please let me
know if it worked out for you.
And finally, here you have the steps:
Please note that this procedure may void your Cobalt guarantee and can even
make your Cobalt not to boot again!!!!!!
I cannot take any responsibility to damages caused to your Cobalt during any
of the exposed steps.
1) Upgrade the rom kernel as explained in
http://www.gurulabs.com/rhl-cobalt-howto/redhat.qube3.howto.2.html, but
instead of the 2.3.40.rom use the rom in:
ftp://ftp-eng.cobalt.com/pub/users/thockin/2.4/2.9.34.rom.
Please read all the READMES and warnings.!!!!!!!!!!!!!!!!!
I have not tried the 2.3.40 rom, but I have seen that 2.9.34 rom offers many
interesting features.
2) You need another machine running Linux in order to act as a DHCP and NFS
server. Configure the DHCP server to offer an IP to the Cobalt when it
boots. I have connected the Cobalt and the Linux server to the same LAN
segment, and the DHCP has offered an IP of the same IP subnet to the Cobalt.
3) Copy the contents of the RedHat directory and the Release Notes on the
three CDs of the RH distribution to a directory in the Linux machine. Repeat
these steps for each CD:
 Insert disc
 mount /mnt/cdrom
 cp -a /mnt/cdrom/RedHat /target/directory
 cp /mnt/cdrom/RELEASE-NOTES* /target/directory
 umount /mnt/cdrom
 eject
4) Copy the file bootnet.img from the ?images? directory on the first CD of
the RH distribution to the Linux machine.
5) Mount the bootnet.img as a loopback device, for example in /mnt
mount -o loop bootnet.img /mnt
6) Copy the file /mnt/initrd.img for example to the /root directory of the
Linux machine:
cp /mnt/initrd.img /root
7) The initrd.img file is gziped, although it does not have the gz suffix.
In order to decompress it we need to change its suffix first and then gunzip
it:
cd /root
mv initrd.img initrd.img.gz
gzip -d initrd.img.gz
8) Umount the /mnt directory
umount /mnt
9) Mount the initrd.img as a loopback device, for example again on /mnt.
mount ?o loop initrd.img /mnt
10) Copy everything under /mnt to /nfsroot-x8. You should not change the
name of this directory, since this is the place where the Cobalt will look
for the nfsroot filesystem (well, in fact you could, but you would have to
pass more arguments to the boot-rom):
mkdir /nfsroot-x86
cd /mnt
cp -a . /nfsroot-x86/
umount /mnt
11) Change permissions to everything under /nfsroot-x86 in order to allow
the installation program of RedHat to write onto the tmp directory
chmod -R 777 /nfsroot-x86
12) Export the /nfsroot-x86 and the directory where you have copied the
RedHat CDs in step 3) in NFS. In order to do this edit the /etc/exportfs
file in the Linux machine and add the following lines
/nfsroot-x86 172.16.1.0/24(rw)
/target/directory 172.16.1.0/24(rw)
Substitute 172.16.1.0/24 with the IP subnet to which the Linux machine is
attached and /target/directory with the directory where you have copied the
RH distribution.
Then issue the `exportfs` command in order to export the directories.
exportfs
13) On the Linux machine you have to compile a kernel. This kernel will be
used to boot the Cobalt from network. I have followed the following steps:
a) Go to the /usr/src/linux-2.4. If you do not have this directory on your
Linux machine you have to install the necessary packages to compile new
kernels (I do not know exactly which packages are these, but this is widely
explained in the WWW)
cd /usr/src/linux-2.4
b) Copy a config file to this directory. I have used the config file in
/usr/src/linux-2.4/configs/kernel-2.4.18-i386.config:
cp /usr/src/linux-2.4/configs/kernel-2.4.18-i386.config ./.config
c) Edit this file and add LVM and Ethernet support to the kernel, changing
the lines:
CONFIG_BLK_DEV_LVM=m
CONFIG_EEPRO100=m
with
CONFIG_BLK_DEV_LVM=y
CONFIG_EEPRO100=y
d) Prepare the system to compile the kernel with this new config file
make oldconfig
make dep
e) Compile the new kernel
make vmlinux
f) When finished, you will have a vmlinux file on /usr/src/linux-2.4.
Compress this file with either gzip or bzip2. I have used gzip, but this
really does not matter:
gzip vmlinux
g) Move the compressed file to the /nfsroot-x86 directory in order to make
it accessible via NFS
mv vmlinux.gz /nfsroot-x86
14) Now you have all you need to begin the installation of RedHat 8.0.
Attach a console to the serial port of the Cobalt and reboot it. When it
starts booting, press the space bar when told to do so in order to access
the ROM menu.
15) When you are in the boot menu type:
boot
to access the boot menu.
16) Then force a network boot typing:
bfn
17) The Cobalt will boot, taking the newly compiled kernel from the Linux
machine via NFS. This kernel will also mount the nfsroot-x86 filesystem from
the Linux machine and will start installation. During installation, you will
be asked to select an installation method (NFS), the distribution files
location (/target/directory written in step 3), the IP address of the NFS
server (this is the IP of the Linux machine), and some other obvious things
(netmask, DNS server, gateway, etc.). The rest of the installation is a
normal text-based RedHat installation, including disk format (You will loose
all your information on the Cobalt!!!!!!!!)
18) After installation is complete, there is still one problem to solve.
RedHat installation puts a complete bootsector on the /boot directory, which
can be used by lilo or grub to boot the machine. Nevertheless the Cobalt can
only boot a compressed kernel image, but not a bootsector. To solve this
issue, we need to put a compressed kernel image to the /boot directory of
the Cobalt. To do so, when the installation finishes, reboot the Cobalt. One
of the problems I have found is that with the general RedHat kernel, the
?reboot? command on the Cobalt does not work properly, so probably you will
have to switch it off and on again. Press the space bar during reboot in
order to enter the rom menu.
19) In the rom menu type
bfx n d
This will boot the Cobalt using the kernel in the Linux box, but mounting
the recently created filesystem in the Cobalt.
20) When the Cobalt reboots, compile the kernel in the Cobalt, following the
same steps described in step 12) but this time in the Cobalt, instead of the
Linux box. Copy the vmlinx.gz to the /boot directory and reboot the Cobalt.
Again, you will have to switch it off and on after issuing the reboot
command (wait to switch the Cobalt off untill the message ?Restarting
System? appears).
And that?s it. Now your Cobalt has a brand new RedHat 8.0 installed. The
other problem I have found is that I cannot use the LCD display. I have a
/dev/lcd device, but if I try to use the lcd-write utility (you can install
the lcd packages from the Cobalt Restoration Disk) I get the message ?LCD is
not present?.
21) Lately I have received the following message from Duncan Laurie. Now I
am running his kernel and it is working fine (including the reboot and the
lcd features), so you can use it as an alternative to the kernel compiled in
step 20. Thanks, Duncan:
----BEGIN OF QUOTE----
You will need a patched kernel to get a few things working right, one of
them is reboot because the RaQs do not have a standard PC BIOS. If you are
interested I have some RH8 kernel RPMS that have been modified to add cobalt
support. The binarys are here:
http://cobalt.iceblink.org/redhat/binary/
kernel-cobalt-III-2.4.18-24.8.0.i386.rpm # for RaQ 3, RaQ 4, Qube 3
kernel-cobalt-V-2.4.18-24.8.0.i386.rpm # for RaQ XTR, RaQ 550
This kernel includes the LCD driver necessary for the panel-utils package to
work, but you will need to install the lcd device first:
mknod /dev/lcd c 10 156
There is more information on how these kernels were built as well as the
required kernel patches available here:
http://cobalt.iceblink.org/redhat/build/readme.build
----END OF QUOTE----
_____________________________________________
Francisco Jorge
email: franjorge@xxxxxxxxxxx
_________________________________________________________________
Multiplica por cinco el tamaño de tu buzón de correo y envía adjuntos de
hasta 2 Mb con MSN Almacenamiento Extra. http://join.msn.com/?pgmarket=es-es