Linux Forums - Linux Help,Advice & support community:LinuxSolved.com
Linux Software => Linux Installation Support => Topic started by: wombat53 on May 28, 2005, 12:16:52 AM
-
Hi Group
I have a question re: chained multi-Linux boot loading, starting from WIN NT BootLoader, and here is some background. I am an old-timer, but not a UNIX/LINUX expert....
Using advice given here, last year I created LINUX partition on a WIN XP machine (perhaps with Partition Magic, it's not
important), installed SLACKWARE 9, and WIN now offers me dual boot options on startup, the second option being to
boot Linux. This second option derives from me making a manual entry to WIN boot.ini, pointing to a small file containing a copy of the Linux Boot Sector on the Linux Boot Partition (/dev/hdfa6, as it happens). This Sector was copied from the
Linux Boot partition with:
dd if=/dev/hda6 bs=512 count=1 of=bootsect.lnx, as documented by Ricky, and I think "aaa" in this Forum. It works
perfectly, with WIN NT Bootloader enabling the LILO option, which currently has only one OS defined , booting by default (or ENTER key) to the single SLACKWARE LINUX. {For those new to this world, and wanting to keep WIN in place as I was, I strongly recommend following this procedure, by the way}.
Now, I need to install a second LINUX, while maintaining the current dual boot process that is in place. (Very simply, I am working with IBM's DB2 UDB V8.2, and its install scripts etc. assume "standard" RPM-based package management, and SLACKWARE's seems to be "non-standard" (indeed, it is not RPM based, but it does support the RPM command...imperfectly...This has been the subject of postings and inquiries, and even an IBM DB2 DeveloperWorks article, but I have found that they are
incomplete. For those who are interested, the only way around is to convert all the .rpm packages to native format .tar.gz
(or .tgz) with a SLACKWARE utility, and install the packages manually ("installpkg") , thereby bypassing the entire IBM
install procedure, which I am not too pleased about. This has caused me unending pain, a great learning curve...and a
desire to be more "standard"). I have become the package management expert I never wanted to be!
So I have acquired another LINUX (REDHAT Professional Workstation, which was the only REDHAT in the store!).
I have huge book by Sobell, and I have all the RedHat manuals, but I am speculating that a) they will probably assume
only one LINUX (let alone a pre-existing dual-boot setup) and b) regardless, a group such as this has more real-world
experience. I figure my question cannot be new, or difficult.
I am more than happy to keep LILO.
What is the best way to go about this install please? And to keep the current setup in place?
In short, to install another LINUX, on a presumed new partition (again, Partition Magic, whatever), and have it made known to LILO ? Or, perhaps a new REDHAT install might create a new LILO (and .conf) and put himself there (and perhaps lose what I have)? I don't know. Maybe it doesn't matter. So long as one can modify the lilo.conf correctly, execute lilo, and then copy the boot sector to WIN as described above? That's OK too, so long as I can continue boot to LILO from WIN (as I do now), and identify what will now be two (2) LINUX OS's. I am just not familiar with these multiple levels of indirection on OS's on which am no expert. I am reluctant to meddle too much, since I now do have something that works, and you know what they say ("If it aint broke ......)
IBM's DB2 is my livelihood, on MVS, OS/2, WIN and now flavors of UNIX/LINUX, so this is not a hobby!
Many Thanks
George Peters
-
Perhaps I was too wordy above. In a nutshell, I want to add a second installation of another LINUX OS, which is currently managed by LILO (SLACKWARE), which itself is launched from the dual boot feature of WIN NT (XP Pro) bootloader.
Is there anything "special" I must do?
Thanks
George
-
What I think .. that when you will install other linux .. it will not overwrite the MBR as you can choose it to be resided on first sector of the root partition of that linux. ..
So you have to also create a file of bootsector of new linux then again you have to add entry for that in boot.ini
and really Thank you! for your second brief post.. however we always encourage people to be more descriptive as they can :)
-
What I think .. that when you will install other linux .. it will not overwrite the MBR as you can choose it to be resided on first sector of the root partition of that linux. ..
So you have to also create a file of bootsector of new linux then again you have to add entry for that in boot.ini
and really Thank you! for your second brief post.. however we always encourage people to be more descriptive as they can :)
Ricky - many thanks. Is this saying that on the new LINUX partition I will have a new LILO, and its own boot sector to copy to WIN boot.ini as a third boot option? (1=WIN XP, 2=Slackware Linux, 3=RedHat etc)? I was thinking that if LILO is a multi-boot loader, I could somehow get the new LINUX stanza in the existing lilo.conf (or, alternatively, have the new LINUX create his own LILO, and I would add the existing Slackware stanza to its .conf), and so when LILO comes up, have him presnt me with two LINUX OS's to choose from. Perhaps my understanding of LILO is faulty?
George
-
You don't need multi instances of LILO ( my apologies for little misguidance) .
What you need to do is install other OS, make entry to your current lilo.conf file for the Kernel image for new OS and then update your lilo. After that you have to again make the bootsector image of that lilo and replace it with the old one which you have copied to C:\
That way you only need to update the bootsector image of LINUX.
If I am making you confuse then I will be happy to answer you again. :)
-
Ricky - again thanks. No you are not confusing me! Please bear with me in this message...it's not as complex as it is long!!! In fact, the question is probably quite simple.
"What you need to do is install other OS, make entry to your current lilo.conf file for the Kernel image for new OS and then update your lilo".
This is what I thought..one LILO.CONF, with two (or more) image entries. Then yes, run LILO, and copy the bootsector image back to C:\.
Here is current fdisk - l:
Device Boot Start End Blocks Id System
/dev/hda1 1 4 32098+ de Dell Utility
/dev/hda2 * 5 1314 10522575 7 HPFS/NTFS
/dev/hda3 1315 9732 67617585 f W95 Ext'd (LBA)
/dev/hda5 1315 7163 46982061 7 HPFS/NTFS
/dev/hda6 7164 9712 20474811 83 Linux
/dev/hda7 9713 9732 160618+ 82 Linux swap
So, I will free some space and create a new ext2 partition (with PartitionMagic, or whatever) and this will probably be called /dev/hda8, install the new LINUX there, and modify the existing LILO.conf (currently on /dev/hda6) to include this new image.
##Proposed new lilo.conf with two LINUX's on separate partitions
boot = /dev/hda6
compact
prompt
timeout = 50
# Linux bootable partition config begins
image = /boot/vmlinuz
label = SWLinux2.4.22
root = /dev/hda6
read-only # Non-UMSDOS filesystems should be mounted read-only for checking
# Linux bootable partition config ends
#Here will be the new LINUX
image = /boot/vmlinuz.new
root = /dev/hda8 <=================new LINUX partition
label= RedHatLinux2.4.22
read-only
So far so good? Is this right?
Now, here is the catch. If this setup works fine, my goal is to remove the "old" Linux on /dev/hda6, reclaim the space, and leave only one Linux, the "new" one (RedHat). So the /dev/hda6 partition will disappear.
I guess I would then have to do this:
Boot to the "new Linux" (the second one in the lilo.conf file, above), and from within there, create a new lilo.conf with only one (1) entry, like:
#Proposed new lilo.conf after removeal of old LINUX partition
boot = /dev/hda8 <===========the new LINUX home
compact
prompt
timeout = 50
# Linux bootable partition config begins
image = /boot/vmlinuz
label = RedHatLinux2.4.22
root = /dev/hda8 <=================as above
read-only # Non-UMSDOS filesystems should be mounted read-only for checking
# Linux bootable partition config ends
Then run lilo, copy the bootsector to floppy, and transfer it to C:\
Ricky, please let me know if this approach seems reasonable.
There is a reason for all this, which started the thread - Slackware is not "validated" by IBM's DB2 DBMS, and so I have had enormous trouble with RPM-based package install and upgrades (RedHat is both RPM-based, and a "validated" distro by IBM).
Finally, the reason for the two-step approach is simple conservatism: I do now have a working DB2 UDB/Slackware Linux, and do not want to just trash it, and try a brand new LINUX. This way, I can "fall back" - if necessary - to what I already have, if the new install causes problems.
Finally, (again), there is another way, right......? Install the new RedHat on the new partition /dev/hda8, let the RedHat install procedure create a Lilo there with the correct parms (I am guessing that he will do that!!); and I then manually add the "old" Slackware Linux as the additional image to that lilo.conf, and run lilo (and then copy /dev/hda8 bootsect to C:\).
This way, I boot directly to the new LILO on /dev/hda8, with the option to launch the "old" SWare Linux on /dev/hda6?
It seems in both cases, I must install RedHat, modify lilo.conf (on one or the other LINUX's) , run lilo, copy bootsect to floppy, and then to C:\.
Perhaps it's a case of "6 of one, half a dozen of the other".
What do you think? I guess the main question is: is my logic on the right track?
Thanks
George (and apologies for the length)
-
Like ricky said , multi instance of bootloader is not needed