SlackwareThis Forum is for the discussion of Slackware Linux.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I recently installed Slackware 9.0 and I'd like to dual boot it and windows xp. I'm going to say exactly what I've done.
-I have two hard drives. Before I installed slackware 9.0, I had Win98 on the first drive and WinXP on the second. The OSs were installed in that order (win98, then winxp).
-When I installed slackware, I used cfdisk to delete the partition win98 was on and I created a swap partition and a Linux partition and I installed the bootloader in the first sector of the linux partion (don't know if this is right or not, all I know is that I chose not to install the bootloader in the MBR).
-I noticed that windows didn't show up in the lilo boot menu so I tried to use liloconfig to add it (delete the old lilo.conf, then add both linux and windows to the new). Here's what my windows entry looks like in lilo.conf:
other = /dev/hdb1
label = Windows
#map-drive = 0x80
# to = 0x81
#map-drive = 0x81
# to = 0x80
table = /dev/hdb
-The windows entry shows up in the lilo boot menu but when I select it, I get the message that "Windows is loading" (or whatever) but nothing actually happens.
What I'd ultimately like to do is get it so I can dual boot both Linux and WinXP so I can access all of my WinXP data again. I've had this problem before and never figured it out. Thanks in advance.
EDIT://Sorry about the title. I meant 'with' lilo not 'and' lilo.
Originally posted by Mojojo Just get rid of XP and run linux. Windows hates linux it won't reconize the filesystems of linux, and you'll end up pulling your hair out to dual boot, when the real problem is windows.
I'll tell you, it's tempting to just do what you said but I can't. I've had WinXP installed far too long to just throw it all away. Among other things, I don't want to lose all the work I've done in Hammer (Half-Life editor). Plus, I'd rather just figure this out. How am I going to learn linux if I give up at the first sign of trouble?
Originally posted by Mojojo If your a newbie why don't you try out mandrake 9.1, it may convince you to dump xp it did for me.
Like I said, I actually want to learn linux. I've used both Red Hat 9.0 and Mandrake 9.1 and I didn't actually feel like I was learning anything. As for dumping XP, I'm not going to do this. I'm working on my programming skills and I need to know the windows environment (graphics APIs and whatnot). I also play alot of games (shoot me) in windows and until wine runs them better, I can't just dump windows.
You should of installed the bootlader in the MBR but before you do that. I would switch your setup and have windows XP on the master then linux on the slave drive. Then install the bootloader onto the MBR of the XP drive. If windows isn't running install the XP setup disc and go to recovery mode.
Originally posted by Mojojo You should of installed the bootlader in the MBR but before you do that. I would switch your setup and have windows XP on the master then linux on the slave drive. Then install the bootloader onto the MBR of the XP drive. If windows isn't running install the XP setup disc and go to recovery mode.
Thanks, I'll try that out and report back with the results.
In my experience I have found it easier to use Windows XP bootloader, and stick lilo on the 1st boot sector of the linux partition.
I have Windows XP on the first drive, and installed first. I then put on Slackware but told it to put lilo at the start of the disk. Then copied the first 512 bytes, to the XP partition and pointed the NT loader to it.
This works great, and leaves alone XP to it's own devices.
Note: The only snag is that you must remember to update the copy on XP partition/drive every time you run lilo...
As Mojojo indicated, XP hates Linux, but setting up a dual boot system with XP and Slack can be done, it just takes a little work. First of all, to my knowledge, the only way it will work is to let Windows live in the first partition of the primary disk, and then to install Slack afterwards. Based on what you've written, it sounds like the first partition originally contained Win98, then you installed XP on the second drive, and then you wiped Win98 and replaced it with Slack. As a result, what I suspect may have happened is that you've inadvertently ended up with things backward, with Slack on /dev/hda and Windows on /dev/hdb (which seems to be supported by the contents of your lilo file.) If this is the case, the bottom line is that Windows will simply refuse to accept that configuration, and won't boot.
To fix it, I think you may have several options. First, before doing anything else, as noted before, do a backup of any important data that you do not want to lose. Don't make any changes until you do the backup. Assuming you've done that, Option #1 would be to simply blow away your entire system, and reinstall everything. Repartition the drives (if desired), reinstall XP (which should put itself on /dev/hda aka the C:\ drive), and then install Slack, putting the bootloader into the MBR. This should give you the dual boot system you desire, and the only remaining task would be to restore the data that you backed up onto your XP system. I've ended up doing this several times myself as I was learning, and although it seems a bit intimidating at first, it turns out not to be such a big deal in the end. As you know there are several bootloader options, but for me, I've always used the MBR option and it has worked well for me.
Option #2 would apply to the situation where you are in a spot where you need to temporarily put Slack on hold but you definitely need to get XP up and running again. If this is the case, it might be a bit more difficult because as I've mentioned Windows will insist that it live on the first partition of the primary drive, and this (apparently) is not the condition of your system which would be a complicating factor. If your current system is basically hosed, you've tried everything you can think of but you still can't boot either Slack or XP, then a last resort type of attempt to restore things might be to run the DOS "fdisk /mbr" command. This is an undocumented, unsupported, and risky command, however, it does exist and is intended to restore the MBR to a Windows-friendly state. If you do want to try it, use the Windows boot disk to boot to the C:\ prompt, then enter: fdisk /mbr Again, this is a high risk maneuver, and could hose your system completely. Repeat: Do a backup before attempting it. That being said, if your system is already hosed, you figure you've got nothing to lose, and you accept the risks, it might do the trick. I've done it a couple of times, and it has worked, however, these attempts were always done on a system where Windows was installed on the primary drive. I don't know what might happen with your system since it appears you've got Linux on the primary drive with Windows on your secondary drive. As they say in math class, the result may be undefined.
Finally, Option #3 might be to just open your box, disconnect your second drive (the one with XP), then do a clean install of XP on drive one. Once that's done and you've got a functioning XP system, you could then reconnect the second drive (which would become D:\) let the hardware wizard detect that you've added new hardware, and in theory you would be able to transfer anything you needed from D:\ back to C:\ To finish it off, install Slack on the second drive, putting the bootloader in the MBR. End result = XP on the first drive, Slack on the second. Wild celebrations ensue.
Sorry for the long winded reply, but I've been in similar (but not exactly) the same situation before, and hopefully some of this might prove to be useful. You really do need to do a backup of your important data though before doing anything else. Don't give up on Slack though, it is awesome and way better than anything from Microsoft. Good luck with it. -- J.W.
J.W nice post, But if you have windows on the primary drive and linux on the secondary.With the XP/Linux bootloaders on each of the drives MBR's. XP will cancel out linux you will not be able to boot into linux without editing the boot.ini file in Windows which sucks. "Never really did get that working." Or disabling the master drive in the bios. The way I said to do it was the easiest way i have found. Although thats just my opinion. Some use bootpart and others never really figure it out and end up reverting back to windows. In all the fact of the matter is microsoft hates linux and they will never really make it easy to dual boot with linux. Another reason why everyone should dump windows and go linux.
Looks like I went with option 1. I had to blow away both slack and xp (backing up data first). I installed xp on the first drive; slack on the second drive; and I put the bootloader into the MBR of the xp drive (first drive). Everything was detected and it worked.
Slackware is truly a nice distro; by far the best I've come across so far. I love the fact that the package managment is built around tar/gzip files. The more I use RPMs, the more they seem to annoy me.
I have been running this setup for almost a year and before had done it several ways, but it screws up your setup by using any other way, but this. XP on first partition or drive and Linux on second or slave.
How to-Dual boot XP and Linux
I realize this has been done before, but this is my take on it, as it has worked very well for me and is easy to recover in the eventuality something goes astray with your installation down the road.
This assumes that you will create a bootdisk during your Linux install.
For reference, during linux install, I chose to use LILO, and to
put LILO in the first part of /boot instead of in the MBR. (It is preferrable, to create a small partition for /boot during partition set-up, about 20mb's is usually enough)
To get everything working right, here is what I did (all as root):
Boot into linux and get a command prompt (you have to use a boot disk to boot
into linux at this point).
To see where the Linux boot partition is
cat /etc/lilo.conf | more
At the beginning of the file it will have a line showing the boot partition, something like
Type the following command, replacing "/dev/hda5" with the partition you made
dd if=/dev/hda5 of=/bootsect.lnx bs=512 count=1
This copies the first 512 bytes of the specified partition into the file
You will need to copy this file to your windows system drive root folder, in my
case C: You can do this very easily if you have mounted your windows drive(s) in
linux. Otherwise, copy it to a floppy, then boot into windows and copy it from
the floppy to your windows system drive.
Once in windows, use notepad or another text editor and open C:\boot.ini
Windows will try and hide the file from you, but it is usually there.
Add the following line to the end of the file:
C:\bootsect.lnx="Redhat 7.2 Enigma"
Note that you can replace the text in quotes above with whatever text you want
to appear in the windows bootloader menu list. Save your changes and close the
Open Start>>Settings>>Control Panel>>System. Click on the advanced tab, then
click on Startup And Recovery. In the dialog box, you can choose the default OS
to boot, and the timeout. Make any changes, then close the dialog box and
Choosing windows from NT's boot menu will load windows, and choosing linux will
load LILO. You can change LILO defaults (like you just did to windows) by
editing the LILO.conf file. Don't forget to run the command "lilo" after changing configuration. Every time you make changes to Lilo after this you must make a new bootsec.lnx and copy it to your C:\ and replace the old one.
This solution worked for me; your milage may vary.