EeePC Xandros Restore: Superbly Frustrating

I have already restored the operating system on my EeePC 701 (Surf 2G) internal SSD before, but I used the restore DVD with an external DVD drive.  I am away from home for the weekend, and I wanted to try fixing this (since I finally installed Eeedora on a SanDisk ExtremeIII 8GB SD card) with only a USB key.  I do hate Xandros a great deal, but I want to reinstall the standard configuration just in case something goes wrong an a better distro, any distro, fails.  Instead of fumbling around with reformatting a flash key and configuring the restore image with Winblows, I just installed Wubi.

I said something about the raw power of Linux in the terminal.  I spoke too soon when dealing with Xubuntu.  It might lack the shinier wrapper of GNOME (let’s not start bashing KDE, it is late), but command line tools are not its strong suit.  I tried searching for a quick and dirty alternative to the livecd-iso-to-disk script I have grown to love on Fedora.  I was sick of looking for something without a GUI, so I just used usb-creator.  To be honest, I tried.

First, I downloaded the restore DVD image, which took a long time to find.  Ironically enough, you can find it here on SourceForge.  You can also just do this if you have wget, which you should.

wget http://voxel.dl.sourceforge.net/sourceforge/eeecommunity/L701_EN_1.0.6.6.iso

Keep in mind the name might change once a newer DVD restore image comes out.  Considering how crappy Xandros is, and that the image is over a year old as of the date of this post, I would not expect any bleeding edge updates.  Then, I tried usb-creator.  Boy, how much fun it was.  If anyone else considered this method, they found a cute error that killed their dreams quickly.

Another fun, yet ironic, moment in the *nix universe.

Another fun, yet ironic, moment in the *nix universe.

So, I quickly crossed that method of the list.  Then I tried the other GUI alternative I though would work, UNetbootin.  I thought that worked, because it did everything it intended to do.  The problem was that it never removed all the Eeedora live install files and configuration.  So, it did seemingly little good.  This was before I RTFM, another priceless revelation, revealed for the hundredth time.

So, I finally went to the EeePC wiki and read the article on making a restore usb from the DVD image.  Now I saw the whining about the capacity of the flash drive needed was two gigs at minimum, but that does not seem to be what caused the errors later on.  The Gizmo! Overdrive did perfectly well with only 1GB.  The internal SSD on the Surf 2G was not so cooperative.  The instructions left a little bit to the imagination, so I will be explicit (assuming your usb disk is on the /dev/sdb device node):

wget http://voxel.dl.sourceforge.net/sourceforge/eeecommunity/L701_EN_1.0.6.6.iso # if you did not already

sudo umount /dev/sdb* # unmount all the usb partitions

sudo /sbin/fdisk /dev/sdb # please make sure this is the right node, do not wipe your main disk and bork your computer

Command (m for help): d # delete the partition, may have to do this for each partition on the usb

Command (m for help): n # create a new partition

Command action

e     extended

p     primary partition (1-4)

p

Partition number (1-4): 1

Command (m for help): t

Selected partition 1

Hex code (type L to list codes): 6 # set partition type to FAT16

Command (m for help): a # make the parition bootable

Paritition number (1-4): 1

Command (m for help): w # write all the changes to disk

Command (m for help): q # and finally quit

sudo /sbin/mkfs.vfat -F 16 -n eeepc -v /dev/sdb1 # make a FAT16 partition on the /dev/sdb1 node with the name eeepc

sudo mkdir /media/iso # make a directory for the loopback iso mount

sudo mount -o loop /path/to/iso/L701_EN_1.0.6.6.iso /media/iso # loopback mount the DVD image

cp /media/iso/boot/usb.img.gz ~/ # copy the bootloader for the usb drive

cd ~/; gunzip usb.img.gz # unzip the bootloader

sudo dd if=usb.img of=/dev/sdb # write the bootloader to the usb device, NOT the 1st partition

sudo cp -v P701L.gz 2007.10.07_04.33.bld blockcount.dat user_start.dat /media/EEEPC # ver.tag, mentioned in the docs, is not there; does not seem to matter; booted anyway

sudo umount /dev/sdb*; sudo umount /media/iso # and your done!

So, after all this, the flash booted.  I even gave it the final blessing and told it to reinstall Xandros, despite the strong protests by my inner child.  Fortunately, I received the final errors upon completion:

Trying disk sdb. . .

Trying disk sdc. . .

Found EEEPC image on Gizmo! overdrive [/dev/sdc]. . .

Ready to image Eee PC using build 2008.03.04_22.42.

Enter “yes” to continue, anything else to reboot.

yes

Installing from USB image (Estimated time required 5 minutes).

Expect to write 75305 records of 32k. . .

dd: /dev/sda: No space left on device

Done. . . Creating user partition. . .

Done. . . Formatting user partition. . .

mount: Mounting proc on /mnt/proc failed: Not a directory

mke2fs 1.40-WIP (14-Nov-2006)

Could not stat /dev/sda2 — Permission denied

tune2fs: Permission denied while trying to open /dev/sda2

Couldn’t find valid superblock.

mkfs.vfat 2.11 (12 March 2005)

/dev/sda3: Permission denied

umount: Couldn’t umount /mnt/proc: Invalid argument

Ready. . . Press ENTER to reboot

Requesting system reboot. . .

And the best part, after all this, is the super descriptive error that ensued when the post-install boot completed.

Error 17

Well, it looks like I am waiting to get the DVD when I go home.  God damn the idiot Asus engineers!  I install Wubi in seconds, and they cannot even make a decent install disk with any useful tools to fix their wonderful error messages.  It more or less means, according to these results, that I am screwed.

And thus concludes another rant.  Enjoy your day!


About this entry