|
9#

楼主 |
发表于 2010-10-29 15:09:59
|
只看该作者
4 Install on Windows
If your current host is Windows, you need to install VBoot loader, and add a boot entry to Windows boot manager. In addition, you need to tell VBoot where to find the vhd file.
4.1 Automatic Setup by running setup.exe
It's highly recommend that you use this method to setup VBoot on Windows, since it's extremely simple and automates everything. You simply double click setup.exe on 32-bit Windows, or setup64.exe on 64-bit Windows. The setup utility will install VBoot Loader, and configure the Windows boot loader to contain an entry to boot the Linux VHD.
After setup.exe is successfully run, you reboot the computer, and you should see a "VBoot - Ubuntu VHD Boot" entry as the last one, select this entry to boot to Linux.
4.2 Manual Setup
If somehow the automatic setup doesn't work, then you can perform the following manual steps:
4.2.1 Copy VBoot Loader Files
The VBoot loader is based on GNU GRUB2, and its files are located in vboot sub directory.
vbootldr.mbr and vbootldr are the two critical boot loader files that must be copied to the root directory of a drive, typical C:\.
The fonts directory contains font files to be used by our boot loader.
The grub directory contains grub2 modules, and the very import grub.cfg configuration file.
For example, if you want to copy the files to C:\, you need to copy the vboot directory to c:\, so you will have c:\vboot directory. Then you must copy vbootldr.mbr and vbootldr to c:\.
The following commands can be used to copy the files. Make sure to run from the extracted dir.
md c:\vboot
xcopy /s vboot c:\vboot
copy vboot\vbootldr c:\
copy vboot\vbootldr.mbr c:\
4.2.2 Configure grub.cfg
A sample grub.cfg file is placed in c:\vboot\grub directory (or d:\vboot\grub depending on where you have copied the files). This is the GRUB2 configuratrion file to load operating systems. Inside this file, the vhd file path is hard coded, and thus you have to modify it.
grub.cfg is a text file that you can use notepad to open and modify. The relevant portion is shown below:
menuentry "VHD Ubuntu, Linux 2.6.32-21-generic" {
insmod vhd
vhd vhd0 (hd0,1)/ubuntu-1004/ubuntu-1004-desktop-i386.vhd --partitions
linux (vhd0,1)/boot/vmlinuz-2.6.32-21-generic root=/dev/sda1 vloop=/ubuntu-1004/ubuntu-1004-desktop-i386.vhd quiet splash
initrd (vhd0,1)/boot/initrd.img-2.6.32-21-generic
}
menuentry groups a specific operating system. The first line insmod vhd inserts our vhd.mod module to the boot loader. vhd.mod is a GRUB2 module that treats a vhd file as hard disk, and allows GRUB2 to read files from the vhd. For example, the Linux kernel and initrd are loaded from the vhd file, as configured above.
There are three paths (as shown in red) related to the vhd file that you need to change depending on the directory to which the vhd file is extracted.
The vhd path (hd0,1)/ubuntu-1004/ubuntu-1004-desktop-i386.vhd is in GRUB2 format where (hd0,1) indicates hard disk 0 and partition 1, with the rest is the absolute path in UNIX format. For example, if your vhd file is inside a folder called 123 on an external USB disk, then you need to change this path to something like (hd1,1)/123/ubuntu-1004-desktop-i386.vhd. The path immediately after vloop= should be the same absolute path without the disk number and partition number.
The root path is the Linux device name for the disk where the vhd file resides. The number is the partition number, and the letter 'a', 'b', 'c', etc, represents which disk. For (hd0,1), the name would be /dev/sda1; For (hd1,1), it would be /dev/sdb1; For (hd2,4), it would be /dev/sdc4, etc.
44.2.3 Configure Windows Boot Loader
Once VBoot Loader and the vhd file are ready, you need to configure Windows boot manager, so you can boot to the Linux VHD. You need to append the vbootldr.mbr entry to the [operating systems] section. The following is sample boot.ini file with VBoot entry added at the very last. Shown in red is what you need to add to boot.ini. Change C: to whatever drive you have copied VBoot Loader files.
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
C:\vbootldr.mbr="VBoot - Ubuntu VHD Boot"
4.2.3.2 Windows Vista/2008/7
Windows Vista and above use a different mechanism other than boot.init to boot, and you need to run bcdedit.exe to make changes to the boot manager. The following are the commands to run if you have copied VBoot Loader to drive C:. You must rum these commands as Administrator. Go to Windows Start menu > All Programs > Accessories, then right click on "Command Prompt", then select "Run As Administrator". Once command prompt window is open, you can enter these commands.
bcdedit /create {D3DCE997-7447-41FC-9740-A8D20EE3BF55} /d "Ubuntu VHD Boot" /application BOOTSECTOR
bcdedit /set {D3DCE997-7447-41FC-9740-A8D20EE3BF55} device partition=C:
bcdedit /set {D3DCE997-7447-41FC-9740-A8D20EE3BF55} path \vbootldr.mbr
bcdedit /displayorder {D3DCE997-7447-41FC-9740-A8D20EE3BF55} /addlast
bcdedit /timeout 30
<a herf="http://www.vmlite.com/appliances/ubuntu-1004-readme.html">http://www.vmlite.com/appliances/ubuntu-1004-readme.html</a> |
|