LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - General
User Name
Password
Linux - General This Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.

Notices


Reply
  Search this Thread
Old 04-07-2006, 01:26 PM   #16
michaelk
Moderator
 
Registered: Aug 2002
Posts: 25,700

Rep: Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895

Ok, It got it this time...
I'm not up to speed on how windows does its multiple boot stuff.
Can you post the c:\boot.ini file?
 
Old 04-07-2006, 01:52 PM   #17
pyromithrandir
LQ Newbie
 
Registered: May 2005
Distribution: Kubuntu Dapper Drake
Posts: 13

Original Poster
Rep: Reputation: 0
Code:
[boot loader]

timeout=1

default=multi(0)disk(0)rdisk(0)partition(3)\WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
This on on hda1's windows install, and there isn't one on the hda5 windows install. If I'm reading it correctly, which I don't know that I am, it looks as if it is saying that it should boot hda3. But hda3 is an NTFS partition without an operating system on it.
I guess it must be referring to hda5, but I'm not sure how exactly it thinks of it as the 3rd partition. Perhaps since hda2 is extended it doesn't count it, so hda3 would be number 2 and hda5 number 3?
 
Old 04-07-2006, 03:03 PM   #18
haertig
Senior Member
 
Registered: Nov 2004
Distribution: Debian, Ubuntu, LinuxMint, Slackware, SysrescueCD, Raspbian, Arch
Posts: 2,331

Rep: Reputation: 357Reputation: 357Reputation: 357Reputation: 357
Quote:
Originally Posted by pyromithrandir
When I try to boot (hd0,0), the first install, grub doesn't give me any errors, and windows boots. The problem here is that the windows install that boots up isn't at (hd0,0). It doesn't boot hda1. What boots up when I tell grub to boot (hd0,0) is the second windows installation, which is on hda5.
This probably indicates your boot.ini file on /dev/hda1 (a.k.a. "(hd0,0)") has a default arcpath which is pointing to /dev/hda5. This boot.ini file was probably modified when you installed Windows up on /dev/hda5.

If I had to guess, I'd say your boot.ini arcpath to the default boot configuration looks something like this:
Code:
multi(0)disk(0)rdisk(0)partition(3)
and you want it to look like this:
Code:
multi(0)disk(0)rdisk(0)partition(1)
Possibly that "partition(3)" in the example above might be "partition(2)", I don't remember the details of Microsoft's arcpath numbering, but either 2 or 3 is incorrect if you want to boot the first partition. This should be "partition(1)" to boot to the first partition. Note that we are now dealing with THREE ways of specifying disks/partitions. We have grub's (hd0,0) syntax, Linux's /dev/hda1 syntax, and Microsoft's arcpath syntax.

Chances are your boot.ini file has two arcpaths defined. One pointing to /dev/hda5 (the default boot) and the other pointing to /dev/hda1. This is the way Windows does multi-booting. Different from everybody else on the planet. An astute observer will now notice, "Hey, doesn't Micorosft's multi-booting make these two Windows installations dependent on each other (because they share a boot.ini file)?" YES IT DOES! And this will create problems if you decide to remove one of these Windows installations. Surprise! Now the OTHER one won't boot!!!

So now you decide to manually edit your boot.ini file and change things around. Sorry, not from within Windows. It's a protected file. Boot into DOS or Linux to do this editing. Luckily your boot.ini is on a FAT partition, otherwise you'd run into additional headaches trying to use NTFS from within DOS. You can edit NTFS with Linux ... due caution advised.

Back to your boot sequence. You are asking grub to boot the first partition, and it DOES. But then Microsoft multi-booting takes over. It finds that boot.ini file on the first partition and grabs the default arcpath, and continues booting to /dev/hda5 since that's what the default in boot.ini tells it to do.

Quote:
When I try to boot (hd0,1), the second install, grub gives me an error that it can't find something there to boot.
Totally expected. Because (hd0,1) equates to /dev/hda2 which is an extended partition, as several have already said. You cannot boot this. You will never be able to boot this. A extended partition is a container for logical partitions, as has already been said. You can boot logical partitions. In Linux it is easy to boot one. But Windows does not like to boot logical partitions without specific configuration on your part. I recommend the following tutorial to learn the nitty-gritty of Windows booting: http://www.goodells.net/multiboot/index.htm

