Booting a Linux SD card from Windows XP

From LSDevLinux
Revision as of 10:16, 25 August 2009 by Andy (talk | contribs)

Jump to: navigation, search

We (LSDev) have used this process to make a Windows based eee dual boot into Windows or Linux. This process does not require alteration of the MBR (most dual boot processes require MBR alteration, which can render the computer unusable if done badly).

These instructions were compiled using Windows XP and Ubuntu Linux.

Install GRUB4DOS

  • Download GRUB4DOS.
    • Look for the at the bottom of the page (the exact number may have changed since this was written).
  • Copy the grldr file from the downloaded zip file into your C: drive.
  • Right-click on 'My Computer' in the start menu, then 'Properties'
  • Click 'Advanced' and the 'Settings' button under 'Startup and Recovery'
  • Click 'Edit'
  • Add the following line to the end of the file
  • Save the file, and close Notepad.

Install Linux start up files

  • Make a folder called MyLinux (or whatever you like) in C:
  • Copy a kernel and an initial ramdisk into this folder
    • You can use just about any generic kernel and initial ramdisk. Copy them from /boot in your linux distribution. The files will be called something like vmlinuz... (the kernel) and initrd... (the initial ramdisk). On Ubuntu Jaunty for example, you have:

Tie them both together

  • Open notepad.
  • Paste in the text below, replacing the text in <angle brackets>:
root (hd0,0)
kernel /<MyLinux>/<kernel file name> root=LABEL=<Your SD card label>
initrd /<MyLinux>/<initrd file name>

The SD card label is the name of the partition on which your linux is installed.

  • Save, choose 'All Files' as the type, and 'C:\menu.lst' as the name.

To do

This article needs updating with instructions on how to use kexec to switch to the kernel from the installed Linux distribution.