Jump to content

Dual-boot with Slackware


Vagabond

Recommended Posts

Interested in tips from folks with experience in Linux dual-boots with Slackware as the new distro. I use Debian Stable, and will retain it (as a safe haven in a storm). Slackware looks good as a hobby/learning opportunity. I have time-sensitive work to do with Debian, so I'm not going to wipe the hard discs, install Slackware, and reinstall Debian (very slow internet connection).Research tells me opinions vary on how to dual-boot in my case.(http://www.linuxquestions.org/questions/slackware-14/debian-and-slackware-dual-boot-which-to-install-first-617949/#post3042506)Slackware says Slackware must use Lilo, others say it can be booted from Grub when a dual-boot is set up; some say you have to install Slackware first, then Debian, so Debian can be booted from Lilo.My box has two hard drives, and I can use sdb for Slackware. Wondering whether to put Lilo on sdb, not list Debian on it, and tell Grub (in boot partition on sda) to list Slackware as a boot option...unsure of the concepts involved. I am going to look into chainloading (I have never had a dual-boot setup).Installing Slackware will involve partitioning sdb, and I have wondered whether to do that first, before installing anything. Can I do that and leave sda as is? Obviously new tasks for me, so I have a lot to learn, but that's the reason I'm planning this project.Finally, while Slackware is my first choice, I looked at Arch Linux (thanks, Josh) and was very impressed.Tips for a boot strategy will be appreciated!

Link to comment
Share on other sites

securitybreach

I would not install either Grub or Lilo when installing Slackware. Then just add a grub entry in Debian for Slackware. Or you could install Lilo to the Slackware's partition (not the mbr of the drive) and then add a chainloading entry into Debian's Grub.

Link to comment
Share on other sites

amenditman

I would definitely do the partitioning first with GParted.Then follow securitybreach's advice for LILO in the Slackware partition and an entry in GRUB to chainload.Stick with the Debian GRUB as your main bootloader.LILO was fine when it was new, but GRUB has far surpassed it for stability and function.Arch is very easy and a good learning tool for Linux exploration. The ArchWiki is some of the best Linux documentation anywhere. Lots of help for Arch here and at the Arch Forums.Quite a few Slackware users here also.Either way you will have a great opportunity to learn about the guts of the system and a good support community.

Link to comment
Share on other sites

Advice received here sounds good, but reality is messin' with me. Got what I thought was a good install and tried some entries in the Grub menu.lst, got my head handed to me. I had partitioned with fdisk (Gparted is not available to me, something about it appears to have the folks at Debian upset, so Stable can't have it). I thought fdisk worked fine and it did iron out a few problems so I got that "good" install. The idea was to skip Lilo and skip chainloading and just do it all with Grub. Hah! When I tried to translate Lilo-speak into Grubbish, I was unable to get it right. If somebody has done it, I could not find the example. OK, press on regardless, make a darn Lilo, and try for a chainload. Now Slackware whines that the seemingly-good install is not on the first disc (yeah, it's on sdb1, or hd1,0 in Grubbish, so what?), the partition is not marked "active" (sorry; I don't recall seeing anything about that when I installed), Lilo's display will have to be text-based (fine, let's have it), something is wrong with what looks to me like the swap partition (what does swap have to do with Lilo?), so there's not gonna be a Lilo. Oh. I had looked at chainloading, and now my head hurts. Gotta take a break. Sincere thanks to everybody, I still say your tips are valid and I'm clumsy. I'll try again. Later.

Link to comment
Share on other sites

Amenditman, a hardware glitch prevented me from thanking you in a timely fashion for the Gparted tip. I'm getting my ducks back in a row, and will enjoy following through with your advice -- it looks like one of those things everybody should know about. I do want to carry on with Slackware. Anybody who has examples of chainloading that I might learn from should post here, please!Thanks again, Bob.

Link to comment
Share on other sites

securitybreach

To chainload Slackware your entry should look something like this:

Slackwarerootnoverify (hd0,x)chainloader +1boot

where x is the partition number.

Link to comment
Share on other sites

V.T. Eric Layton

