XOSL is also not tied to any operating system, and is fully manipulable from the graphical interface. In fact, that is the only way to set it up. The "footprint" thing is a non issue as this bootloader as well as others drops out of memory upon loading an OS. It's only problem is that it hasn't been maintained in the past 6 years, and that it requires an old DOS FAT16 partition to be installed onto. I am trying to get it to install onto a USB drive so I can do with it what you have done with grub, which is boot anything, and have anything on your system be available to boot, but have so far been unsuccessful at it. I even tried DOSBox to see if I could fool it into thinking the USB drive was a hard drive. What surprised me the most about XOSL is that it is a graphical interface, but the thing takes little memory space, and disappears after the OS selection is made. Grub 2 page mentioned that it would have graphical interface capacity.
I noticed that you did not have BeOS, OS/2, or DesqViewX in your list. :-]
DesqViewX ran under a QEMM modified DOS, but it was a really nice, early X-server, and would even allow a distributed process to be run on a remote machine. It would be cool to have a modern version of that floating around!
When I couldn't get Grub boot a USB device I also thought about the driver problem. However I later discovered Grub just relies on the Bios information and can see USB devices if the USB legacy support is enabled in the Bios. May be you should investigate in this direction too.
May be I didn't tried hard enough I do have BeOS installed inside a MS system and have not thought it requiring booting independently.
I did actually paid for a floppy-based OS2 system in the Internet with the view to try out its boot loader but none of my PC could runs it. There may be newer versions that can be run in modern PC but I consider it more or less a time waster. I did run an OS2 system donkey years ago.
I noticed in the front of this thread it says "Grub needs to be hosted elsewhere in another disk, floppy, CD or pen drive."
I've trying to follow both your awesome 145 and 44 distro threads. WOW!
I would like to do a close parallel to them. I have both an HP and a Compaq which both provide the capability for me to hit "ESC" at boot and boot from any installed device be it dvd, hd, usb, sd, etc.
I would like to set up a multi-distro linux HD on this system that I could select at boot time and then grub to any number of Linux distro's where it was all contained on the one disk.
If there is another thread like this I would appreciate direction, or barring that, guidance about how to apply the info you have already supplied.
Thanks again for all your great information to date!
First the bad news. Current Linux supports only 16 block devices names for a hard disk. Excluding the whole of the disk and one primary partition for converting into an extended partition (as they can't be used for storage) you can have a maximum of 3 primaries and 11 logical partitions of a total of 14 independent Linux each held in a partition. You therefore need a lot of hard disks if you want to boot say 100 OSes.
You can try virtual machines but they are not independent systems and you only boot its host. The rest are just guest systems you save as image files inside the host.
You could put all you Linux in a LVM but not every distro's installer supports it and you might end up with a common kernel. I didn't think this worth a pursuit.
The 44 logical partitions I described is actually using 4 primaries and turning each into an extended partition for holding set of 11 logical partitions. But no PC system support a hard disk with more than one extended partition because it will not be the PC standard that can be understood by every Dos, Windows, Linux and Unix. So I cheat by using only one extended partition and hide the other 3 at any one time.
As an example if I have extended partition sda1, sda2, sda3 and sda4 and hide the last 3 Linux will regard them as primaries from a foreign and unsupported system and would not bother to check the inside. I could then used the 11 logical partitions normally.
If I want to access the 11 logical partitions inside sda2 I have to hide sda1, unhide sda2 while sda3 and sda4 remain hidden. The second set of logical partition still have the same sda5 to sda15 device names but they are not the same as the first set.
Sda3 and sda4 are operated on the same method.
Since every one of these 44 partitions can be hidden some times and so not recognised by Linux and Grub I therefore cannot use any of them to store Grub. That is why Grub must be booted from another source, be it a floppy, CD, anther internal hard disk, an USB external hard disk, Pen drive, SD card....
The hiding and unhiding has to be perform by Grub so a partition permanent available is required to store Grub's configuration menu.lst.
If you use a hard disk in a normal way by having the standard one extended partition then there is no need to house Grub elsewhere. Grub can operate from any of the primary and logical partition to boot all the systems.
Grub will work in any partition, with or without a Linux, but remember no stand alone MS system can survive in a logical partition. Your 33 or 44 systems have to be Linux or some Unix.
A floppy is the best in your case. The reason is if you insert a SD or USB flash it can only boot if you nominate it as the first boot disk so your 44 systems have to be recognised and installed as the second disk. Using a floppy you have only one hard disk in the system.
A CD is equally as good as a floppy but it is hellish to edit errors.
I currently have 4 systems, 1 wk2p, 1 xppro, 2 vista, all networked with my wife's computers and a couple in other rooms. (Yes I am out of control
I have been playing with several distros on VBox on the xppro and 2 vista machines, but am very dissatisfied with the lack of network capability from VBox. After reading your "how to's" I thought I might add another HD to the vista machines, just for Linux distros only, so I could get a real experience including local networking.
I planned to leave the existing vista HDs (in HP/Compaq machines) and use the added HD's for Linux only. So far I have tried about 10 Linux distros in VBox which I would give up on once I got the Linux HDs going.
Knowing I will probably continue trying out new Linux distros I am hoping to get the 44 one going now by booting from an sd device which both HP and Compaq allow. With that in mind I plan to install Linux (or the master grub) on an SD device where, if I understand it correctly, I will install the master.1st grub pointing to the new Linux (44) HD.
I guess I would have to work out the correct (44 Linux) HD that the (SD) master grub would point to, but it seems doable.
I would appreciate your conformation that this plan is workable? In my mind it seems it is but....?
Basically you can put Grub, sourced from most Linux, into a SD card and set the bios to boot it first. Say this disk is recognised as device sda. To Grub this is the 1st boot disk known as (hd0)
If you have another existing hard disk it may become device sdb. To Grub this is the 2nd boot disk known as (hd1)
When you add the new disk for Linux it could become your sdc and will be call the 3rd disk in Grub under the name (hd2).
You therefore proceed to create 44 partitions and install 44 OSes in sdc. When you boot up Grub in sda you simply tell Grub which partition in (hd2) you wish to fire up. This is done by having a list of 44 systems for you to select.
The easiest way is called chainloading. Say you want the choice of booting the 5th and then the 6th partitions of disk sdc. In Grub's convention they are 5th and 6th partitions of the 3rd disk known as (hd2,4) and (hd2,5). The choices you need to write on menu.lst in sda are just
title OS in (hd2,4)
title OS in (hd2,5)
You can have from 7th to 15th partitions booting by changing (hd2,5) to (hd2,6) and then all the way to (hd2,15) to build up the first compliment of 11 logical partitions.
For an OS "chainloadable" you need to place its boot loader inside its root partition. 99.9% of Linux distros provide this facility and every MS system from Dos to Vista does it automatically.
For getting the 2nd, 3rd and 4th complements of each 11 logical partitions you need to read the thread.
First the bad news. Current Linux supports only 16 block devices names for a hard disk.
This change, this change, and this change all went into 2.6.28; this lifted the 16-partition limit.
(What the limit is now, I'm not sure. It looks like the block layer has a limit of approximately a million per dynamically-allocated major number, but some of those commit messages seem to imply that either the SCSI layer, or some other layer, still has a limit of 64. Either way, 64 is better than 16.)
Of course, this requires udev (or equivalent), a kernel >= 2.6.28, and (perhaps) this option being enabled. But it is possible.
I am not sure, maybe this needs to be a separate subject?
I have an HP with 2 HDs. The first currently has Vista which I would like to leave untouched. The second is a 1.5T HD, now for data only. The HP allows for booting from any installed device, so I would like to develop HD 2 as a duel use drive.
I would like to have HD 2 bootable for several Linux distros, let's say 10, and the reminder of the HD (NTFS) for use by either Vista or Linux for data.
I am looking for a duel boot solution that is HD based
My plan is to disconnect HD 1, the vista drive, so I can then partition HD2 from a live CD, and then install my additional Linux distros.
It is the partitioning I am unsure of? I know I can only have 4 primary partitions.
I understand Vista does not recognize Linux formatted partitions, and since I want the end product to include a data partition both Vista and Linux can recognize, I think it has to be NTFS and one of my 4 primaries?
So that leaves me 3 primaries for Linux distro use:
1.Linux partition 1 with the mbr for booting all the other installed Linux distros (30G?)
2.Linux partition 2 (30G?)
3.Linux partition 3 (240G?) subdivided into 8- 30G logical drives for Linux distro (8-10) installs.
And my final data partition:
4.NTFS partition (1.2T) for use by both Vista and Linux (if required).
My next question is which of the 4 partitions comes first, remembering I want to be able to boot Linux from it but also have Vista able to use the data part of it as if it was a normal HD for Vista purposes?
Assuming all this will work I hope to use some of your earlier Grub examples for booting the various installed Linux distros.
Our Super Mod bwkaz village elder has alerted me with his last post here that Linux kernel 2.6.28 and later have started to support more than 16 partitions and even beyond 64 partitions in a hard disk.
I can confirm that this is the case as I have used 67th partition when I tried. However not all the current partitioning programs, like cfdisk and fdisk, have been modified to reflect the new change. I only manage it with sfdisk and one or two other desktop-based partitioning tools to reach beyond the traditional 64 device names in a hard disk.
Conclusion this thread using hidden partition technique to get 44 partitions is now obsolete.
Regarding your case I shall explain as follow
(1) Only MS systems use the bootable flag. Linux never has a need of it! The bootable flag in the first 4 primaries can be obtained by one-read and so that is used by MS systems boot loader which boot any of the 4 primaries if it has the bootable flag switched "on". All the partitioning tools I know of always switch off the existing if a user select another primary partition's bootable flag.
The above explains that you can put any number of MS systems on the same disk and boot each one up simply by making the partition you want to boot "active" and deactivate the other. You need to hide the MS supported system in front of the booting MS system if you want it to be booted up as the "C" drive. I can explain it further if you need it.
To make a partition "active" or "bootable" is equivalent to switch on the bootable flag. I believe the action just toggles a binary bit in the partition table.
(2) Regarding booting Linux the operation is a lot simpler. If you install 10 Linux just tell the installer to put its boot loader inside its own partition. You can then nominate any of the boot loader from the 10 Linux or any of the MS systems to control the booting by occupying the MBR.
You then configure this boot loader to boot all the rest. The configuration is the easiest with Grub because you can try the operation bit by bit, line by line manually and even write the configuration file "before" installing any operating system.
Even with 64 or more partitions the hard disk works as 4 primaries only. If you want more than 4 you turn one of the primaries into an extended partition. All the partition starting from the 5th are all logical partitions which must be consecutive and wholly fitted inside the extended partition. You can use any of the 1 to 4 primaries as the extended partition which can onccur once in a hard disk but the best is always the 4th partition as you can keep on increasing at the end. Each logical partition has its own partition table and contain the hard disk address of the next logical partition down the line.
It may be a bit of confusing but you can boot any installed operating system with Grub, in a floppy, CD or jump drive. SO you can install all the systems first and then select any Grub, modify it configuration as the permanent boot loader (or alternately keep modifying it as you go along).