Quote:
I'm going to change it from (hd0,1) to (hd0,4) because I think that if I tell it that that it will be able to boot the second windows install from an option that makes sense.
This is a step in the right direction. But I'm still not sure it will boot for you. It's going to go up the /dev/hda5 and start looking for a properly configured boot.ini file. You probably don't have that. Because Windows is "sharing" the boot.ini file down on /dev/hda1. I believe you will find it's also sharing some other files down there on /dev/hda1. ntdlr for one (I think that's the name of the file). The moral to this story is: "Don't delete your Windows installation on /dev/hda1. This will make your installation on /dev/hda5 non-bootable. Send your thanks to the Microsoft multi-boot design professionals."
 
Old 04-07-2006, 03:15 PM   #19
michaelk
Moderator
 
Registered: Aug 2002
Posts: 25,700

Rep: Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895Reputation: 5895
Correct, Windows does not count the extended partition. So you need to add another line for your hda1 windows which will be partition(1) and select the default as desired in your boot.ini file

Last edited by michaelk; 04-07-2006 at 03:17 PM.
 
Old 04-07-2006, 03:45 PM   #20
haertig
Senior Member
 
Registered: Nov 2004
Distribution: Debian, Ubuntu, LinuxMint, Slackware, SysrescueCD, Raspbian, Arch
Posts: 2,331

Rep: Reputation: 357Reputation: 357Reputation: 357Reputation: 357
Quote:
Originally Posted by pyromithrandir
This on on hda1's windows install, and there isn't one on the hda5 windows install.
I see you posted your boot.ini file while I was replying. No, it didn't takme THAT long to type my reply! I had broght up a reply window and then walked off to do something else, coiming back and finishing replying but failing to notice your newer post.

Anyway, you boot.ini explains it all. Exactly what I expected you'd find.

Since you're actually booted into /dev/hda5, you MAY be able to edit boot.ini on /dev/hda1 from within a running Windows. You can certainly try. MAKE A BACKUP OF BOOT.INI, and then try changing it to something like what I have below. Note I increased the "timeout" so that you have a little more time to choose which OS installation to boot.
Code:
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(3)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="New Windows on hda5" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Old Windows on hda1" /noexecute=optin /fastdetect
I'm not sure about that "/noexecute=optin /fastdetect" part on the "Old Windows on hda1" line. You may need it. You may not. It may screw things up. You'll just have to play around with it and see. My knowledge of boot.ini has gone downhill over the years. Most people have probably never heard of it, much less edited it and remembered the details!
Quote:
If I'm reading it correctly, which I don't know that I am, it looks as if it is saying that it should boot hda3.
Code:
"/dev/hda1" (primary, FAT) -> arcpath "partition(1)"
"/dev/hda2" (extended) -> not counted in arcpath
"/dev/hda3" (logical, NTFS) -> arcpath "partition(2)"
"/dev/hda5" (primary, FAT) -> arcpath "partition(3)"
Or something like that. I'm still fuzzy on Microsoft's arcpath number rules. It's been a while since I messed with Windows.
 
Old 04-07-2006, 04:03 PM   #21
haertig
Senior Member
 
Registered: Nov 2004
Distribution: Debian, Ubuntu, LinuxMint, Slackware, SysrescueCD, Raspbian, Arch
Posts: 2,331

Rep: Reputation: 357Reputation: 357Reputation: 357Reputation: 357
Quote:
Originally Posted by haertig
No, it didn't takme THAT long to type my reply! I had broght up a reply window and then walked off to do something else, coiming back and finishing replying but failing to notice your newer post.
Code:
To whom it may concern -

Please excuse the terrible typing by this poster.  Things like this happen
when too much coffee is consumed, fingers work faster than brain cells,
it's a Friday, and the typer is, well, basically stupid to start with.

Thank you -- The Management
 
Old 04-07-2006, 04:17 PM   #22
pyromithrandir
LQ Newbie
 
Registered: May 2005
Distribution: Kubuntu Dapper Drake
Posts: 13

Original Poster
Rep: Reputation: 0
Wow, Microsoft's way of multi-booting is disgusting (not surprisingly- it is MS).
Thanks a ton for your help, michaelk and haetig. Thanks especially for showing me what I should put in my boot.ini. I'm sitting on linux, so I can edit the file from here.
I've changed my boot.ini to what you suggested, haetig. I've also, for the hell of it, changed the entry for (hd0,1) to (hd0,4) in grub's menu.lst to see if that'll boot it, out of curiosity. Of course, I'm leaving in the entry for (hd0,0), as that's the one I'll probably be using to get at both windows installs.

Oh, I also found a boot.bkk on hda1 that has this:
Code:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /NoExecute=OptIn
That would be the old one, from before the new windows install changed it. Given that this has the "/fastdetect /NoExecute=OptIn" at the end of the line, I think it probably won't give me any problems with having it in the new boot.ini.

After I test this out, I'll report back.
 
Old 04-07-2006, 04:28 PM   #23
archtoad6
Senior Member
 
Registered: Oct 2004
Location: Houston, TX (usa)
Distribution: MEPIS, Debian, Knoppix,
Posts: 4,727
Blog Entries: 15

Rep: Reputation: 234Reputation: 234Reputation: 234
haertig, thanks for saving me a LOT of typing (& thinking). Pretty much exactly what I thought when I re-read the OP. Extremely well put; &, as far as I remember, exactty right.

I have the same problem w/ forgetting "Winders" "stuff" -- I/m expecting my one year chip in mid-May.

Last edited by archtoad6; 04-16-2006 at 06:16 AM.
 
Old 04-07-2006, 04:40 PM   #24
pyromithrandir
LQ Newbie
 
Registered: May 2005
Distribution: Kubuntu Dapper Drake
Posts: 13

Original Poster
Rep: Reputation: 0
All is well and good. Using the boot.ini that haertig provided I was able to access both installs.

As for trying to have grub boot hda5, no luck. It told me: "Error 12: Invalid device requested." But I didn't really expect it to work, based on what I now know of how windows handles booting multiple installs of itself. So there's no problem there and no need for that entry on my menu.lst anymore.
 
Old 04-07-2006, 04:47 PM   #25
haertig
Senior Member
 
Registered: Nov 2004
Distribution: Debian, Ubuntu, LinuxMint, Slackware, SysrescueCD, Raspbian, Arch
Posts: 2,331

Rep: Reputation: 357Reputation: 357Reputation: 357Reputation: 357
Quote:
Originally Posted by pyromithrandir
As for trying to have grub boot hda5, no luck.
As an experiment, your coud TRY manually creating an appropriate boot.ini up there on hda5, telling it to boot hda5 (you know how to do that now!) Give grub a shot at it, and I expect it will complain about something. That missing ntdlr I'd guess. Act on what it complains about (assuming it complains with enough detail). If it says "missing ntdlr", then copy ntdlr from hda1 up to hda5. And so on and so on until the damn thing finally boots independent of hda1. Or so the theory goes...
 
Old 04-07-2006, 05:03 PM   #26
pyromithrandir
LQ Newbie
 
Registered: May 2005
Distribution: Kubuntu Dapper Drake
Posts: 13

Original Poster
Rep: Reputation: 0
Hey, I knew how to tell grub to boot hda5 the whole time, I just didn't know to tell it to boot hda5. I didn't think the windows installer would decide to make an extended partition, and I obviously hadn't double-checked with fdisk to make sure it did what I thought it did until a while later.

I'll try playing around to make hda5 boot from grub a bit later to see what I come up with. If, no, when I make it boot hda5 on its own, I'll post what I had to do to make it so.
 
Old 04-07-2006, 05:05 PM   #27
haertig
Senior Member
 
Registered: Nov 2004
Distribution: Debian, Ubuntu, LinuxMint, Slackware, SysrescueCD, Raspbian, Arch
Posts: 2,331

Rep: Reputation: 357Reputation: 357Reputation: 357Reputation: 357
I would have expected a few differences in what you observed about your WIndwos #1 and Windows #2 incestual relationship.

First, when Windows #2 saw Windows #1 during Windows #2 installation, I would have expected #2 to have added itself to #1's boot.ini file. In your case, it appears #2 just replaced #1's boot.ini down there on #1's partition and took #1 totally out of the picture as far as being a selectable boot item. Now this is just the most unfriendly thing I can imagine. A normal user would think #1 was toast at this point, and that #2 was the only bootable OS. So why not format #1's partition and make use of it? That's what I'd want to do. But holy crap Batman. Now #2 won't boot anymore. Who would have known #2 had a hidden dependancy on #1's boot.ini file. Especially when the average user would think #1 was totally blown away. I'd love to hear Microsoft's thinking on how to rationalize this behavior.

Second, I would have expected #2 to notice that #1 already had a "C drive". And thus #2 would have installed itself on the next available drive, probably "D". You didn't mentioned this behavior, but I would have expected that when you previously booted into hda5 your booted OS would have actually been your D drive, and any time you looked at your C drive you would have been actually viewing the old #1 installation. Maybe not even realizing it. Holy crap Batman! You didn't mention this unfriendly behavior having happened to you, but it's what I would have expected. Maybe I'm remembering wrong about this scenerio in the Microsoft multi-boot world. But if I'm remembering correctly, it gets even worse. Say Joe-average somehow managed to determine he had incestuous C and D drives. No problem, just wipe out C and rename D to C (ignoring for the moment that pesky little boot.ini down on C-#1). Guess what? Windows will let you rename drives, EXECPT for your boot drive. So you can't rename D to C. This sounds bad, but I'm sure Microsoft had a reason for it. Imagine the hell that would break loose in your registry were the boot drive letter to change on the fly.

This is why we have Knoppix, Kanotix, Slax, etc. To referee and repair Windows when it pees all over itself.
 
Old 04-07-2006, 05:18 PM   #28
haertig
Senior Member
 
Registered: Nov 2004
Distribution: Debian, Ubuntu, LinuxMint, Slackware, SysrescueCD, Raspbian, Arch
Posts: 2,331

Rep: Reputation: 357Reputation: 357Reputation: 357Reputation: 357
Quote:
Originally Posted by pyromithrandir
If, no, when I make it boot hda5 on its own, I'll post what I had to do to make it so.
Be sure you check out that link I posted above (Dan Goodell's page) about multibooting. Part of what he covers is how to make Windows boot out of a logical partition. This is something that Windows does not normally like to do. Although it seems in your case, it is doing exactly this. I guess Microsoft's multi-booting scenerio at least gets this little detail correct. Anyway, Dan's tutorial is something to keep in the back of your mind. I know back when I configured Windows to boot out of a logical partition, I had to manually fire up a raw disk editor and edit the logical partition's boot record. Most people have probably never heard of a "partition boot record". You've got your "master boot record", your "partition table", your "boot code", your "partition boot record", your "boot.ini". Sheesh - almost impossible to keep it all straight in your mind. I can't say that I miss having to deal with all this Windows stuff. But this thread has been a fun refresher course back to my pre-Linux days.

No one has mentioned systems backups yet, but I'm sure you've already got the notion that some of these might be a real good idea (tm) before you embark on this little "I'll get it to boot out of hda5" adventure...
 
Old 04-07-2006, 05:32 PM   #29
pyromithrandir
LQ Newbie
 
Registered: May 2005
Distribution: Kubuntu Dapper Drake
Posts: 13

Original Poster
Rep: Reputation: 0
Quote:
Second, I would have expected #2 to notice that #1 already had a "C drive". And thus #2 would have installed itself on the next available drive, probably "D". You didn't mentioned this behavior, but I would have expected that when you previously booted into hda5 your booted OS would have actually been your D drive, and any time you looked at your C drive you would have been actually viewing the old #1 installation. Maybe not even realizing it. Holy crap Batman! You didn't mention this unfriendly behavior having happened to you, but it's what I would have expected.
Actually, when I'm on either one the drive I'm booted to is called C. (at least it was before I changed the boot.ini, I didn't check when I booted them up to make sure they booted up). I remember saying to myself "Geeze, can't they even keep the letters consistent with two installs?"
Again, I'm not trying to exlain why it happened that way, I'm just telling you that it did.

I've been reading that page you posted about multibooting and using it as reference and I try to decide how to go about making hda5 boot. It hurts my brain a little bit but I think I'm learning quite a bit.
 
Old 04-07-2006, 05:35 PM   #30
archtoad6
Senior Member
 
Registered: Oct 2004
Location: Houston, TX (usa)
Distribution: MEPIS, Debian, Knoppix,
Posts: 4,727
Blog Entries: 15

Rep: Reputation: 234Reputation: 234Reputation: 234
Shifting drive letters has long been the "Winders Way".

Last edited by archtoad6; 04-16-2006 at 06:15 AM.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Messed up partition table. randrake Linux - General 3 12-15-2005 01:50 PM
Messed up partition table, DOH javamdk Slackware 2 03-17-2005 07:14 PM
Really messed up my partition table scuzzman Linux - Hardware 7 02-04-2005 12:17 PM
Restoring working but messed up partition table mjs2020 Linux - Hardware 1 12-06-2004 06:19 PM
HELP machine won't boot (partition table messed up???) nfisk Linux - General 7 02-02-2003 05:12 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - General

All times are GMT -5. The time now is 06:35 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration