LinuxQuestions.org
Visit the LQ Articles and Editorials section
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices

Reply
 
Search this Thread
Old 06-09-2014, 06:51 AM   #16
brianL
LQ 5k Club
 
Registered: Jan 2006
Location: Oldham, Lancs, England
Distribution: Slackware & Slackware64 14.1
Posts: 7,134
Blog Entries: 52

Rep: Reputation: Disabled

Can't you have two lilos: one in the MBR, another in a partition? I'm sure I briefly had ( a few releases ago) Slackware stable and current dual-booting using that method. All the other distros had GRUB.
Quote:
Originally Posted by Randicus Draco Albus View Post
Sledge hammer or foot? Decisions, decisions.
Sledgehammer. You don't want to break your toes.

Last edited by brianL; 06-09-2014 at 06:53 AM.
 
Old 06-09-2014, 07:49 AM   #17
enorbet
Member
 
Registered: Jun 2003
Location: Virginia
Distribution: Slackware 14 is Main OpSys on Main PC, 2ndary are OpenSuSe 13 and SolydK
Posts: 731

Rep: Reputation: 339Reputation: 339Reputation: 339Reputation: 339
FWIW I always install LILO (or grub for that matter) first to each systems root, so each one has a dedicated boot loader to fall back on. Then I choose which system (in my case, Slackware gets the nod) and install a Master Bootloader that can boot all in the MBR. To be clear, Slackware gets LILO installed first to it's root and then also to the boot drive's MBR. I like redundancy. It's Failsafe.
 
2 members found this post helpful.
Old 06-09-2014, 04:00 PM   #18
astrogeek
Senior Member
 
Registered: Oct 2008
Distribution: Slackware [64]X{.0|.1|.2|-current} ::X>=12<=14, FreeBSD_10{.0|.1}
Posts: 2,144

Rep: Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846
Sorry I had to leave the conversation, I have to pretend to sleep once in a while...

It sounds as if you have probably not ever really organized your bootloader(s) and relied on good behavior from the various distros to compensate. What you are facing now is a case where that method has failed.

I agree with brianL and enorbert, you are probably better off chain-booting than trying to define all cases in the MBR (which requires extra work). That way, when you add a new distro or change an existing one, there is often nothing to change in the MBR if the partitions have not changed.

Rather than try to write a scheme for your system (until both eyes are open at least!), here is a description of how I manage my own multi-boot systems:

1. I have one installation ALWAYS be responsible for lilo on the MBR. That one (Debian in your case I think) would have a lilo.conf that looks something like this (I now always use UUIDs/DiskIDs, but show device names for simplicity):

Code:
boot = /dev/sda

#Linux default
image = /boot/vmlinuz
label = Debian
root = /dev/sda1
...

other = /dev/sda3
label = Slackware
2. Then install another distro, say Slackware to /dev/sda3, and DO NOT install lilo to the MBR but rather to its own root partition, like...

Code:
boot = /dev/sda3

#Linux
image = /boot/vmlinuz
label = Slackware
root = /dev/sda3

#MBR
other = /dev/sda
label = MBR-Options
3. Follow this pattern for any new distros/installs with the following rule:

Code:
1. The distro that manages the MBR record, usually on /dev/sda1, defines its 
own kernel image and root options, and chain-loads all others

2. All additional distros manage their own boot records on their root partitions, 
with an optional "other" stanza back to MBR
If the distro that manages the MBR ever changes, simply allow it to install to MBR, then edit its lilo.conf to add the "other" stanzas as before - nothing else to change! And you can now navigate among the chained boots and back to the MBR if so inclined (or simply set timeout = 0 in the chained loaders).

