Booting a Linux SD card from Windows Vista

From LSDevLinux
Jump to: navigation, search

This page is largely obsolete. With regard to Balsa, this is now handled by scripts in the Balsa set up. You can read about it at Overview of Balsa on a Windows Host

We (LSDev) have set up this process to allow a Windows 7 or Vista based computer to dual boot into Windows or Linux. This process enables the computer to boot from an SD card (or USB stick, CD, etc.), even if the computer is not normally capable of booting from that device.

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).

Get the Files Needed

The files needed to set up Balsa on a Windows system are available in a .zip file. You can download it from the link on this page.

If you have a running Balsa system, this file is also available at /usr/share/balsa/grub-install-Windows.zip. (It's not on a Jaunty alpha build, but will be on the Lucid build)

It is also available on the Windows BALSAHIDDEN partition of a Balsa SD card.

Back Up Your Windows Data

You will be modifying the Windows Boot system on the machine, which can be dangerous if it goes wrong. Back up the data on your Windows machine before you proceed.

Installing Balsa

All you have to do to install Balsa is to unzip the file and right-click on the file named install-grub.bat. Choose the "Run as Administrator" option.

When you reboot the system, it will display a menu with two items, one for Balsa, one for Windows.

Configuring Machines

Some systems may need additional configuration. Here are solutions to some configuration problems.

Changing the BALSAFILES location

You may not be happy with where Balsa places the user files. You can change where it will place these files. In the C:\menu.lst file you will see a line that says:

kernel /BalsaBoot/vmlinuz-2.6.28-19-generic root=LABEL=BalsaRoot

add BALSAFILES=device to the end of the line.

device will be something like /dev/sda2 or /dev/sdb1. These are the names that Linux assigns to various partitions on your disk(s). You can find out the names for the disk partitions on your system by using Disk Utility (gnome-disk-utility) or gparted on a Ubuntu system.

The end result should look something like this:

kernel /BalsaBoot/vmlinuz-2.6.28-19-generic root=LABEL=BalsaRoot BALSAFILES=/dev/sda2

Screen Brightness on Some ASUS Eee PC Machines

Some Asus machines (1001P and others??), have a problem with the screen brightness. This can be corrected by using the Asus Update program under Windows to download the latest BIOS from the Internet and flash the BIOS. If for some reason that is not possible, you can copy the file eeepc1005-menu.lst to C:\menu.lst. This will correct the problem.

Configuring a Generic Linux SD card

The directions on this page are mostly directed at Balsa SD cards, but you can change the configuration to boot some other Linux SD card. In the C:\menu.lst file you will see a line that says:

kernel /BalsaBoot/vmlinuz-2.6.28-19-generic root=LABEL=BalsaRoot

change root=LABEL=BalsaRoot to root=LABEL=whatever_your_SD_Card_is_called.

You may also want to change C:\BalsaBoot (which contains the Linux boot files) to another directory. The C:\menu.lst refers to that directory as /BalsaBoot. Change the references in C:\menu.lst to whatever dirctory you use. Don't use a directory name with spaces in it.