"So having said that, I'd like to ask: _why_ do you want the drive numbers 
numbered in this way?"

รจ I have some unattended programs that capture and deploy OS images. The user 
may boot a system from a CDROM/USB Drive and do the capturing. Meanwhile, the 
deployment occurs from an iSCSI Windows image, which currently changes the 
numbering of the internal hard drives and this causes the captured images to be 
deployed to the wrong drives. I can make the deployment program aware of the 
iSCSI drive but I'm looking for a more thorough solution.

 

Could you please explain for me the relationship between gPXE iSCSI boot and 
Windows iSCSI Initiator? When does gPXE end and Windows iSCSI Initiator pick up?

 

Thanks

Binh Kien Thai



 

From: Shao Miller [mailto:[email protected]] 
Sent: Tuesday, January 18, 2011 12:00 PM
To: Binh Thai
Cc: [email protected]
Subject: [SPAM] - Re: [gPXE] Change drive number of the iscsi boot drive? - 
Email found in subject

 

On 1/18/2011 11:42, Binh Thai wrote: 

Hi Shao,
 
Thanks for your reply.
 
I forgot to mention that I meant "drive 0" in the context of Windows disk drive 
numbering.


Oh, ok.




My goal is to boot a system from an iscsi target without disrupting the disk 
drive numbers of the internal hard drives. For example, if I have one internal 
hard drive, I want to see it detected as Disk 0 whether I boot from it or from 
the iscsi target. If I boot from the iSCSI target, I want to see the iscsi 
target as drive 1, not 0. Currently, the iSCSI drive would become Disk 0 and 
push the internal drive to Disk 1.
 
I think the PnP enumeration process in Windows has some relationship with the 
BIOS drive numbering. Could you please point me to some in-depth documentation 
regarding the BIOS drive numbering and how int13 is used?


I do not believe that BIOS drive numbers and Windows drive numbers have any 
correlation.  Use Microsoft's SysInternals' LoadOrd.exe to check your driver 
load order.  If you ensure that the drivers responsible for the internal 
storage adapters are loaded before the iSCSI driver, then I think your odds are 
better for the iSCSI HDD getting a higher number than the internal HDD(s).

However, it might be the case that the startup protocol hands an MBR signature 
from boot-up to the drive number assignment routine; in this case, whatever 
drive is used for booting (your iSCSI HDD) will be drive 0 no matter what.  You 
can use Microsoft's SysInternals' WinObj.exe to check the mapping of the ARC 
names (\ArcName\) to the drive numbers (\Device\HarddiskX).

I can only think of a convoluted way to push the boot drive up and away from 
Windows drive number 0:
- Boot the iSCSI drive
- Have GRUB4DOS on the drive
- Have GRUB4DOS remap the drive number from 0x80 to 0x81
- Chain-load the Windows boot-loader
- Have BOOT.INI/BCD attempt to boot multi(0)disk(0)rdisk(1)partition(1) instead 
of rdisk(0) (0x81 instead of 0x80)
- If the iSCSI drive is \Device\Harddisk1 then hopefully Windows would also 
further connect it as multi(0)disk(0)rdisk(1).  ARC _and_ HDD numbers would 
then be 1 instead of 0.  (Untested.)

So having said that, I'd like to ask: _why_ do you want the drive numbers 
numbered in this way?

- Shao Miller

_______________________________________________
gPXE mailing list
[email protected]
http://etherboot.org/mailman/listinfo/gpxe

Reply via email to