This will also work with grub on one distro and lilo on another (but I never use grub so can't tell you the specifics, just follow the same chaining idea with it).

Life is good!

Last edited by astrogeek; 06-09-2014 at 04:21 PM.
 
1 members found this post helpful.
Old 06-09-2014, 09:30 PM   #19
tommcd
Senior Member
 
Registered: Jun 2006
Location: Philadelphia PA USA
Distribution: Lubuntu, Slackware
Posts: 2,230

Rep: Reputation: 288Reputation: 288Reputation: 288
Quote:
Originally Posted by Randicus Draco Albus View Post
But Debian is my main system and I did not install a boot-loader with Slackware. I occasionally dual-boot to test other systems. I like to have one boot-loader, so obviously I put it on the main system and add the other system to it.
I have been booting Slackware + Ubuntu + Debian + and/or other distros for several years now. My preference is to use grub2 to multiboot several Linux distros.
Currently I boot Lubuntu 14.04, Slackware 14.1, and Debian 7.5 all with Ubuntu's grub2 and I have never had a problem with this.
I would use Debian's grub2 to boot both Debian and Slackware. For reference, here is my custom 31_slackware file that resides in Lubuntu's /etc/grub.d/ directory:
Code:
echo "Adding Slackware64-14.1 on /dev/sda5" >&2
cat << EOF
##!/bin/sh
#exec tail -n +3 $0
menuentry "Slackware64-14.1 on /dev/sda5" {
        set root=(hd0,5)
        linux  /boot/vmlinuz-generic-3.10.17 root=/dev/sda5 ro 
        initrd  /boot/initrd.gz
}
EOF
It's name starts with 31_ so it is placed at the bottom of the grub2 boot menu.
Be sure to make this file executable, and then run as root:
Code:
update-grub
and this will add your Slack to Debian's grub2 boot menu.
Note that you will need to install Debian's grub2 to the MBR and adjust the Slackware boot file according to your needs (i.e., if you are using the generic or huge kernel and what partition your Slackware is on, etc.).
Note that the stuff in that file that is commented out are things that I have seen other Ubuntu users say that they need to boot other distros, but I have never needed those commented out lines. I would think that you will not need them in Debian either.

Last edited by tommcd; 06-09-2014 at 09:37 PM.
 
Old 06-09-2014, 10:34 PM   #20
Randicus Draco Albus
Senior Member
 
Registered: May 2011
Location: Wallowing in a pit of despair.
Distribution: OpenBSD
Posts: 1,379
Blog Entries: 4

Original Poster
Rep: Reputation: 418Reputation: 418Reputation: 418Reputation: 418Reputation: 418
While lying in bed waiting for sleep to arrive, I came to the conclusion that chain-loading two boot-loaders would be the best option. What I am not sure about is whether or not LILO could be installed on Slackware's /boot using a gparted live disc. If not, without being able to boot Slack, I would need to re-install the system.

To make a long story short, brianL, enorbet and astrogeek, you have confirmed my basic idea. Thanks.

@tommcd
I recently switched from Grub to LILO. Grub definitely makes multi-booting easier, but I prefer LILO. This experience has taught me that having separate boot-loaders for each system is advantageous. So the plan is to, eventually, have a Slackware system with its own LILO.
 
Old 06-09-2014, 11:25 PM   #21
astrogeek
Senior Member
 
Registered: Oct 2008
Distribution: Slackware [64]X{.0|.1|.2|-current} ::X>=12<=14, FreeBSD_10{.0|.1}
Posts: 2,144

Rep: Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846
Quote:
Originally Posted by Randicus Draco Albus View Post
While lying in bed waiting for sleep to arrive, I came to the conclusion that chain-loading two boot-loaders would be the best option. What I am not sure about is whether or not LILO could be installed on Slackware's /boot using a gparted live disc. If not, without being able to boot Slack, I would need to re-install the system.
Good, that is definitely the way to go.

I believe I may have done that with gparted, but if you have a Slackware DVD just boot to the installer, mount your Slackware partition and chroot into it - then you can update your lilo.conf and run lilo natively and reboot.
 
Old 06-10-2014, 12:09 AM   #22
enorbet
Member
 
Registered: Jun 2003
Location: Virginia
Distribution: Slackware 14 is Main OpSys on Main PC, 2ndary are OpenSuSe 13 and SolydK
Posts: 731

Rep: Reputation: 339Reputation: 339Reputation: 339Reputation: 339
Sometimes it's the handy little details that gives us a clue as to how good something is and one of those gems is the way Patrick has always made the installer stop in less than one second in at that handy dandy bootloader. I have thanked him countless times for that little detail that has saved my bacon. I have even used the huge slack kernel to boot other distros "requiring" an initrd. Granted I got a few errors but I got in and able to fix their "new and improved" bootloader.

FWIW I despise grub2 with all it's added complexity for the sole reason of trying to automate the config for other systems. I say trying because it assumes it knows my box better than I do and it doesn't. I finally got it working after a long read plus trial and error by disallowing it to load systems that I prefer to isolate by BIOS boot disk order.... pita. FTR this is a matter of taste. It's not buggy or anything just typical automation I don't need that gets underfoot like an incompetent but doting butler.
 
Old 07-22-2014, 07:05 PM   #23
Randicus Draco Albus
Senior Member
 
Registered: May 2011
Location: Wallowing in a pit of despair.
Distribution: OpenBSD
Posts: 1,379
Blog Entries: 4

Original Poster
Rep: Reputation: 418Reputation: 418Reputation: 418Reputation: 418Reputation: 418
I finally got around to returning to my Slackware experiment. (Moving, job stuff, etc.) I just re-installed Slackware on the second partition and installed LILO. I then updated the lilo.conf on the Debian system (which has the MBR) following astrogeek's example, adding
Code:
other = /dev/sda3
label = Slackware
After running
# lilo
Slackware is added, but I still boot straight into Debian without being presented with boot options. I can think of three possibilities off the top of my head:
1) I must use a live disc to edit Slackware's lilo.conf.
2) astrogeek's instructions for the Debian part have a small mistake.
3) The deities are playing with me.

