As part of my continuing adventures I'm currently experimenting with iSCSI, in particular installing XP to it using normal text mode setup, using the instructions found here: http://ipxe.org/appn..._direct_install
For context, my install medium is a USB (3) stick with SYSLINUX on it, which chains GRUB4DOS, which loads an ISO with ISOLINUX on it. Bit complicated, but it works. The top level lets me boot different OSes, the second level lets me use GRUB4DOS's drive mapping, and the third level gives me a multiboot XP setup ISO that works when burnt directly to disc.
Anyway, that all works fine.
So, my next experiment is enabling it to install to a iSCSI target. Based upon what I've read I've stuck iPXE on a boot device, and integrated in the required LAN and iSCSI drivers to my setup. I've set up an iSCSI server which works fine from a Linux live install, and the XP setup can see the disk when I boot using iPXe, sanhook the target and then boot through to XP setup.
The problem comes when I try to start the install. Setup seems to install the Windows MBR on my USB stick, not the iSCSI target. If I make that read only, setup fails. If I enable writes then setup continues, formatting the iSCSI target successfully, creating the directory tree and copying files, but not installing any of the boot files, and overwriting the MBR on my USB stick. I've just opened up the VHD and the only things in the root are the Windows directory and the pagefile. No boot.ini, no ntldr, etc., and these aren't on my FAT32 USB stick, either.
I'm going to keep fiddling with this, but I was hoping someone might have some good ideas?