Jump to content

Welcome to MSFN Forum
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account



Photo

Drive Order

- - - - -

  • Please log in to reply
117 replies to this topic

#101
submix8c

submix8c

    Inconceivable!

  • Patrons
  • 4,508 posts
  • Joined 14-September 05
  • OS:none specified
  • Country: Country Flag

?

You have an additional BOOTINI.TXT? Have you renamed something?

 

Jaclz, since the "C-Drive" (XP) appears to be OK, wouldn't it be simpler to have the "basic" BOOT.INI plus an added line calling GRLDR which in turn has a MENU.LST that hooks to Win7? Was that the (your) initial intent? That's the way I boot my 98SE.

BOOT.INI

[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="The XP and other parameters following"
C:\grldr="The Windows7 MENU.LST link"

MENU.LST

color black/cyan yellow/cyan
timeout 30

title Grldr Loading Windows 7
map (hd1) (hd0)
map (hd0) (hd1)
map --hook
root (hd0,1)
chainloader +1

Would that not work? :unsure:

 

(Note - those Timeout values are for me to have ample opportunity to interrupt if necessary.)

BTW, the above BOOT.INI is the usual standard (along with your original line). The 30-Seconds is just to give a chance to select the Second Boot. My original XP Pro BOOT.INI is as follows

[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" /noexecute=optin /fastdetect
C:\CMDCONS\BOOTSECT.DAT="Microsoft Windows Recovery Console" /cmdcons

As you can see, I had installed the XP Command Console and changed the Timeout to suit me. This should (theoretically) be (similarly) what's in yours. It seems that all you need from here is an additional line inserted and the appropriate MENU.LST. Using the above, you would only need the SECOND entry that Jaclaz indicated. The *only* reason I flip-flopped the HDD's identity is because that's *my* entry to boot Win98SE which requires it to be the "first" HDD on the "first" partition, which is *not* your case.

 

(sorry for the interjection - trying to clarify/help.)

 

P.S - No, you're not all messed up. Take it slow and easy and do *nothing* beyond what jaclaz *specifically* says to do.


Edited by submix8c, 02 March 2015 - 09:52 AM.

Someday the tyrants will be unthroned... Jason "Jay" Chasteen; RIP, bro!

Posted Image



How to remove advertisement from MSFN

#102
Roffen

Roffen

    Junior

  • Member
  • Pip
  • 60 posts
  • Joined 24-July 12
  • OS:XP Pro x86
  • Country: Country Flag

The txt file(s) are my way of saving things so I can bactrack my steps if I 'mess things up'.

I just finished putting your suggestions in place and will now promptly reset. Holding my breath...

 

ETA:

 

XP = OK

W7 No good

cmd: root (hd0,1) generates error 22, no such (path?)

 

cmd map --hook generates error 61, refuse to hook (int?)13 because of empty drive map table

 

My jotted notes, they look rather messy, I should have been a doctor...

 

Maybe we are not far from from the ultimate solution?

 

Although I'd like it better if booting of Win7 would be transparent and look as clean as that of XP.


Edited by Roffen, 02 March 2015 - 11:06 AM.


#103
jaclaz

jaclaz

    The Finder

  • Developer
  • 15,522 posts
  • Joined 23-July 04
  • OS:none specified
  • Country: Country Flag

Well, no. :no:

If you modify the BOOT.INI as submix8c suggested and DO NOT have a menu.lst you will get to a grub> prompt.

If in it you type:

map (hd0) (hd1)

[ENTER]

map (hd1) (hd0)

[ENTER]

when you enter:

map --hook

[ENTER]

the mapping will succeed alright as you will have specified the drive map table.

 

BUT, in your case, there is no need for the Windows 7 to be "first disk", so you need not to remap nor hook anything, and as posted the:

title boot 7 from second disk

root (hd1,1)

chainloader /bootmgr

should do nicely.

Please consider how the (hd1,1) in the above comes from your previous report, the first partition on second disk should be (hd1,0), and normally the BOOTMGR is on the first (active) partition.

 

jaclaz



#104
Roffen

Roffen

    Junior

  • Member
  • Pip
  • 60 posts
  • Joined 24-July 12
  • OS:XP Pro x86
  • Country: Country Flag

Just a single partition on each drive, so a zero it is...

 

So we are there now!

 

Get a file system msg during Win 7 boot. Irrelevant.

 

Relieved, need a rest now.


Edited by Roffen, 02 March 2015 - 12:20 PM.


#105
Roffen

Roffen

    Junior

  • Member
  • Pip
  • 60 posts
  • Joined 24-July 12
  • OS:XP Pro x86
  • Country: Country Flag

My old computer broke down, got me a 'new' one and will have Win XP and Win 7 on each their own hard disk. Keeping both drives connected, am I right in assuming that I then can install XP first, then Win7, and the multiboot I want will have been taken care of with nothing left for me to bother with?

 

Will either system drive appear as a C: volume when booted?


Edited by Roffen, 30 April 2015 - 03:45 AM.


#106
jaclaz

jaclaz

    The Finder

  • Developer
  • 15,522 posts
  • Joined 23-July 04
  • OS:none specified
  • Country: Country Flag

My old computer broke down, got me a 'new' one and will have Win XP and Win 7 on each their own hard disk. Keeping both drives connected, am I right in assuming that I then can install XP first, then Win7, and the multiboot I want will have been taken care of with nothing left for me to bother with?

 

Will either system drive appear as a C: volume when booted?

Well, if you install first XP, the volume on which you install it (let's say the first primary partition of first hard disk) will get drive letter C:.

When you install the Windows 7 that volume will remain C: and the volume (let's say first primary partition of second disk) will get a "later" drive letter.

 

The booting until you have only the XP installed will go:

BIOS->First Disk MBR->Active Primary partition PBR (this will be C:\)->NTLDR->BOOT.INI->Windows XP

once you will have installed the 7 it will go either:

BIOS->First Disk MBR->Active Primary partition PBR (this will be C:\)->BOOTMGR->\boot\BCD->XP choice->NTLDR->BOOT.INI->Windows XP

or:

BIOS->First Disk MBR->Active Primary partition PBR (this will be C:\)->BOOTMGR->\boot\BCD->7 choice->Winload.exe (on second disk partition, possibly D:\)->Windows 7

 

If you have only one primary partition on the first disk that will be C: under both OS, whilst the first primary partition on second disk will be D:, again on both OS.

 

As always, using a few tricks and/or a third party bootmanager this can be changed if this is not the expected result.

 

jaclaz 



#107
dencorso

dencorso

    Iuvat plus qui nihil obstat

  • Supervisor
  • 5,848 posts
  • Joined 07-April 07
  • OS:98SE
  • Country: Country Flag

Donator

OTOH, by installing XP on one disk, with the other disconnected, then disconnecting the XP disk, connecting the other one and installing 7, this will result in both having the letter C: when booted, but assuming another letter (which is configurable) when the other one is booted... and some minor adjusting for setting that up as a double boot, IMO, preferably, by using grub4DOS...



#108
jaclaz

jaclaz

    The Finder

  • Developer
  • 15,522 posts
  • Joined 23-July 04
  • OS:none specified
  • Country: Country Flag

OTOH, by installing XP on one disk, with the other disconnected, then disconnecting the XP disk, connecting the other one and installing 7, this will result in both having the letter C: when booted, but assuming another letter (which is configurable) when the other one is booted...

Sure, and to change boot one would need to change drive order in BIOS, which brings us back where it all began, i.e. here:
http://www.msfn.org/...rder/?p=1005033
which, starting from here:
http://www.msfn.org/...rder/?p=1005435
details the grub4dos usage to have each OS "independent".

jaclaz

Edited by jaclaz, 01 May 2015 - 04:21 AM.


#109
Roffen

Roffen

    Junior

  • Member
  • Pip
  • 60 posts
  • Joined 24-July 12
  • OS:XP Pro x86
  • Country: Country Flag

ETA:: I didn't see your msg before I wrote this:

 

I have been working hard to try and manage as much as possible on my own, and I am almost tere, but a strange problem has snuck in:

 

As said, I have two similar system disks, one for XP and the other for Win7.

 

When set as first boot drive in BIOS, both of them work 100% fine, with drive letter C and everything else looking just fine.

 

But with XP as first drive and selecting the Win 7 entry in the boot.ini file, I get an error message like this:

 

Windows Root > \system32\ntoskrnl.exe is missing or corrupt.

 

The file is there, ntoskrnl.exe 54341KB, 21.11.2010

 

I know ntoskrnl problems are not uncommon but it beats me why the multiboot path to booting should cause a problem.

 

My two setups:

 

Disk 0 Win XP root files:

boot.ini:
[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"
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows Ultimate"
C:\Windows7.bin="Windows 7 disk"

IO.SYS
MSDOS.SYS
NTDETECT.SYS
ntldr
pagefile.sys


Disk 1 Win7 root files:
AUPOX
bootmgr
hiberfile.sys
pagefile.sys
swapfile.sys
 

....

 

It would be nice to have grub4dos too, but  I don't know if I can fix that all by myself.

 

What has made everything so difficult for me is that my old machine didn't just break down; I was having all kinds of problems that I tried to fix. Reinstalling OS's, utilities, only to run into more problems, CD/DVD disks getting corrupted and finally, out of the blue i got a message about data written to an address that should not be written to, and after that my SSD drive with the XP and Win7 partitions was dead and beyond resurrection.

 

So much of what I thought I had saved from my installation got lost during my struggle to repair the system.


Edited by Roffen, 01 May 2015 - 04:25 AM.


#110
jaclaz

jaclaz

    The Finder

  • Developer
  • 15,522 posts
  • Joined 23-July 04
  • OS:none specified
  • Country: Country Flag
Well, you cannot use NTLDR to boot Windows 7, which is what you are attempting to do with this line:

multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows Ultimate"


Now, be nice :).

Start again.

You want this BOOT.INI:

[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"
C:\grldr="Grub4dos to Windows 7"

and add to the first disk (together with boot.ini), this menu.lst:

timeout 30

title Grldr Loading BOOTMGR
find --set-root /bootmgr
chainloader /bootmgr

title Grldr loading second disk
chainloader (hd1)+1

title Grldr loading second disk and exchange
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
chainloader (hd0)+1

title Grldr loading first part on 2nd disk
root (hd1,0)
chainloader +1

title Grldr loading first part on 2nd disk and exchange
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
root (hd0,0)
chainloader +1

and of course a grldr file, you can get it from the latest 0.4.5c version:
http://grub4dos.chen....5c-2015-04-08/
http://dl.grub4dos.c...c-2015-04-08.7z
 
Theory of operation:
Bios boots the MBR of first disk.
The MBR code loads the PBR of the Active partition on first disk.
The PBR code loads the NTLDR (residing on the active partition on first disk)
The NTLDR loads the BOOT.INI choices.
You choose "Grub4dos to Windows 7".
The NTLDR chainloads the grldr file (grub4dos).
The grldr loads the menu.lst choices.
You choose the "Grldr Loading BOOTMGR" choice.
The grldr looks in all volumes on all disks if he can find in the root a file "BOOTMGR".
Then it chainloads the found BOOTMGR.
The other entries (that should all work) are other variations with the same final goal of chainloading BOOTMGR on the first partition of second disk.
The BOOTMGR loads the choices in \boot\BCD (possibly just one in your case)
You choose to boot to Windows 7 (or wait until the timeout in \boot\BCD) and BOOTMGR chainloads WINLOAD.EXE (which is what actually boots the Windows 7).

If you prefer, when you boot and choose the "Windows XP", you are using NTLDR as both primary boot manager and bootloader, when you boot and choose "Grub4dos to Windows 7" NTLDR is used only as primary boot manager, grub4dos becomes the secondary boot manager and BOOTMGR becomes tertiary boot manager and boot loader.

I know it is confusing :), but you should have no issues in following the above with some patience.

jaclaz

#111
Roffen

Roffen

    Junior

  • Member
  • Pip
  • 60 posts
  • Joined 24-July 12
  • OS:XP Pro x86
  • Country: Country Flag

After installing grub4dos I can boot Win 7 without any problems. I don't understand why it doesn't work from the 'normal' entry.

Must run, will check your post later. I have a wife that needs some attention, it is stressing.



#112
Roffen

Roffen

    Junior

  • Member
  • Pip
  • 60 posts
  • Joined 24-July 12
  • OS:XP Pro x86
  • Country: Country Flag

"Well, you cannot use NTLDR to boot Windows 7, which is what you are attempting to do with this line:

Quote

multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows Ultimate"

OMG, now I see!

 

I take it that means a dual boot with both system drives as C: is impossible without grub4dos or something like that?

Was a revelation to me.

 
 



#113
jaclaz

jaclaz

    The Finder

  • Developer
  • 15,522 posts
  • Joined 23-July 04
  • OS:none specified
  • Country: Country Flag

OMG, now I see!
 
I take it that means a dual boot with both system drives as C: is impossible without grub4dos or something like that?
Was a revelation to me.

Yes and no. :w00t:

It is important to understand the difference between a boot manager and a boot loader, and since most of the tools are at the same time BOTH, it is easy to get confused.

A boot manager is something that can chainload (or pass control to) a boot loader.
A boot loader is something that directly loads an Operating System.

The default boot manager for NT through Server 2003 is NTLDR.
NTLDR is also the one and ONLY boot loader for NT through Server 2003.

The default boot manager for Vista and later is BOOTMGR.
BOOTMGR is also the one and ONLY boot loader for Vista and later.


NTLDR is at the same time a boot manager and a boot loader FOR NT/2K/XP/2003 ONLY.

BOOTMGR is at the same time a boot manager and a boot loader for Vista :ph34r:, 7 and later BUT among it's boot manager features it has the capability to chainload the NTLDR, using it as a boot loader.

See here (that includes a nice set of graphics):
http://www.multiboot.../multiboot.html

Simplified, right now to boot XP you use only NTLDR, and since NTLDR by itself cannot chainload BOOTMGR, we use grub4dos as a "man in the middle" (as an intermediate boot manager).

If you change the primary boot manager from NTLDR to BOOTMGR you can get rid of grub4dos, since BOOTMGR can chainload NTLDR "directly".

In order to do this you will need to have a copy of the BOOTMGR and of the \boot\BCD on your first disk and change the PBR on the Active partition of it to load BOOTMGR instead of NTLDR, then add to the \boot\BCD a choice to load the NTLDR (if - by any chance - you use Bitlocker it will be needed to change also the MBR code).

The MS tools to do the above are bootsect.exe and bcdedit.exe, as they are a bit complex to use, ask before attempting to use them and if needed I will provide you with the exact procedure :).

jaclaz



#114
Roffen

Roffen

    Junior

  • Member
  • Pip
  • 60 posts
  • Joined 24-July 12
  • OS:XP Pro x86
  • Country: Country Flag

That's very nice of you but I think you already have done much more than anyone could expect on any forum. I am very grateful for that. I now I have a functioning system that I don't want to mess up for anything in the world. Besides, it is about time I get all all of this settled for good, I want to spent the rest of my spare time using a computer and forget all about what's inside.

 

I am now trying to streamline the process by removing things from the boot.ini and menu.lst files.  With only two options in boot.ini, would it be possible to have grub4dos automatically select and execute the only option besides XP that I need in my menu.lst  - booting of the Win7 disk?

 

I might decide to use WIin 7 as my main OS and just keep XP as a standby in case of compatibility problems. That would be the v6 of Outlook Express, and MusicMatch. I have not looked into whether Win7 Ultimate might have a solution for that.

 

I wouldn't mind getting rid of XP altogether!

 

But for the time being, what I care most about is whether I now can use disk management to designate all my drives and volumes to use the same drive letters regardless for which system is booted except for the two system drives that of course always would be C or D.

 

That would make mapping of everything else look identical regardless of system in use.



#115
jaclaz

jaclaz

    The Finder

  • Developer
  • 15,522 posts
  • Joined 23-July 04
  • OS:none specified
  • Country: Country Flag

With only two options in boot.ini, would it be possible to have grub4dos automatically select and execute the only option besides XP that I need in my menu.lst  - booting of the Win7 disk?

Yes, of course.
Right now you have 5 options in your menu.lst
  • title Grldr Loading BOOTMGR
  • title Grldr loading second disk
  • title Grldr loading second disk and exchange
  • title Grldr loading first part on 2nd disk
  • title Grldr loading first part on 2nd disk and exchange
AFAICT all of them should lead to successfully boot the Windows 7 on the second disk, but you have to check that, then you choose just one, let's say the first one.
You can then have a very simple menu.lst like:

default 0
timeout 1

title Grldr Loading BOOTMGR
find --set-root /bootmgr
chainloader /bootmgr

 
Which should simply boot to the Windows 7, which can be even simplified to:

find --set-root /bootmgr
chainloader /bootmgr

or maybe :unsure: a "boot" command is needed in this last case, i.e.:

find --set-root /bootmgr
chainloader /bootmgr
boot

 
 
And yes, sure, exception made for C: and D: you can use disk manager to change drive letters of all other volumes the way you wish, of course you will need to do it twice, once in XP's Disk Manager and once in t the 7's Disk Manager. (drive letter assignment is stored in the Registry of each OS)
 
jaclaz

Edited by jaclaz, 02 May 2015 - 08:17 AM.


#116
Roffen

Roffen

    Junior

  • Member
  • Pip
  • 60 posts
  • Joined 24-July 12
  • OS:XP Pro x86
  • Country: Country Flag

I got a special problem today. The XP disk(0) has been ok for a long time, but I had to reinstall my Win7 Home Premium on disk(1).

 

Afterwards It all semed to work as before and I was in the proces of reinstalling my usual applications.

 

I had  restarted the system several times and it worked like a charm, but suddenly, after installing ZoneAlarm on the Win7 disk and rebooting, I got this ugly message from disk(0):

 

Loading new partition.

 

Bootsector from C. H. Hochstätter.

 

And that was that, the system was like dead, nothing more happened.

 

The setup I've been using had boot XP as the default option, with grub4dos as the next alternative.

 

Disk(0) has

boot.ini

grldr

IO.sys

menu.lst

MSDOS.SYS

NTDETECT.COM

pagefiel.sys

Windows7.bin

ymjsetup.exe

 

Disk(1) (Win7) C:\ has

autoexec.bat

bootmgr

config.sys

hiberfil.sys

pagefile sys

 

Is there a simple fix for my problem?  I'd hate to have to reinstall  XP, it has been in use for some time so there is much that will need to be installed anew.

 

I could do without WIn7 except there are features of my bank access that will not work under XP.


Edited by Roffen, Today, 10:57 AM.


#117
jaclaz

jaclaz

    The Finder

  • Developer
  • 15,522 posts
  • Joined 23-July 04
  • OS:none specified
  • Country: Country Flag

The:

 

Loading new partition.
Bootsector from C. H. Hochstätter.

 

 

typically comes from a bootsector created (when a particular specific command line is used) by BOOTPART.

Still typically this bootsector is loaded by NTLDR from an entry in BOOT.INI.

What are the current contents of BOOT.INI on your disk 0?

Can you now boot to *something*?

If yes, HOW EXACTLY? (like booting to the Windows 7 changing BIOS drive order)?

 

jaclaz



#118
Roffen

Roffen

    Junior

  • Member
  • Pip
  • 60 posts
  • Joined 24-July 12
  • OS:XP Pro x86
  • Country: Country Flag

All root files in drive 0 have the Archive attribute, and the boot ini cannot be typed, edited, or have it's attribute changed. It seems 'someone' has been creating a mess here Maybe the problem is that I am working from Win7 and have no rights on the drive?

 

Maybe I'll try and see if I can obtain ownership, I can't see how else I can fix it. Or I surrender and install XP from scratch again.

 

I can handle my main 'business' from Win7 for the time being and work on the XP problem when I have time to spare.

 

Seems Win 7 is a strict mistress, there doesn't ssem to be anything I can do to get access.

 

What I will do is to take a XP disk from my old machine and put it in here, boot up and probably get access to the other XP disk and remove the A-ttribute. Maybe removing the Attribute is enough, but I think I will add the SHR attributes.

 

But that's for tomorrow, now it's off to bed.


Edited by Roffen, Today, 03:39 PM.





1 user(s) are reading this topic

1 members, 0 guests, 0 anonymous users


    Roffen