I still like LILO, but it is pain in the ass.

Last edited by Randicus Draco Albus; 07-22-2014 at 07:08 PM.
 
Old 07-22-2014, 08:38 PM   #24
astrogeek
Senior Member
 
Registered: Oct 2008
Distribution: Slackware [64]X{.0|.1|.2|-current} ::X>=12<=14, FreeBSD_10{.0|.1}
Posts: 2,144

Rep: Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846
Quote:
Originally Posted by Randicus Draco Albus View Post
I finally got around to returning to my Slackware experiment. (Moving, job stuff, etc.) I just re-installed Slackware on the second partition and installed LILO. I then updated the lilo.conf on the Debian system (which has the MBR) following astrogeek's example, adding
Code:
other = /dev/sda3
label = Slackware
After running
# lilo
Slackware is added, but I still boot straight into Debian without being presented with boot options. I can think of three possibilities off the top of my head:
1) I must use a live disc to edit Slackware's lilo.conf.
2) astrogeek's instructions for the Debian part have a small mistake.
3) The deities are playing with me.

I still like LILO, but it is pain in the ass.
Glad you are continuing with it... this sounds simple.

My best guess would be that there is no delay in the Debian lilo.conf.

Look for or add the lines, usually near the top like this, time is in 1/10 seconds...

Code:
prompt
timeout = 50
... that will pause and offer you the option to boot to Slackware.

Remember to rerun lilo in Debian after making the change.

Last edited by astrogeek; 07-22-2014 at 08:45 PM.
 
1 members found this post helpful.
Old 07-22-2014, 08:41 PM   #25
55020
Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 429
Blog Entries: 4

Rep: Reputation: 436Reputation: 436Reputation: 436Reputation: 436Reputation: 436
Well, first, it sounds like your Debian /etc/lilo.conf is missing 'prompt', and therefore just booting the default. It should look like this:
Code:
boot = /dev/sda
compact
lba32
change-rules
  reset
prompt
timeout = 300
default = Debian

image = /boot/vmlinuz
  root = /dev/sda1
  label = Debian
  read-only
other = /dev/sda3
  label = Slackware
Second, it sounds like you haven't done anything to populate the bootblock on /dev/sda3. You will need a second lilo.conf with different contents to do that. Most logically, that would be the Slackware /etc/lilo.conf. You don't need a live disk to do that. With Debian booted, mount /dev/sda3 on /mnt, then 'chroot /mnt', then edit /etc/lilo.conf (effectively, /mnt/etc/lilo.conf) to contain the following, then run lilo, then exit the chroot:
Code:
boot = /dev/sda3
compact
lba32
change-rules
  reset
