Subject: Booting Linux from second disk

From: Jeremy Welling <[email-masked]>
Date: Fri, 15 Aug 1997 11:26:18 -0400 (EDT)

OK, we have /vmlinux:

-rwxr-xr-x 1 root sys 1137360 Aug 15 10:54 vmlinux

which came from:

ftp://ftp.linux.sgi.com/pub/test/vmlinux-970813-jwr.gz

We have extracted the root cpio and this is what the root dir of the
second disk looks like:
linux 8# cd /d
linux 9# ls -la
total 212785
drwxr-xr-x   18 root     sys         4096 Aug 15 10:50 .
drwxr-xr-x   21 root     sys          512 Aug 15 11:01 ..
-rw-r--r--    1 root     sys         1080 Aug 15 10:29 CONTENTS
drwxr-xr-x    2 root     sys         4096 Aug 15 10:39 bin
-rw-r--r--    1 root     sys      4480163 Aug 15 10:29 binutils-2.7.tar.gz
drwxr-xr-x    2 root     user           9 Aug 15 10:41 boot
drwxr-xr-x    2 root     user           9 Aug 15 10:41 cdrom
drwxr-xr-x    2 root     user       12288 Aug 15 10:39 dev
drwxr-xr-x    2 root     user         120 Aug 15 10:52 etc
-rw-r--r--    1 root     sys      7089723 Aug 15 10:29 gcc-2.7.2.tar.gz
-rw-r--r--    1 root     sys      5237187 Aug 15 10:29 glibc-2.0.4-1.tar.gz
-rw-r--r--    1 root     sys      3937333 Aug 15 10:29 glibc-2.0.4.tar.gz
-rw-r--r--    1 root     sys        76738 Aug 15 10:29 glibc-linuxthreads-2.0.4.tar.gz
-rw-r--r--    1 root     sys       519573 Aug 15 10:29 glibc-localedata-2.0.4.tar.gz
drwxr-xr-x    2 root     user           9 Aug 15 10:41 home
drwxr-xr-x    2 root     user        4096 Aug 15 10:41 lib
drwxr-xr-x    2 root     user           9 Aug 15 10:41 libexec
drwxr-xr-x    2 root     user           9 Aug 15 10:41 mnt
drwxr-xr-x    2 root     user           9 Aug 15 10:41 proc
drwxr-xr-x    2 root     user           9 Aug 15 10:41 pub
-rw-r--r--    1 root     sys      86418944 Aug 15 10:30 root-0.00.cpio
drwxr-xr-x    2 root     sys         4096 Aug 15 10:33 rpms
drwxr-xr-x    2 root     sys          118 Aug 15 10:39 sbin
drwxrwxrwt    2 root     user           9 Aug 15 10:41 tmp
drwxr-xr-x   11 root     user        4096 Aug 15 10:41 usr
drwxr-xr-x    2 root     user           9 Aug 15 10:41 var
-rw-r--r--    1 root     guest    1137360 Aug 15 10:49 vmlinux

FX says this about the drive:

...controller test...OK
Scsi drive type == SGI     IBM DORS-32160  WA6A

----- partitions-----
part  type       cyls             blocks          Megabytes   (base+size)
  7: xfs        5 + 6696       3125 + 4185000       2 + 2043 
  8: volhdr     0 + 5             0 + 3125          0 + 2    
 10: volume     0 + 6715          0 + 4196875       0 + 2049 
 15: xfslog  6701 + 14      4188125 + 8750       2045 + 4    

capacity is 4197405 blocks

We have tried booting miniroot, running command monitor then running sash
and we have tried:

boot /vmlinux root=/dev/sdb1 which just fails

and 

boot /vmlinux root=/dev/sdb7 which boots IRIX

HELP! :)

Any ideas?

Thanks!
                 Eric and Jeremy

P.S. Anyone internal, for now, root password is fairly obvious. linux

---

From: Ralf Baechle <[email-masked]>
Date: Fri, 15 Aug 1997 19:14:51 +0200 (MET DST)

> We have extracted the root cpio and this is what the root dir of the
[...]

I you can do this under IRIX the problem is very easy to find - you're
using XFS which Linux can't read.  Stupid enough IRIX can't read ext2fs.

  Ralf

---

From: Miguel de Icaza <[email-masked]>
Date: Fri, 15 Aug 1997 13:50:15 -0500

> boot /vmlinux root=/dev/sdb7 which boots IRIX

