rdos wrote:This really sounds too complex.
What would be the easiest solution if I wanted a PC with a SATA-disc (non-IDE mode) to boot a multiboot-compliant kernel from a FAT32 partition located in the third partition slot? Partition 1 and 2 are NTFS. I also want to chain-load Windows 7 from partition 2. Additionally, the boot-loader must be placed in the MBR of the disc, as booting from a CD/DVD is too time-consuming because it is not possible to permanently set default-boot from CD/DVD.
It seems like legacy-GRUB cannot handle this as it is not possible to place GRUB stages on the first partition (it is not even visible in Windows 7).
It's important only what size and partitioning scheme disk has. You should note that GPT is bad suitable for booting existing BIOS-based Windows systems. If you have disk with size up to 2 Tb don't think about to use GPT. As JAAman said there is theoretical possibility to use disk with size up to 4 Tb minus 1 Kb without GPT too (when partition with position and length 0FFFFFFFFh is used). If you use multiboot-compliant boot loader then no reason to get position of the boot partition from boot loader. The partition number is enough. You can put legacy GRUB on NTFS partition only if it will be running directly by GRUB's stage1 (not by stage1_5). But this is not used because GRUB's config file and other data should be placed on non-NTFS paftition anyway. Therefore your partition configuration is typical for legacy GRUB/NTFS. You can install GRUB and your kernel on FAT partition (stage1 should be placed into MBR) and use simple config file to choice between Windows 7 or your kernel. Or you can use my technique (see below).
Solar wrote:That's the single most annoying thing with Windows Setup. Whatever boot manager I use is my decision. An OS setup has no business doing anything outside its assigned installation partition(s). You may subserviently ask me if I already have an MBR boot manager installed, and if you could do me the favor of installing one, but generally speaking an OS is a guest of mine given a specific partition to reside in, and my MBR / boot manager is none of its business. I will chain-load the partition bootloader. How I do that is my business.
I will take your wishes into account
I just wanted to say that advanced users can use setupmbr/setupldr tools separately. I understand your indignation and I'm solid with you because I practice double system configurations (Win/Win, Win/Linux-based OS, Win/my kernel-based OS) and when I install Windows in second turn it has replaced my MBR boot loader
rdos wrote:I think I found the solution after I posted this. It seems like I'm using an old GRUB (legacy) version and this is why it cannot read NTFS, nor can place the boot stages on any partition.
You can install legacy GRUB on the partition where your system is placed (I don't believe that NTFS is base FS for your system) and then use "chainloader (hd0,x)+1" to the NTFS partition. Or you can install my Alter into MBR and GRUB's stage1 into VBR of "your partition" and then use GRUB only for your specific needs (for example I use modified GRUB just as one of my second stage boot loaders).
So, the answer probably is GRUB legacy. I also searched for GRUB2 solutions, but I'm unable to find anything that does not require a Linux / UNIX installation (there are no prebuilt floppy-images available).
Let we try to do that floppy. Why did you not try some Linux LiveCD?
If you have seen bad English in my words, tell me what's wrong, please.