image = /boot/vmlinuz
  root = /dev/sda3
  label = Slackware
  read-only
Personally I wouldn't do it your way, but your way makes a certain amount of sense if Slackware is just a passing dalliance.
 
Old 07-22-2014, 09:09 PM   #26
perbh
Member
 
Registered: May 2008
Location: Republic of Texas
Posts: 261

Rep: Reputation: 40
OK - I'm kinda old-fashioned (using legacy-grub as my master-boot.
My 'boot'-partition (I prefer to call it my 'grub'-partition) is (usually) /dev/sda1 and using ext2 and some 64M in size.
Usually, the first thing I do (with a new disk) is to set up all the partitions and install legacy-grub on the first partition.
My menu.lst (on /dev/sda1/grub) then looks like this:
Code:
default 0
timeout 10
color yellow/black black/green
title [sda3]: slackware-14.1
   root (hd0,2)
   chainloader +1
title [sda5]: linuxmint-17-xfce
   root (hd0,4)
   chainloader +1
title [sda6]: solydx
   root (hd0,5)
   chainloader +1
Whenever I install a distro, I place its boot-loader on the root of the /-filesystem

The benefits:
- /dev/sda1 is never mounted (unless I want to edit menu.lst)
- each distro has its own bootloader - whether it's grub2, grub or lilo doesn't matter

Disadvantages:
The /-filesystem must be one that is supported by legacy grub, ie ext2, ext3, ext4, jfs, reiserfs, xfs, vfat - which is what I would use anyway, so no problem.

Other than using 20 gigs for '/' for each distro, the remainder of the disk is mounted as /work under _all_ distros - and what is under my home-directory (Documents, Music, etc etc) are linked to /work/Documents, /work/Music, etc etc - thus keeping all my personal files the same throughout and not letting /home-dotfiles interfer with each other.

So - how do I install grub in the first place?
In the past - most live cd's had grub - these days - they are all grub2 (alas - and to _me_, grub2 is an OS looking for a decent boot-loader!).
So - I have slackware-on-a-stick having grub (rather than lilo/grub2 - copied grub from 14.0 (or was it 13.37?)) and I boot from this stick, partition the disk and install grub. Then it is a matter of installing the distro(s).
 
Old 07-22-2014, 09:43 PM   #27
astrogeek
Senior Member
 
Registered: Oct 2008
Distribution: Slackware [64]X{.0|.1|.2|-current} ::X>=12<=14, FreeBSD_10{.0|.1}
Posts: 2,144

Rep: Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846Reputation: 846
Quote:
Originally Posted by 55020 View Post
Well, first, it sounds like your Debian /etc/lilo.conf is missing 'prompt', and therefore just booting the default. It should look like this:
Code:
boot = /dev/sda
compact
lba32
change-rules
  reset
prompt
timeout = 300
default = Debian

image = /boot/vmlinuz
  root = /dev/sda1
  label = Debian
  read-only
other = /dev/sda3
  label = Slackware
Second, it sounds like you haven't done anything to populate the bootblock on /dev/sda3. You will need a second lilo.conf with different contents to do that. Most logically, that would be the Slackware /etc/lilo.conf. You don't need a live disk to do that. With Debian booted, mount /dev/sda3 on /mnt, then 'chroot /mnt', then edit /etc/lilo.conf (effectively, /mnt/etc/lilo.conf) to contain the following, then run lilo, then exit the chroot:
Code:
boot = /dev/sda3
compact
lba32
change-rules
  reset
image = /boot/vmlinuz
  root = /dev/sda3
  label = Slackware
  read-only
When the OP said they had installed Slackware and lilo per my chain boot instructions, I took that to mean they had installed the Slackware loader to the Slackware root partition. Could be wrong, guess we'll hear back if so.

Quote:
Originally Posted by 55020 View Post
Personally I wouldn't do it your way, but your way makes a certain amount of sense if Slackware is just a passing dalliance.
Just curious why you would say that?
 
