Mailing List Archive

Support open source code!


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: setting up scsi drives and lilo



>>>>> "Jim" == Jim Schweizer <schweiz@example.com> writes:

    Jim> Sign me 'confused again'

Well, LILO *is* confusing.  Aren't you glad it's not 1970 and you
don't have to do what LILO does by hand?

    Jim> It seems lilo is the only option left that I can think of to
    Jim> get the new kernels to recognize the scsi drives BUT...

    Jim> Do I boot the backup Linux on C: to install lilo since the
    Jim> Linux on /dev/sda1 doesn't recognize (can't see) the IDE
    Jim> drive (I can manually mount it to /mnt if I need it
    Jim> temporarily.) or do I mount the IDE drive and install lilo
    Jim> from /dev/sda1 (where I want the root partition to go.)

    Jim> I guess what I'm trying to ask is where do I put lilo to get
    Jim> the Compaq Prolinea to boot into Linux on /dev/sda and not
    Jim> into DOS on C:?

The basic answer is "leave LILO alone, just edit the lilo.conf and run
/sbin/lilo".  If you already have LILO running, and don't have a
specific need to make a boot disk, it's much easier to add a new
kernel by reconfiguring LILO.  It could actually easily be automated
with a rather simple Perl or shell script.  In fact, it is---that's
what "/sbin/liloconfig" is.  Why don't you just 'su' and
'/sbin/liloconfig'?  If that doesn't seem to work, you can do it by
hand.

When I upgraded from 2.0.0 to 2.0.20, I built the new kernel, and
placed in /boot with an appropriate name.  lilo.conf looked like this
before the upgrade (I leave out some standard stuff from the Slackware
lilo.conf that I've never needed to change):

boot = /dev/sda
# 1st Linux stanza - default because it's first
image = /boot/vmlinuz-2.0.0
  root = /dev/sda6
  label = linux200
# DOS stanza
other = /dev/sda1
  label = dos
  table = /dev/sda
# end of lilo.conf

and after the upgrade:

# 1st Linux stanza - default because it's first
image = /boot/vmlinuz-2.0.20-960924.1
  root = /dev/sda6
  label = linux2020
# 2nd Linux stanza
image = /boot/vmlinuz-2.0.0
  root = /dev/sda6
  label = linux200
# DOS stanza
other = /dev/sda1
  label = dos
  table = /dev/sda
# end of lilo.conf

Note that (1) the labels must all be unique and (2) there can be no
typos in the "image =" directives, or /sbin/lilo will do nothing.
Also note that since only the kernel is different, the "root ="
directive is the same for both kernels.

Theory:

LILO comes in three parts: a master boot record (MBR; it lives in the
same physical place on every PC-compatible disk), a bootloader
(/boot/boot.b), and the configuration tool (/sbin/lilo).

Because the PC BIOS does the initial booting of the system, the MBR
must live on a drive that the BIOS can see, presumably /dev/hda1 (ie,
DOS's C: drive).  The MBR is very small (512 BYTES); its only job is
to find the right boot.b.  /sbin/lilo finds this automatically, and
tells the MBR where it is.  You don't need to worry about it.

/sbin/lilo has no role in booting; it just needs to be anywhere on
your Linux $PATH when you decide to reconfigure.

boot.b must live in the file system in the root partition of the boot
drive specified in lilo.conf.  There are a couple of places it might
live, but /boot/boot.b is the standard one.  To find it, all you need
is to put the directive

boot = /dev/sda

at the top of lilo.conf.  Note that this does *not* depend on LILO
using the file system to find boot.b at boot time; /sbin/lilo finds it
in the file system, then determines the location in terms of the DOS
BIOS functions.  It places this BIOS pointer in the MBR.

This is all theory; DON'T edit the "boot =" directive unless other
things fail.  If there is already a "boot =" directive in lilo.conf,
leave it alone.  If there isn't, don't add one.  All you should need
to do is put the new kernel in the same directory as the old one (with
a unique name), copy the old kernel's stanza in /etc/lilo.conf, change
the "label =" and "image =" directives, and run /sbin/lilo as root.

Good luck,
Steve

-- 
                           Stephen John Turnbull
University of Tsukuba                                        Yaseppochi-Gumi
Institute of Policy and Planning Sciences  http://turnbull.sk.tsukuba.ac.jp/
Tennodai 1-1-1, Tsukuba, 305 JAPAN                 turnbull@example.com
-----------------------------------------------------------------
a word from the sponsor will appear below
-----------------------------------------------------------------
The TLUG mailing list is proudly sponsored by TWICS - Japan's First
Public-Access Internet System.  Now offering 20,000 yen/year flat
rate Internet access with no time charges.  Full line of corporate
Internet and intranet products are available.   info@example.com
Tel: 03-3351-5977   Fax: 03-3353-6096


Home | Main Index | Thread Index

Home Page Mailing List Linux and Japan TLUG Members Links