I'll beg to differ as I'm running by here very quickly. Slackware should always be booted using initrd. You lose that capability when you chainload. I don't recommend it. You can manually add your Slack entry to GRUB quite easily. 1) Make sure to create your initrd using Pat's instructions on the cd/dvd2) Create your GRUB entry with your particular drive and partition information. It will look something similar to this:

title		Slackware 13-64 (Primary) --> sda1root		(hd0,0)kernel		/boot/vmlinuz-huge-2.6.29.6 root=/dev/sda1 initrd		/boot/initrd.gzsavedefaultboot

Just my Linux opinion. Others will definitely disagree. ;)Luck!P.S. How to create your initrd --> http://www.it.freebsd.org/pub/linux/distri...t/README.initrd

Link to comment
Share on other sites

V.T. Eric Layton

The jury is still out on the chainload/initrd boot for Slack these days. Times have changed. With faster machines and more RAM, initrd isn't the necessity it once was. With that being said, you could probably safely boot via chainload without any problems. Bottom line: take the easy road, if you like. It won't cause you any problems to chainload, I don't think.Josh, no need to feel corrected. Your advice was accurate also, just different. :thumbsup:

Link to comment
Share on other sites

Yikes, I'm underqualified to be on the jury! Not sure I understand initrd yet, but it looks a bit like the chicken or egg problem: how do I create an initrd for Slackware when I don't have a working version of the OS yet? Also wonder about that .gz on the file. So many variables....

Link to comment
Share on other sites

V.T. Eric Layton

You can boot Slack directly with a GRUB entry (without the initrd line) or just chainload it. Once you're in Slack, then create your initrd and modify your GRUB with an initrd line. Reboot. You'll be booting with the initrd at that point. Easy-peasy. ;)

Link to comment
Share on other sites

I don't know where you got this info but Gparted is available for all versions of Debian in the main repos. http://packages.debian.org/search?keywords...=mozilla-search
True, as I discovered when I first tried to use this app. Stable has ver. 0.3.8-1, Testing gets 0.5.2-2, and IIRC the latest version is 0.6.n. I have it installed (or so says aptitude). Unfortunately none of that makes it available to me, as it appears that it is a GUI-only app -- when I call it up from the CLI, it tells me to go away, and try as I have, I can't find it on any Gnome menu or get it to show up no matter how I yell at the administration menu. Frustrated, I decided to follow up on the tip passed to me by Amenditman -- it looks really good. Meanwhile hardware and other problems have hit, and then real life sidetracked my quest for Slackware. I just stopped by to read the mail....
Link to comment
Share on other sites

Gparted needs to be run as root. When I click on it in the system menu I get a box to input the root password after which it starts. I have version 0.5.2 from the sid repo. Can't imagine why it doesn't show in your menu though. ;) I only use KDE so can't really help with Gnome foibles.

Link to comment
Share on other sites

So that's how a root-only app works in Rodentville, eh? Bizarre. -- Maybe I should visit the GUI more often, learn about it...naaah.

Link to comment
Share on other sites

If you want CLI you could use plain ole parted. Or use sux to launch Gparted:

$suxpassword#gparted

Of course you'd need to have sux installed.

Link to comment
Share on other sites

Time to ask for more help.... I used a live CD of PartedMagic (very nice tool, BTW; thanks, amenditman) to partition /dev/sdb, creating an unformatted primary partition on sdb1 and a small Linux swap on sdb2. Installed Slackware 13.1 on sdb1, ext4. Now trying to boot Slackware directly with entry in Grub (which is on sda1). Using PartedMagic, I see that the actual name of the kernel I want to boot (chosen because, according to Slackware, it does not need an initrd to boot) is vmlinuz-huge-2.6.33.4, and that it resides on sdb1 in /boot/vmlinuz. That led me to try these lines in Grub:kernel /boot/vmlinuz/vmlinuz-huge-2.6.33.4 root=/dev/sdb1 read-onlykernel /vmlinuz/vmlinuz-huge-2.6.33.4 root=/dev/sdb1 read-only...neither of Which works. Grub returns a statement that the partition is ext2, and "Error 15: file not found" for the kernel. Changing to:kernel /boot/vmlinuz-huge-2.6.33.4 root=/dev/sdb1 read-only ...is no help; same response. I assume the babble about the partition being ext2 is immaterial. I've tried variations on the above, in each case omitting the initrd line as unnecessary at this point. The Slackware install on sdb1 seems good -- Slackware likes it -- but I have not tried to create LILO there (not recently, that is -- earlier it protested that the install was not on sda, etc etc). If I can boot directly from Grub, I'll try to create a good initrd and then use that in subsequent boots.More info: changed /boot/grub/menu.list so it reads "savedefault=true" and added lines "savedefault" and "boot" to the Grub menu entry, per Eric's suggestion. Added "/boot/initrd.gz" to initrd line, no effect (I tried this only with the third of the three tries mentioned above because I assumed it was irrelevant). I have made every mistake there is, had endless hardware and software problems (never mind), and learned a lot by doing things I never had occasion to try. Something simple, obvious, and overlooked is holding me up. Open to suggestions, TIA.

