[gPXE] Change drive number of the iscsi boot drive?
Shao Miller
Shao.Miller at yrdsb.edu.on.ca
Tue Jan 18 12:00:23 EST 2011
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://etherboot.org/pipermail/gpxe/attachments/20110118/c686c87c/attachment.html
More information about the gPXE
mailing list