windows 7 引导Netbsd[最新,GUID分区表]
发表于 : 2012-10-07 8:31
windows 7 启动netbsd 和openbsd差不多,关键是启动文件。
基本步骤:
1、产生启动文件[老方法,现在不好使了,如果是早期windows和netbsd,并且不使用guid分区表,依然有效]
1.1)最早的,最传统的方法,对openbsd依然有效。
dd if=/dev/rwd0a of=NetBSD.pbr bs=512 count=1
1.2)NetBSD 网站标准方法,对guid分区表失效了,挺复杂的。
[原址:http://www.netbsd.org/ports/i386/faq.html#dual_boot]
devel# rm -f nbmbr [nbmbr 只是个名字,可以自己随便起名,我起名NetBSD.pbr]
devel# touch nbmbr
devel# fdisk -BF -c mbr_ext ./nbmbr
fdisk: primary partition table invalid, no magic in sector 0
fdisk: Cannot determine the number of heads
Update the bootcode from /usr/mdec/mbr_ext? [n] y
Boot selector configuration:
Timeout value (0 to 3600 seconds, -1 => never): [-1..3600 default: 10]
Select the default boot option. Options are:
0: The first active partition
1: Harddisk 0
2: Harddisk 1
3: Harddisk 2
4: Harddisk 3
5: Harddisk 4
6: Harddisk 5
7: Harddisk 6
8: Harddisk 7
Default boot option: [0..8 default: 0] 2
We haven't written the MBR back to disk yet. This is your last chance.
Should we write new partition table? [n] y
如果你的硬盘是大硬盘,并且是guid分区,呵呵,告诉你,在“fdisk -BF -c mbr_ext ./nbmbr”会失败的。
1.3)[“隐藏的够深的吧!我刚想到的方法,与大家分享一下。”]
从freebsd得到启发,freebsd的启动文件,不用自己建立了,在安装时候,已经放在/boot 目录里了,
在咱们x86和x64电脑系统里,有个文件叫“boot1”,就是它了。那NetBSD中有没有现成的呢?肯定是有,
在哪了呀?从“[ 1.2)里的 mbr_ext受到启发 ]”,找到它所在的目录。[ /usr/mdec ],隐藏的够深
的吧!!!,发现有一堆文件,比如boot,bootxxxx_msdos,mbr_ext,等等,发现有一个文件叫 gpmbr.bin,
很小的,[直觉就是它了,还有一个备选“bootxxxx_msdos”,还没试过,呵呵。],把它复制出来,改名为
NetBSD.pbr,和Openbsd.pbr,FreeBSD.pbr文件名统一了。
2、产生windows 7 启动菜单。
2.1)建立windows 7 实模式启动
C:\Windows\system32> bcdedit /create /d "NetBSD x64" /application bootsector
2.2) 激活实模式启动设备
C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device boot
2.3)指定实模式启动文件位置
C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} path \NetBSD.pbr
2.4)指定实模式启动文件所在盘[分区]
C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device partition=c:
2.5) 把启动选项放在最下面
C:\Windows\system32> bcdedit /displayorder {0154a872-3d41-11de-bd67-a7060316bbb1}
基本步骤:
1、产生启动文件[老方法,现在不好使了,如果是早期windows和netbsd,并且不使用guid分区表,依然有效]
1.1)最早的,最传统的方法,对openbsd依然有效。
dd if=/dev/rwd0a of=NetBSD.pbr bs=512 count=1
1.2)NetBSD 网站标准方法,对guid分区表失效了,挺复杂的。
[原址:http://www.netbsd.org/ports/i386/faq.html#dual_boot]
devel# rm -f nbmbr [nbmbr 只是个名字,可以自己随便起名,我起名NetBSD.pbr]
devel# touch nbmbr
devel# fdisk -BF -c mbr_ext ./nbmbr
fdisk: primary partition table invalid, no magic in sector 0
fdisk: Cannot determine the number of heads
Update the bootcode from /usr/mdec/mbr_ext? [n] y
Boot selector configuration:
Timeout value (0 to 3600 seconds, -1 => never): [-1..3600 default: 10]
Select the default boot option. Options are:
0: The first active partition
1: Harddisk 0
2: Harddisk 1
3: Harddisk 2
4: Harddisk 3
5: Harddisk 4
6: Harddisk 5
7: Harddisk 6
8: Harddisk 7
Default boot option: [0..8 default: 0] 2
We haven't written the MBR back to disk yet. This is your last chance.
Should we write new partition table? [n] y
如果你的硬盘是大硬盘,并且是guid分区,呵呵,告诉你,在“fdisk -BF -c mbr_ext ./nbmbr”会失败的。
1.3)[“隐藏的够深的吧!我刚想到的方法,与大家分享一下。”]
从freebsd得到启发,freebsd的启动文件,不用自己建立了,在安装时候,已经放在/boot 目录里了,
在咱们x86和x64电脑系统里,有个文件叫“boot1”,就是它了。那NetBSD中有没有现成的呢?肯定是有,
在哪了呀?从“[ 1.2)里的 mbr_ext受到启发 ]”,找到它所在的目录。[ /usr/mdec ],隐藏的够深
的吧!!!,发现有一堆文件,比如boot,bootxxxx_msdos,mbr_ext,等等,发现有一个文件叫 gpmbr.bin,
很小的,[直觉就是它了,还有一个备选“bootxxxx_msdos”,还没试过,呵呵。],把它复制出来,改名为
NetBSD.pbr,和Openbsd.pbr,FreeBSD.pbr文件名统一了。
2、产生windows 7 启动菜单。
2.1)建立windows 7 实模式启动
C:\Windows\system32> bcdedit /create /d "NetBSD x64" /application bootsector
2.2) 激活实模式启动设备
C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device boot
2.3)指定实模式启动文件位置
C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} path \NetBSD.pbr
2.4)指定实模式启动文件所在盘[分区]
C:\Windows\system32> bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device partition=c:
2.5) 把启动选项放在最下面
C:\Windows\system32> bcdedit /displayorder {0154a872-3d41-11de-bd67-a7060316bbb1}