Nov 26-7 2011. Seattle, WA.

I write code and I make presentations. One requires Linux and the other requires something else. I solve this problem by having laptops that dual boot Ubuntu and Windows, which I've been doing for a few years. This will be by 3rd dual-booting laptop. The first was set up for me (mostly). The second (an Asus Eee 1005) I set up myself nearly 2 years ago. I dropped it a few weeks ago and the power cord was forever rendered unfunctional (failure modes like this are common for my laptops, which is why I'm such a fan of cheap netbooks). Don't forget to back up your data! I did and then the dude at Computer Love did a great job of recovering it for me affordably (thanks!).

So now, starting with a fresh Asus Eee 1015PX Netbook, never turned on by me, here's how I set it up to dual boot Ubuntu 10.10 and Windows 7 Ultimate...



1. Backup Windows 7 recovery partition onto a USB stick, "at least 16 GB"... mine claims 16 but is really 14.9 (and it worked). Last time I installed Ubuntu I got away without doing this. After that attempt but before my current one, a friend did not back up Windows 7 and screwed everything up and had to exchange her laptop or something messy. So I'm doing it. I basically followed the Instructions from Asus.
- I went to RadioShack and got a black Friday deal on a 16GB (SanDisk) USB stick. the instructions said at least 16GB, and I only got 16GB, and when it was running it said it was actually only 14.9 GB, but it seems to be working.
- I turned on the computer and pressed F9 once on the initial screen. It was unclear at first whether or not it was doing anything. Windows loaded some files and then a seashell and then it asked me for my language.
- I pressed "backup." It took a long time but it worked.



2. Get latest hardware updates, as suggested by this blog post about setting up Ubuntu/Windows dual boot on Eees.
- Boot into Windows. Booo. It takes a long time too because everything has to set up. The time isn't quite right... I have to remember to download the Windows updates later or I'll get hacked for sure... And then it reboots...
- Go to StartMenu > Asus > AsusUpdate for EeePC > AsusUpdate. Allow it to make changes to the computer. Choose "Update BIOS from the Internet". (Connect to the internet.) Go with defaults and most recent versions. I'm not sure that it did anything or that the versions available were as up to date as mine. I tried.



2. Use GParted live from a USB to partition my hard drive and put it in the proper formats

a. Setting up the USB stick.
- I acquired another USB stick, also SanDisk but only 4GB that I intend to use for both the partitioning and then for installing Ubuntu. I have another computer (a ThinkPad that dual boots Windows XP and some old version of Ubuntu) that I'm using to load everything onto the USB.
- Formatting the USB stick: There are various warnings (e.g. on the Ubuntu installation from USB page) about SanDisk U3 issues. So first I'm going to use GParted to reformat my USB. The GParted instructions say some people only have success with FAT16 (unless they use Grub... I'm too lazy) so the goal is to format it as FAT16. I tried to install GParted on my ThinkPad Ubuntu. sudo apt-get install gparted. But my distro of Ubuntu was too old (9.04, oops), so I couldn't... On to Windows XP. I was going to download/install GParted, but there were only ISO images and I was nervous so instead I used the Windows formatter to put it into FAT32.
- Putting GParted Live on the USB (finally). I'm already in Windows so I'm doing the Tuxboot option... downloaded windows-39.exe version
- I ran Tuxboot, chose GParted Live, stable version, MD5 check, and my USB was the D:\ drive. There were some instructional screenshots here. Then I just sat and waited for a long time... and then it was done.

b. Booting from the USB stick. This might be tricky because of Boot Booster. Here's a post about booting from a USB stick for some other purpose.
- I hit F2 to get to the bios. I didn't do anything there, just hit F10 to save and quit. On the way out I hit ESC a bunch of times to get to the boot menu, where I chose the USB to boot from.

c. Actually partitioning the hard drive.
- I didn't touch /dev/sda1 (main Windows) or /dev/sda4 (Windows boot booster). I deleted the backup Windows partition and the other partition. This article implies that you can leave 3/4 partitions.