Old 07-22-2014, 10:49 PM   #28
Randicus Draco Albus
Senior Member
 
Registered: May 2011
Location: Wallowing in a pit of despair.
Distribution: OpenBSD
Posts: 1,379
Blog Entries: 4

Original Poster
Rep: Reputation: 418Reputation: 418Reputation: 418Reputation: 418Reputation: 418
Quote:
My best guess would be that there is no delay in the Debian lilo.conf.

Look for or add the lines, usually near the top like this, time is in 1/10 seconds...

Code:
prompt timeout = 50
My lilo.conf has
Code:
# Specifies the number of deciseconds (0.1 seconds) LILO should
# wait before booting the first image.
#
delay=20
I have added "prompt" and changed the time to 50. I must admit the wording in the file might confuse people (people like me anyway).
Code:
# You can put a customized boot message up if you like.  If you use
# `prompt', and this computer may need to reboot unattended, you
# must specify a `timeout', or it will sit there forever waiting
# for a keypress.
The wording in lilo.conf suggests that the line "prompt" is not only unnecessary, but more for customisation that practical uses. So I blame my difficulties on the manual, not my incompetence.

Quote:
When the OP said they had installed Slackware and lilo per my chain boot instructions, I took that to mean they had installed the Slackware loader to the Slackware root partition.
You are correct.
The good thing about this mess is I can screw around with this without risk to either system. The update will have to wait until later.

I changed my mind. Instead of changing the delay and adding prompt, I commented out that line and removed the #s from
Code:
	prompt
	delay=100
	timeout=100

Last edited by Randicus Draco Albus; 07-22-2014 at 10:59 PM.
 
Old 07-23-2014, 11:39 AM   #29
55020
Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 429
Blog Entries: 4

Rep: Reputation: 436Reputation: 436Reputation: 436Reputation: 436Reputation: 436
Quote:
Originally Posted by astrogeek View Post
When the OP said they had installed Slackware and lilo per my chain boot instructions, I took that to mean they had installed the Slackware loader to the Slackware root partition. Could be wrong, guess we'll hear back if so.
You get a +1 from Mr Albus for that

Quote:
Originally Posted by astrogeek View Post
Just curious why you would say that?
I hope we all agree on this, (except I wouldn't call it a mess, it's perfectly respectable!)
Quote:
Originally Posted by Randicus Draco Albus View Post
The good thing about this mess is I can screw around with this without risk to either system
but in the long term (if there is a long term) it might be useful to cross-mount the two distros, in which case both kernels and root filesystems could be listed in both lilo.conf files. Or do the grub thing, or impress us all by inventing a new and even better setup
 
Old 07-23-2014, 04:36 PM   #30
Randicus Draco Albus
Senior Member
 
Registered: May 2011
Location: Wallowing in a pit of despair.
Distribution: OpenBSD
Posts: 1,379
Blog Entries: 4

Original Poster
Rep: Reputation: 418Reputation: 418Reputation: 418Reputation: 418Reputation: 418
Success! I am making this post with the Slackware system. So the problem was not having "prompt" in lilo.conf. Thank you. Although I may need to fiddle a little more. For some reason the boot menu is an ugly combination of red background and white letters, instead of the usual dull blue. Oh, the horror!

Quote:
Originally Posted by 55020 View Post
or impress us all by inventing a new and even better setup
First I would need to impress myself by figuring out how to use the package manager.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
LILO ERROR #1 - Lilo boot loader not installing in VectorLinux 7.0 Light edition. Vexe VectorLinux 4 02-09-2013 10:41 AM
[SOLVED] Edit lilo.conf, run /sbin/lilo, but lilo won't take changes lukameen Slackware 2 02-10-2012 01:10 PM
Lilo cannot display video mode DemoniX Slackware 3 08-06-2005 02:05 PM
Lilo doesnt support higher display res munchkins Slackware 4 05-08-2005 09:37 AM
Lilo lost, Install disk failing to restore Lilo on dual boot? Dobie Linux - Newbie 2 05-05-2004 06:00 PM


All times are GMT -5. The time now is 04:14 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration