Installing Windows 7 Without a DVD Drive
We have an old Dell PowerEdge 2650 that has been sitting unused and now needs to be setup as a FileMaker server. We couldn't find a Windows Server edition that was 32 bit, but FileMaker will work fine with Windows 7, so we ordered Windows 7 Professional 32 bit.
The 2650 does not have a DVD drive, but no problem, we have an external USB powered DVD drive. Unfortunately the 2650 has no USB boot options.
A few weeks ago I needed to install Windows 7 Ultimate on a VMWare instance and it turned out the DVD I had was not bootable. I spent some time and managed to make a PXE bootable Windows 7 which boots up to a command prompt running in a window. On the VMWare install I was then able to make it use the real DVD to do the install.
Unfortunately, the PXE bootable Win7 has no drivers for the USB so it doesn't see the external DVD drive. It also doesn't have drivers for the Adaptec SCSI controller in the 2650, so I couldn't even have it format the disks.
Next idea: Boot over PXE into NetbootCD, choose an Ubuntu install and let it get far enough to load the drivers. I was able to get as far as getting into the shell and partitioning the disk, but there was no tool for formatting the HD as NTFS, and as it turns out, the 2650 doesn't like the USB DVD drive anyway.
Right now I'm thinking maybe I can try booting a Knoppix disk or one of those Linux emergency distros for doing a recovery of your Windows computer, copy the DVD over the network onto the C: drive, and then install from there. I'm not exactly sure how I'll boot into Windows 7 though and run the Setup.exe...
I also found this comment which talks about making a Windows 7 recovery CD. I'll see if I can get the Ultimate VMWare computer to do it.
Update May 18, 2012:
The recovery CD got stalled because VMWare doesn't have a way to emulate burning a CD. I had no luck trying to get the pass through USB stuff to work when I did the install (which is why I setup the PXE Win7 boot) and I decided to put off trying to get it to work for burning a CD.
Opened up the cover to see if there was an IDE connector inside. Sure enough, there was! But it was a laptop size IDE connector. No problem, I've got a laptop drive I can shove on there. Unfortunately, there's another connector right next to it that won't let the laptop drive fit. I guess there's some cable you need which I don't have.
Next idea was to pull the HD and see if I could hook them up to another computer. The drives are mounted in little caddies but they use standard SCA connectors. After a quick dig through a junk box I was able to find a SCSI card, a 68 pin ribbon cable, and a 68 pin to SCA adapter. I hooked everything up to a Linux box and created and formatted the NTFS partition and copied the contents of the DVD to a "win7" folder. At this stage I'm still not sure how I'm going to get it to boot since I haven't setup the boot sector.
I put the drive back in the 2650 and let it boot up and I guess there was still a boot sector on it (even though there were no partitions) because I got a "BOOTMGR is missing" message. Interesting! I popped in a Knoppix disk and copied the BOOTMGR and BOOT folders to C:\ and rebooted. Now it actually boots even though it gives me an error message. Progress!
I'm stuck now until Monday when I can get back in and work on it some more. I tried to use the DRAC to access it remotely and I can get as far as getting the Java console redirect to open a window but nothing more happens. I don't know if it doesn't work because I'm not using IE or if it doesn't work because it only works with an ancient version of Java or what. There's also an IP enabled Belkin KVM, but it also doesn't work at all. Typical KVM.
Update May 20, 2012:
I was able to get the DRAC working through IE8 and IE9, with the latest Oracle Java (7 something). Well, mostly working. The text console redirection works, although it's very slow to respond to key presses. But the GUI console part doesn't work. Apparently there's some other problem with their Java applet. Supposedly it uses VNC but I can't get a standard VNC client to connect, even though I can see the DRAC is listening on port 5900. I saw somewhere that they added an SSL layer onto their VNC but so far I haven't found any details.
Update May 21, 2012: SUCCESS!
I spent most of yesterday fighting with getting IE6 running on a VM. Everytime I had it working, something would change and it would stop going to SSL sites which meant I couldn't use it for the KVM or the DRAC. After wiping and reinstalling several times, getting a VHD from Microsoft with IE6 pre-installed, I finally discovered that it was my profile that was causing IE6 to go wacky. I deleted my profile from the server and the VM to clear out my messed up registry, and presto, it worked. I was finally able to connect to the KVM and get into the GUI.
The problem after booting the WinPE was that it refused to see the HD. After lots of googling trying to figure out how to add drivers to the WinPE image I finally found the secret incantation. It actually wasn't too bad, the real trick was figuring out what to download from Dell. Even with the service tag entered on their site, they give you back an abundance of "things" that may or may not be the driver you're looking for. When I tried the first SCSI driver I downloaded it didn't work so I spent a long time trying to figure out how to convince the WinPE to load the driver. I then decided to try a different driver from Dell, and sure enough, it worked right away.
In case you're wondering, this is the driver you need for the Adaptec AIC-7899 (even though it says firmware):
39160 SCSI Controller - Firmware
39160 SCSI - Family Manager Set
After extracting the driver from the .exe, all I had to do to add it to the WIM was point the dism command to the .inf and it took care of the rest.
dism /mount-wim /wimfile:winpe.wim /index:1 /mountdir:mount dism /image:mount /add-driver /driver:c:\dell\drivers\r155692\adpu160n.inf dism /unmount-wim /mountdir:mount /commit
I put the modified WIM file back on the server, booted it, and it this time when I tried to go to the C: drive it didn't tell me it didn't exist. I was then able to run the Win7 setup. Success!
I learned a lot about WinPE during this whole thing. The next time I have to do this I can skip a lot of steps of having to mess with Linux or pull the drive. I should be able to just add the disk controller and network drivers - and if necessary the USB drivers - to the WinPE image and boot that and do the install. Now I'm wondering if it's possible to PXE boot WinPE and run Chrome...