Link to comment
Share on other sites

Try

title		Slackware 13-64 (sdb1)root		(hd1,0)kernel		/boot/vmlinuz-huge-2.6.33.4 root=/dev/sdb1 ro

or swap the kernel line to kernel /boot/vmlinuz/vmlinuz-huge-2.6.33.4 root=/dev/sdb1 ro if there is a vmlinuz directory. I'm not sure how Slack does it.The savedefault parameter will automatically boot that OS if it was the last one booted - not essential.If that's what you tried already or it doesn't work, I suspect it may be because Debian Stable's Grub does not support ext4. If that's the case you may need a separate /boot partition of ext2/3.If it were my system I would make a 10GB system and install sidux and allow it's grub to take over. It has always picked up every OS when I install it. :) /plug

Link to comment
Share on other sites

While I'd like to solve the immediate problem, I'm beginning to wonder how long I can continue pushing this rope. Might it not be best to give in to Slackware's demand that it be on the first hard drive, and let booting into another distro be done by Slackware's LILO in MBR? So would it be practical for me to use Clonezilla to move Debian Lenny from sda to sdb (yes, the two drives are the same size), install Slackware on sda and set up LILO to give me the option of booting into Lenny? (Skip GRUB entirely, in other words.) Has anybody out there ever done a similar task? If you have a dual-boot setup with Slackware and some other Linux distro, how, exactly, are you set up?

Link to comment
Share on other sites

When I installed Slackware, I never installed Lilo anywhere...it just wouldn't work. I'd then add it manually to Mandriva's Grub, looking pretty much like Sunrat's code.

Link to comment
Share on other sites

If it were my system I would make a 10GB system and install sidux and allow it's grub to take over. It has always picked up every OS when I install it. :) /plug
sidux GRUB is Debian's GRUB. The only possible difference is sidux could be on GRUB2 and Lenny could still be using GRUB legacy.The only advantage I see to this plan is that GRUB's excellent autodetection system will pick up your Slackware boot parameters and add them to it's boot options configuration.@Vagabond Your plan sounds like a lot of fun as an experiment, but, I think if your goal is a working system in a reasonable time you should wipe the Lenny install, move your Slackware install, and re-install Lenny. Wait, that would allow Lenny's GRUB to auto detect your Slackware install and run it. Your system, your call, but I would try to fight through this problem a bit more before trying the proposed partition swapping plans. It sounds a little crazy, even to me, and I've done some really crazy experiments with my system before.Bob
Link to comment
Share on other sites

sidux GRUB is Debian's GRUB. The only possible difference is sidux could be on GRUB2 and Lenny could still be using GRUB legacy.
That's exactly why I mentioned it. Lenny and it's version of grub does not support ext4.There are several options:-install LILO to Slack's root partition and chainload from Lenny Grub (probably the easiest)-install Slack's boot kernel into a separate ext2/3 /boot partition and point Grub to that-upgrade Debian to Squeeze which does support ext4-install another distro with ext4 support and use it's Grub, eg. sidux, Mandriva, Mint, *buntuYou definitely don't have to move your Debian install. :) See also:- http://www.linuxquestions.org/questions/sl...esystem-762980/
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...