|
AS4100
Installing RedHat Linux 6.0 on a Digital (DEC) Alpha 4100
Jason Blakey - jblakey@playground.net
August 15, 1999
Synopsis
Yes! - it can be done - RedHat Linux 6.0 does run on the Alpha platform - and
yes, i did get it runnning. This document should help others get there
as well (or at least, that is my hope). Getting Linux up on the Alpha
was a 3 day, trial-and-error fest, and if this document helps anyone else
bypass that joy, then i'm happy.
Preliminaries
- Upgrade Firmware
-
Trying to install Linux on a box that is running less than the most recent
firmware revision is an exercise in futility. At the SRM prompt, you can
type show vers to display the current firmware level. If need be,
please visit:
http://ftp.digital.com/pub/DEC/Alpha/firmware/readmes/alpha4x00.html
and download/install the appropriate firmware update. The documentation
for this is actually quite helpful and well written.
NOTE: To get to 5.4 (the most recent version), you must first upgrade
to version 5.3, then make the jump to 5.4. Otherwise, the 5.4
upgrade will NOT work.
- Build Your Installation and Ramdisk Diskettes
-
To boot up the installer, you need to build two 1.44MB floppy disks -
one containing the kernel and installation scripts, and a second which
has a copy of the RAMDISK image for Linux. Most models of Alphas
need to use their own kernel image. In the case of the 4100,
the image is titled generic.img, and you can locate it (and ramdisk) at:
ftp://ftp.digital.com/pub/linux/redhat/current/alpha/images/
If you have a different alpha, please consult:
http://www.redhat.com/corp/support/manuals/RHL-6.0-Manual/alpha-inst/booklet/doc009.html#s1.4
where there is a table which shows which images are needed by each model of alpha.
On a linux box (ix86), the following commands will help build your floppies
/bin/dd if=generic.img of=/dev/fd0 bs=72k
/bin/dd if=ramdisk.img of=/dev/fd0 bs=72k
(Of course, you need to have the generic.img and ramdisk.img files
already downloaded to do this...).
- Verify Your Hard Drives
-
Using the show config and show dev commands, verify
that your SCSI devices are visible to the system. If you can't see
your hard drives, then Linux will not be able to either.
The Installation
After much hindsight-provided knowledge, the installation of RedHat Linux 6.0 on an 4100 should go like this:
- Insert your generic.img disk in the floppy drive, and type
the following commands at the SRM prompt:
-
First, set up the boot flags - the 4100 cannot accept all these options
on the command line, so we need to store them in boot_osflags
set boot_osflags "root=/dev/fd0 load_ramdisk=1 prompt_ramdisk=1"
Now, boot the box from the linux kernel (compressed) on the floppy
boot dva0 -file vmlinux.gz
- When the box comes up, follow the standard RedHat installation
-
This document assumes you are famiiliar with the RedHat installation process.
- Partition Your Hard Drives
-
This is an interesting part - and a little tricky, so pay attention.
The boot drive needs to be labeled with BSD-style disk labels.
All other drives need standard Linux style partitioning to be
recognized.
- Notes on BSD-Style Disk Labeling
-
To properly install aboot (a boot-loader that helps your
Alpha load Linux), you need to leave a little free space at the
start of your hard disk - say approx 10 Megs (to be safe). To
accomplish this, start your A partition on cylinder 10 or
so.
In the example shown below, the setup is like this:
- It's a 4.3 GIG drive
- Partition A is my main partition
- Partition B is my swap partition
- Partition C represents the entire disk (You have to have a partition like this)
Note: Make sure you set your fstype flags (ext2 for Linux partitions,
and swap for swap partitions), otherwise the Linux Installer will not
recogize them.
Here is what my labeling looks like (mileage may vary):
BSD disklabel command (m for help): p
3 partitions:
| Partition | size | offset | fstype | [fsize bsize cpg] |
| a: | 5462100 | 160650 | ext2 | # (Cyl. 72*- 2488*) |
| b: | 2763180 | 5622750 | swap | # (Cyl. 2488*- 3711*) |
| c: | 8380080 | 0 | unused | 0 0 # (Cyl. 1 - 3708) |
Please note: the cylinder display is NOT correct - this is due to a wierd
virtual addressing scheme hard drives use nowadays.
- Let the installation Run
-
Depending on where you are downloading from (or if you are loading from
CD-ROM, which i did not), installation may take 30 - 60 minutes. Always
a good time to read a little Heinlein...
After the Installation Completes
- Reboot to the SRM Prompt
- Boot from Floppy with the Hard Drive as Root
-
First, clear your boot_osflags variable
set boot_osflags ""
Next, do the boot
boot dva0 -file vmlinux.gz -flags "root=/dev/sda1"
Note: This command is VERY specific to my system - you root disk may be
different.
The box should boot, and after a little while, present you with a
Login: prompt. YAY! - We are almost there...
- Install ABOOT
- Remember when we saved some cylinders at the start of the hard disk? Here
is where they get used. Execute the following command:
/sbin/swriteboot /dev/sda /boot/bootlx -f3
Note: If your boot disk is not sda - then you need to experiment!:)
- Install the kernel in the proper location
-
For some reason, the redhat installer does NOT install a kernel in the root
directory. You need to do a:
cp /boot/vmlinux-2.2.5-16 /vmlinux
- Shutdown the System
-
Issue a
/sbin/init 0
command to bring the box down. When it has halted, reload the box and
get to the SRM prompt.
- Set the SRM Boot Variable
-
| Command | What it Does |
| set bootdef_dev "dkb0" | Sets the boot device |
| set boot_file "1/vmlinux" | Sets which file to boot from |
| set boot_action "boot" | Sets the boot action to autoboot |
| set boot_osflags "root=/dev/sda1" | Tells the kernel where root is |
| set boot_reset "on" | ??? - dunno |
NOTE: Depending on your system, the values in this table WILL be different
than dkb0, 1/vmlinux or /dev/sda1
Booting Linux from the Hard Drive
- Once you have all your variables set, just issue the command:
-
boot
and the system should initialize, locate the kernel on the hard disk,
load it, and then mount your partitions. If you run into problems, the
following SRM commands can be quite useful:
| Command | What it Does |
| show | more | Will show all environment variables set |
| show config | Will show the configuration of the box |
| show dev | Will probe for attached devices |
| show version | Will display the version of firmware installed |
Some Helpful Websites
Here are a few helpful / interesting websites:
- The AlphaLinux HomePage
- Digital's Website
- RedHat Linux 6.0 Alpha Instructions
NOTE: A very useful mailing list is the RedHat Alpha mailing list, which
can be reached at axp-list@redhat.com.
Comments / Questions - Contact jblakey@playground.net
|