Ok, it is not that simple.  

The problem is that the Linux kernel does not have a module for
accessing EFS, so you have to do this in two steps:

	1. Un cpio the root-*.cpio.gz on a machine on the network
	   and tell Linux to use that as its root file system:

		boot /vmlinux nfsroot=132.248.29.5:/tftpboot/the-root-dir

	   Replace 132.248.29.5 for the IP address of your NFS server
	   and /tftpboot/the-root-dir for the exported directory in
	   your NFS server that holds that stuff.

	2. Prepare to get rid of EFS on your disk.

	   Run the mke2fs command on the proper device to create
	   the Linux ext2 file system.

	3. Un-cpio the file again, this time on your root disk.

	4. umount the disk, and reset the machine.

Miguel.

---

From: Eric Kimminau <[email-masked]>
Date: Fri, 15 Aug 1997 16:18:08 -0400

OK: last report before I leave for the weekend.  These steps given by
Miguel didnt work for us. What "did" work so far is that we set up a
tftp boot server on labb.detroit, got all the stuff uncompressed on it,
booted miniroot on linux.detroit, setenv diskless 1 then did the
following:

boot -f bootp()labb.detroit:/tftpboot/linux/vmlinux
nfsaddrs=169.238.129.18,169.238.129.5

labb (tftpboot server=169.238.129.5, linux=169.238.129.18)

It boots but as soon as it sees the ethernet driver we get this:

eth0: SGI Seeq8003 08:00:69:07:e6:29  (which is our correct MAC addr)_
Unable to handle kernel paging request at virtual address 00000008, epc
== 880cbc5c, ra == 880cbc3c

The keyboard is still active but the machine is hung. You cannot ping
linux's IP address either.

Looks like we have a problem with this kernel and our hardware but I
couldn't tell you anything more than that.

Anyone have any ideas for Monday morning?
See ya!
                     Eric.

-- 
Eric Kimminau                           System Engineer/RSA
[email-masked]                     Silicon Graphics, Inc
Voice: (248) 848-4455                   39001 West 12 Mile Rd.
Fax:   (248) 848-5600                   Farmington, MI 48331-2903

                 VNet Extension - 6-327-4455
              "I speak my mind and no one else's."
       http://www.dcs.ex.ac.uk/~aba/rsa/perl-rsa-sig.html

    When confronted by a difficult problem, solve it by reducing 
    it to the question, "How would the Lone Ranger handle this?"

Windows 95: n.
    32 bit extensions and a graphical shell for a 16 bit patch to an
    8 bit operating system originally coded for a 4 bit microprocessor,
    written by a 2 bit company that can't stand 1 bit of competition.

    Author unknown.

---

From: Ralf Baechle <[email-masked]>
Date: Sat, 16 Aug 1997 00:51:02 +0200 (MET DST)

> == 880cbc5c, ra == 880cbc3c

Could you send me the disassembler output of the kernel you've booted?
Use command like

  mips-linux-objdump -d vmlinux --start-address=0x880cbb00 --stop-address=0x880cd00

to produce the dissassembler listing.

  Ralf

---

From: Eric Kimminau <[email-masked]>
Date: Sat, 16 Aug 1997 01:15:43 -0400

> to produce the dissassembler listing.

I will when I get back in the office on Monday, but its the latest
kernel available on ftp.linux:

-- 
Eric Kimminau                             System Engineer
[email-masked]                       Silicon Graphics, Inc
Vox:(810) 848-4455                        39001 West 12mile Road
Fax:(810)848-5600                         Farmington, MI 48331-2903
            "I speak my mind and no one else's."
    http://www.dcs.ex.ac.uk/~aba/rsa/perl-rsa-sig.html

-----END PGP PUBLIC KEY BLOCK-----
http://bs.mit.edu:11371/pks/lookup?op=vindex&search=Eric+A.+Kimminau&fingerprint=on

---

From: Eric Kimminau <[email-masked]>
Date: Mon, 18 Aug 1997 10:40:07 -0400

> to produce the dissassembler listing.

Sorry, I got your message late on Friday. How do I acomplish this on a
system that won't boot?

Windows 95: n.

    Author unknown.

---

From: Ralf Baechle <[email-masked]>
Date: Mon, 18 Aug 1997 19:29:26 +0200 (MET DST)

> Sorry, I got your message late on Friday. How do I acomplish this on a

Use the crossdev tools :-)

  Ralf