Sunday, March 27, 2011

EeePC Recovery without the Recovery Partition and an Unbootable Recovery Image

Recently, I had an awkward circumstance whereby I ended up with a mangled partition table on my 1015PD and I somehow had a corrupt backup ISO that was unbootable (partition recovery utilities would not work due to the severity of the problem). Obviously, I tried the usual such as attempting to make it bootable again using BCDEasy, ImgBurn, CDBurnerXP to boot into the required recovery environment (WIM file). However, these attempts usually ended 'unusually' with the recovery process starting but then dropping out after commencing the 'Initialization' process which led to my partition table being mangled (Note that BCDEasy is a fantastic once you've discovered that you need to play around with long strings which are used to identify hard drive partitions).

I tried manually created a partitioning layout (based on research of what it should look like on the Internet), extraction of the relevant WIM (asus?.wim), and manually re-creating the recovery partition but as you'll note in the following you'll see that cylinders overlap one another which fdisk doesn't seem to allow. My setup was virtually identical apart from the the lack of overlap. I noticed that even if I was able to install this would lead to a boot 'stall' (blinking cursor in top left corner) when I attempted to install ExpressGate, and/or if I pressed the F9 button it would somehow end up toggling the 'Bootable' Flag on the the C:\ to another drive which meant that drive ordering would change such that the D:\ would now be the C:\ which meant that boot would fail if you had nothing installed there, which hence meant a reboot with GParted and switching the 'Bootable' flag back to the relevant partition and more experimentation.

I discovered that using a combination of optical drives containing ImageX, BOOT folder of the Windows hard drive as well as BOOTMGR file in combination with a Windows 7 Startup Repair Disk I could get things going again but it was a dirty method and involved too much manual work for me should I have other problems down the line. I could have written a BAT file to complete the job but I soon recalled that I had a spare 1005P Recovery Disk ISO around and took a closer look. I extracted it using WinRAR and extracted the WIM files for examination using ImageX, GImageX, and later on 7Zip (note that you'll soon discover that free tools may be easier to use than Windows AIK). I noted that basically, ASUS.wim was the file being installed/extracted and the WIM files in the SOURCES directory were there to create a recovery environment as is the case with a Windows 7 Startup Disk and/or something similar to BartPE.

Based on content on RCDWIM.BAT it seemed as though it were a generic file that would if required extract several WIM files (naming convention would be asus.wim, asus2.wim, asus3.wim, etc...) to the hard drive. It would then attempt to run a batch file that would then install drivers and other utilities (based on the contents of PERecover.exe the naming convention seems to be $V_[MODEL_NAME].bat, $7_[MODEL_NAME].bat, $[MODEL_NAME].bat with the fall back being Recovery.bat). However, since this was not really required if we were using an updated WIM with drivers/utilities included I didn't investigated this too deeply.

The contents of the Driver/Software directories are obvious, just download updates from the ASUS website if desired and extract them into the relevant directories. It seems as though BIN/AsusIntAll/InstAll.exe in combination with BIN/ASSETUP.EXE file seems to iterate through both directories in order to calculate which pieces of software are up to date (when compared to the base system by using ASSETUP.EXE as well as its corresponding configuration file ASSETUP.ini) and this is used to determine which pieces of software should be updated/installed. EG directory was obviously for ExpressGate. However, due to time limitations I didn't really investigate how this fitted in with regards to the batch file. My guess is that it is looking for a BAT file inside the BIN folder that corresponds to the model number of the netbook in question. However, while I tried 1015P, 1015PD it didn't seem to register this. We'll leave it for a later time to investigate further. However, like I said, extract ExpressGate into the required directory and run the correct executable and everything (including ExpresssGate) should work. Thereafter, you may consider Ghost (included on the disk funnily enough) and or other imaging tools mentioned on this blog and on other websites.Note that both Seagate and Western Digital supply free versions of Acronis to users of their drives.

Another option is using, BartPE, nLite, and vLite to create a standard bootable disk with elements of the standard ASUS image slipstreamed into the final image. Obviously, some research and analysis needed to be done in order to complete this project and you may be interested in the following links. Note that should you attempt to make the image bootable you'll need to extract a boot image from the original 1005P ISO and that the first 8 sectors are what are required in order to boot into the WinPE environment. This may change depending on the disk you use to create your image. Note that VirtualBox is useful for testing out whether your disk is bootable.

YouTube News Downloader Script, Music Composition for Lazy IT People, and More

YouTube News Downloader: - if you're on a Not Really Broadband Network (NRBN) you somehow need to deal with networking/buffering issu...