On Sat, 28 Dec 2013 18:54:18 +0000, Henrik Carlqvist wrote:
> On Sat, 28 Dec 2013 18:23:04 +0000, Clark Smith wrote:
>> I have a box with Slackware 13.0 installed in /dev/sda2. I added a
>> second drive, /dev/sdb2, in which I installed Slackware 14.1. The box
>> now boots 14.1, and I have access to the /dev/sda partitions simply by
>> mounting them by means of appropriate entries in /etc/fstab in the 14.1
>> disk.
>
> Did you add any such entries to fstab? If so, what do the entries look
> like?
They were added by the Slackware installation script.
>> What I would like to do now is to be able to select, at startup
>> time, whether to boot 13.0 or 14.1. My current lilo.conf contains the
>> following relevant lines:
>>
>> boot = /dev/sdb
>> bitmap = /boot/slack.bmp
>>
>> image = /boot/vmlinuz
>> root = /dev/sdb2
>> label = Linux
>> read-only
>
> This is a little interesting as it seems as if your motherboard prefers
> to boot from the MBR of /dev/sdb instead of /dev/sda. Did you on purpose
> alter some setting in your CMOS setup for this?
I did not do it on purpose; it just happened. I opened up the PC,
and installed the new drive without touching any already-existing
connections into the motherboard. I then booted off a USB stick where I
had the Slackware 14.1 stuff, and proceeded to install 14.1 on /dev/sdb
(actually, /dev/sdb2.) At the end of the installation, when prompted to
install LILO I chose to install it on the MBR - hence the lilo.conf file
above.
>> I know how to boot different kernels, when they all live in the same
>> drive; it's just a matter of adding new 'image' blocks. But I don't
>> know how to do it when the alternative kernel lives on a separate disk.
>
> Before running lilo you must mount all partitions containing kernels
> pointed to by image-lines in lilo.conf.
They are all mounted when the 14.1 system boots up.
>> Any ideas?
>
> Another idea would be to make your lilo installations to chain load to
> each other. That way the different Linux installations does not need to
> know anything about each others kernel files. You could add a lines like
> this to lilo.conf in your Slackware 14.1 installation on /dev/sdb2:
>
> other=/dev/sda
> label=First_disk
OK.
> And you can add the following in your Slackware 13.0 installation on
> /dev/ sda2:
>
> other=/dev/sdb
> label=Second_disk
OK. However, see my comment below.
> As allways, you will have to run lilo after editing lilo.conf. Is
> something goes wrong, boot from your favorite live CD, mount your Linux
> installation, fix lilo.conf and do a chroot to the mountpoint before
> running lilo again. It is also possible to do "lilo -r
> /path/to/mounted/sdb2".
Dealing with lilo.conf on the 14.1 system is straightforward, for
that's the system that is being booted up - I just change /etc/lilo.conf
in /dev/sdb2 and run lilo. While this system is running I can also
change /etc/lilo.conf in /dev/sda2, for this partition in mounted and
accessible from the 14.1. I have two questions though:
1) How do I run lilo after changing /etc/lilo.conf in /dev/sda2?
Is it just a matter of invoking
lilo -r /13.root/etc/lilo.conf
(where /13.root is the mount point for the 13.0 root partition when
running the 14.1 system)?
2) When both /etc/lilo.conf files have been dealt with as
suggested, how do I select which Slackware version (13.0 or 14.1) should
be booted when bringing up the system? Is the 'other' clause in either
lilo.conf going to offer me the choice to boot one or the other?
My apologies if these are trivial, even silly, questions. I burnt
myself with LILO before by not doing due diligence; I wan to be much more
careful this time.
Thanks very much for your help.