Archive for July 2010

I wanted to install Windows 7 on my netbook, but I didn’t have access to a Windows environment from which I could run bootsect.exe or install Grub4Dos; so I figured I’d install Grub2 on my USB disk using Ubuntu, have Grub2 chainload Grub4Dos, and finally let Grub4Dos chainload the Windows installer. This worked for me:

  1. Prepare a fresh NTFS partition on the USB disk /dev/sdX and mount it at /mntX1, then copy all files from the Windows installer disc or image into /mntX1
  2. Install Grub2:
    cd /mntX1; sudo grub-install --no-floppy --root-directory=/mntX1 /dev/sdX; sync
  3. Download the latest Grub4Dos, and unpack grub.exe into /mntX1
  4. Create /mntX1/boot/grub/grub.cfg:
    set timeout=0
    set default=0
    menuentry “Install Windows” {
         linux16 /grub.exe --config-file=”root (hd0,0); chainloader (hd0,0)/bootmgr”
    }

I was surprised that such a complicated setup actually worked. Be sure to substitute your own values for /mntX1 and /dev/sdX. In the Grub4Dos config, (hd0,0) refers to the first partition on the boot disk; you’d need to change that if you want to boot the installer from a different partition.

So you want to experiment with the Chameleon boot manager, but you don’t have a Mac or Windows environment handy? Here’s how you could prepare a Chameleon-bootable USB key (or any other kind of disk, for that matter). Be warned that the following procedure would overwrite the target disk’s MBR, effectively wiping all data on said disk. Make sure that you do not target the wrong disk. Naturally, what you do with this information is your responsibility ;)

  1. Install hfsprogs (available in the Ubuntu repositories, if you use Ubuntu).
  2. Get the Chameleon binary package from <http://chameleon.osx86.hu/> and untar it, then navigate to the i386 directory in your terminal.
  3. Type `sudo dd if=boot0 of=/dev/sdX`, where /dev/sdX is the target disk; this is the step that cleans up the disk and loads a fresh MBR containing the stage-0 boot code.
  4. Make a new HFS+ partition (type AF) using fdisk. Let me know if you need help with this.
  5. Format the partition by doing `sudo mkfs.hfsplus /dev/sdX1`.
  6. Type `sudo dd if=boot1h of=/dev/sdX1` to install the stage-1 boot code to the bootsector of the new HFS+ partition.
  7. Now, type `sudo mount /dev/sdX1 /mnt` to mount the partition, where /mnt is your mount point of choice.
  8. Type `sudo cp boot /mnt/` to copy the final piece of Chameleon over.
  9. Unmount the partition using `sudo umount /dev/sdX1`.

Now you should have a shiny new Chameleon boot disk. I hope this helps.

A bunch of people and I were filing into an elevator at the end of the day when I heard one of them ask, “Have you seen True Blood?” “No,” said his companion.

Dude: Well in True Blood there’s this girl who has to cut up a body and get rid of it.
Companion: Okay.
Dude: Last night I dreamed that I had a backpack full of body parts.
Companion: It happens. Last night I dreamed that I killed someone.
Dude: I was all like, “ugh, all these legs and stuff, what do I do with them before someone catches me?”

While we were eying them in silence, somebody said, “Last night I made a baby.” “Why, congratulations!” was the consensus. He clarified, “No, I mean I got someone pregnant and then two hours later I had a baby. I thought, ‘whoa, what an improvement!'”

I hope it was just a case of pre-thesis-defense jitters.