The other day I had to extend the C partition on a server.
Microsoft has a command for this, it’s part of DISKPART.EXE
Unfortunately, the needed subcommand is “EXTEND” -which fails on the Boot parition (aka drive C)
Fortunately, there’s an easy way around this – boot from a winPE CD, and the CD becomes the Boot Partition, freeing the C drive for the extend operation to work it’s magic.
Making a WinPE disk isn’t hard, but it’s not as easy as downloading and burning an iso either. In total, there’s 8 commands I needed to enter to make my custom WinPE iso.
WinPE is a ‘PreInstallationEnvironment’ – whatever that means! To me, it’s a bootable CD, that brings up a windows command prompt. I’ve used one in the past to get files off a retired server that I no longer had access to the password for – boot from winpe, copy the files to a usbkey, done.
Where do you get it?
If you have access to technet or MSDN, you can download something called the windows Automated Installation Kit (Windows AIK) This is filed away with different versions of Windows, it’s not under a menu like tools, or applications, I found it mixed in with Windows 7 as well as 2008R2. Both locations list the same ISO for download.
Unfortunately, the iso you get from technet is the AIK Iso, not the ISO of the WinPE CD you want to burn. You have to first download the AIK then follow the steps below to construct a WINPE iso customized with the drivers you need for your raid card.
Download the AIK
While you’re waiting for the AIK to download, you’ll also need drivers for your raid card. You’ll need both the driver (usually a .sys file) and a .INF file. In my case, I looked at device manager to see what driver (.sys file) was in use by the raid card, then I went to HP’s website and downloaded a driver set, extracted it and confirmed that the .sys file I needed was there – there was a .inf with the same name, so I figured I was in business….
(back in a few, waiting for this to download…)
Burn the ISO of the AIK to a DVD (or extract the iso to your hard drive)
Run the Windows AIK Setup (there’s a link to it on the autorun that pops up)
Once thats done you’ll have a new folder in your start menu ‘Windows AIK’ open that folder.
Have a look at the Windows PE manual under documents.
The section I used was ‘Customizing Windows PE’->’Windows PE Walkthroughs’->’Walkthrough: Create a Bootable Windows PE RAM Disk on CD-ROM’
What this does is help make you a bootable CD that will load itself into Ram – you’ll know its running in ram, because the command prompt points to drive X: which is the ram disk.
Before you get started with the above walkthrough, have a look at one more section:
‘Customizing Windows PE’->’Windows PE Customizations How-To Topics’->’Add a Device Driver to an Offline Windows PE Image’
ok what does that mean? well there’s another help option for ‘online’. What’s the difference? Well ‘Online’ means you’ve already booted from the CD, we are still building our CD so we want to use the advice for the ‘offline’ that way, once our CD is done, we won’t need to do anything else to use the driver.
Ok now if you’re clever, you’ve read both sections and have noticed theres something a bit off in trying to merge the two sections – the instructions in the walkthrough tell you to copy winpe.wm to \iso\sources\boot.wim,
but then in the driver section, they tell you to open the winpe.wim to change it. I did so, then when I was done, I just recopied the file to the boot.wim…
Here’s the list of steps I followed:
- started deployment tools command prompt as administrator
- ran copype.cmd x86 c:\winpe_x86
- Dism /Mount-WIM /WimFile:c:\winpe_x86\winpe.wim /index:1 /MountDir:c:\winpe_x86\mount
- Dism /image:<path_to_image> /Add-Driver /Driver:(Here I put the folder path to the folder with the .inf and .sys files) /recurse
(the /recurse causes all the drivers in that folder to be added)
- dism /unmount-wim /Mountdir:c:\winpe_x86\mount /commit
At this point, we’ve altered the winpe.wim (which is basicallly a fancy .iso file)
- copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim
- oscdimg -n -bC:\winpe_x86\etfsboot.com C:\winpe_x86\ISO C:\winpe_x86\winpe_x86.iso
(this created an actual .iso you can burn with your burning software)
- Burn the .iso to CD. I used the free & excellent ImgBurn
8 relatively simple steps and you’ll have a bootable Windows PE CD with the Raid drivers of your choosing!