3. Set up USB for Ubuntu installation.
a. First I have to reformat my USB (again) to have Ubuntu on it. I followed the instructions from Ubuntu. For USB/Windows.
- download universal USB installer and run it.
- Let it download Ubuntu Netbook Remix .... AT LEAST 10.10! I tried 10.4 (LTS! I hate updating) first but it didn't work at all! no internet connection! suck!!!. 700 MB, takes a while. (I let Windows update on my netbook during this time...it gets to 39/40 updates and then IE9 has a special hidden pop up window and it gets stuck!)
- I told it not to set the Linux distro to be persistent because I don't need to change the settings. I did have it reformat the drive.



4. Install Ubuntu
- I first tried installing 10.4. This did not work. It got all the way set up, but never recognized the internet. Only then did I search online and find that 10.10 and above work out of the box on the 1015PX, and Asus has essentially no drivers for Linux on their website so 10.4 is hopeless. so then i started again with the USB Ubuntu with 10.10.
- Make sure you're connected to wired internet. That driver works automatically and wireless does not.
- The second time around, the only tricky part (in 10.10, not 10.4!) was setting up the partitions. I chose "install alongside other distributions", but then I had to use the advanced tool because I'd already put 10.4 on one of the partitions. I bet if you had just left it as free space you could let Ubuntu figure itself out.
- /dev/sda1 is the Windows drive, so leave that alone. Mine is about 100 GB (I have a 250 GB hard drive). Windows also has a partition to accelerate booting of "unknown" format that isn't very big (it's at the end of the drive) that I left alone. As I mentioned above, I already deleted the Windows backup partition (15 GB) after backing it up onto a USB (and then trashing that version of Windows 7 starter anyway). So that left me with about 150 GB of free space for Linux. My first Linux setup made a 3GB swap partition, so I left that. It needs to be 2x the size of your RAM. Mine is at the end too which I think is good. Now it's tricky... with only 1 hard drive, you are only allowed 4 partitions (for archaic historical Windows reasons). So now you only get one more primary partition, and the rest have to be logical (Ubuntu actually didn't give me a choice between primary and logical after the first). I put, in this order, all in ext4: 1000 MB for /boot, 5000 MB for / (the root, with Ubuntu on it, I hear you only need about 3000 MB), and then the rest for /home. I made use of the instructions here for information.
- Set it to run.
- Once Linux was up and running and restarted, it prompted me to install the wifi driver (because it's proprietary).



5. Upgrade Windows 7 from starter to ultimate because it's free for students at my school and find that it looks terrible and also doesn't connect to the internet. I solved this by going to the Asus website and downloaded all the drivers and updates i could get my hands on (from another computer that was connected to the internet) . Top priority was getting internet (LAN and wireless) working. Then fixing the screen resolution (this was one of the graphics drivers, don't remember which). I installed most of the other ones, though not Express Gate Cloud OS (as intriguing as that sounds). note, this took a really long time of me downloading and clicking OK and restarting and choosing Windows (not Linux).



And voila, after only one whole day (of mostly sitting around frantically working) and then 12-4 AM of downloading, transferring, and clicking, I have a fantastic new laptop! Now, in Ubuntu, memorize this command: sudo mount -t ntfs /dev/sda1 /mnt (only when Windows is completely off, not hibernating), and you win



UPDATE (10/14/2011) I also ordered a RAM upgrade to 2 GB. Here are the steps:
- Take out the battery. Then hold down the power button. This discharges the power in the laptop (according to this video from Crucial).
- There is a door. Pop open the little button, I used the flat side of a screwdriver (purchased specifically for this installation for $8.50 at Hardwick's). There is a phillips head screw under that. Loosen it, then pull off the door. From here on I used a different video that is specific to the 1015px.
- Pull the two plastic tabs outwards. The RAM card pops up to 45 degrees. Take it out.
- Put in the new one. Same way the old one came out (45 degrees). Put everything back.
- Check and make sure both of your OSs recognize it. In Windows 7 go to Control Panel > System and maintenance > System. In Ubuntu go to Applications > System Monitor > Resource tab.



UPDATE (12/2/2011): Windows is crashing quite frequently (I was using a lot of PowerPoint and Firefox.). I think one of the drivers I haphazardly installed was not approrpriate. I am now tinkering with them...

UPDATE (12/10/2011): Linux crashed twice, the same way as Windows. This has convinced me it's a hardware issue, so I'm exchanging for a new laptop. Amazon makes it easy! Man, am I glad I wrote down how to set up the dual boot.



UPDATE (12/12/2011): 2 GB RAM upgrades are only $11! Done! So for the re-install...

1. I started directly with the Ubuntu (10.10!) installation USB. I used this to redo the partitions on the hard drive. I discovered that the order matters.
- First I deleted all the Windows partitions but sda1 (because on the last one, turns out the reinstall of windows wouldn't use the boot booster anyway).
- Second I added the swap partition. It's primary and I put it at the end. I put 4100 MB because there are 2 GB of RAM (4096 MB + a little)
- Third I added the /boot mount point, logical ext4 with 1000 MB of space at the beginning.
- Fourth I added the root (/) mount point, logical ext4 with 10 000 MB of space at the beginning.
- Last I added the /home mount point, primary ext4 with the rest of the space.

2. Let the Ubuntu installation go.

3. Reinstall Windows 7 Ultimate: Change the USB to Windows. Install it from the USB... note that I should have backed up the Windows version the computer came with since I'm returning the old one.

4. Install drivers: Once Windows is running, the screen resolution is wrong and the internet doesn't work. Get ONLY the Wifi driver (AZ_BR...) and the Intel/VGA Pineview driver to fix the screen resolution (keep the rest of the drivers around for when I decide I need them).

5. Fix GRUB and booting: Installing Windows after Ubuntu overwrites the Master Boot Record (MBR). I put Ubuntu back on the USB, booted from it (just the try ubuntu one) and ran Boot-repair to fix it. AND IT WORKS!!!




UPDATE (10/16/2012) My car got prowled, laptop stolen. Now I have a brand new Eee 1025C-MU17. Apparently in the last year Asus has started soldering the RAM to the motherboard, so now I'm stuck with 1 GB. :( Here's how it's happening this time around.

1. Last night (in preparation for the arrival of my laptop) I dug out my 16 GB jump drive for backing up Windows. I couldn't find the 4 GB one I used before, so I grabbed a 2 GB one. I downloaded Ubuntu Desktop 12.04 (Netbook Remix has been discontinued) and used Tuxboot to load it onto my 2 GB USB.
2. I received my laptop. I let Windows 7 starter set itself up first. Then I restarted and hit F9 on the Asus screen at boot (after a few tries) and backed up the Windows. Note, this time I'm not going to bother upgrading to Windows 7 pro, even though it's free through school. I'm not convinced that it gave me any benefit, it was a huge pain to get the drivers right, and maybe Starter will be easier on my 1 GB of RAM. I tried and failed to update the BIOS.
3. Next I'll use my Ubuntu jumpdrive to repartition my hard drive and install Ubuntu.
-I hit some combination of F2 and ESC to boot from my USB (as per this).
-I set up the partitions almost exactly like I did on 12/12 of last year.
-I didn't have to fix the resolution like this person did. Instead I just allowed the update of Cedarview drivers.
4. GRUB worked as it is supposed to without changing anything else. Yay!
5. I decided I want to backup my computer to the internet at all times. I'm going to try out Crash Plan as suggested by lifehacker for this. You can back up one computer for cheaper than multiple, so I think I'll back up my Ubuntu OS and the relevant parts of Windows by automounting it.
6. Then I will install Matlab, MS Office, and something so that I can comment on PDFs. I'll restore my svn working directories and get straight back to work...