用户工具

站点工具


doc:d:dualsystem

Windows XP + FreeBSD 双系统

我用过 win32、win98、win XP、win7。实话实说,我不喜欢 Windows,曾经有点排斥它。

在使用类 UNIX 的人群里,不难感受到四处弥漫着对 Windows 的鄙视——似乎用 Windows 是低级的行为。因为人人都有从众的心理,这种对 Windows 的群体心理深深地影响着我。当初为了与 Windows 决裂,我刻意地不再用 Windows。家里唯一一台装 Windows 的笔记本也是给老人用的。Windows 在我的心目中,就是一个大众娱乐工具。除了看股票,我几乎不用 Windows。

随着年龄的增长,愤青逐渐趋向平和。尤其当我看到年迈的父母用装着 XP 的电脑上网看新闻聊天,我甚至有点认可 Windows 了,因为它的确给我们的生活带来了便利。这个世界是五彩斑斓的,Windows 只是有着不一样的色彩,不被我喜欢却不影响它在别人眼中的美丽。

我开始检讨自己缺乏宽容,但仍拒绝使用 Windows,直到有一天……

最近升级 BIOS,发现程序都是 Windows 下的!可见,市场始终没有抛弃 Windows,也没因为 BSD 的牛逼为它做个 BIOS 升级程序。地球离了谁都照转,两百年后大家都是粪堆。我对 Windows 的偏见,源自渺小胸怀里的卑微的不宽容。其实,Windows 没有想象中的那么差,也并非与 BSD 水火不容。

于是,我决定在我最喜爱的二手笔记本 Thinkpad X200(双核,主频 2.4GHz,3G 内存,312G 硬盘)上装一个 XP + FreeBSD 双系统。设置两个 FAT32 分区,用于数据共享(音乐、视频、百科全书、电子图书等非更改数据)和数据交换(一些临时数据)。为了安装 XP 和一些应用程序,我分出了 30G 的硬盘空间(NTFS 格式),相比 300G 的硬盘,实在不算什么浪费。

准备工作

准备好两个 U 盘:一个是 FB 的安装盘 A,一个是 Win PE 启动盘 B。

Win PE 启动盘可以选择“老毛桃”。制作过程很简单:一键制作启动盘。然后,将 GHOST XP 的 iso 文件放在启动盘的 GHO 目录下。

安装 XP

修改 BIOS,把 USB 设为第一启动设备。将 B 盘插入,进入到 PE 系统后,先分区。

我为 XP 分了三个区:SYSTEM(C 盘), DATA(D 盘,FAT32 格式,用于 XP 和 FB 之间共享数据), EXCHANGE(E 盘,FAT32 格式,用作 XP 和 FB 之间的数据交换)。

一定要把 FB 的分区留出来。XP 的安装基本也是一键搞定。

安装 FreeBSD

重启机器,插入 A 盘进入 FreeBSD 的安装过程。在留出的空闲分区上安装 FreeBSD,过程略过。重启系统,根本没机会选择 OS,结果直接进入 FreeBSD。别慌神儿,借 FreeBSD 的 root 之手,

# dd bs=512 count=1 if=/dev/ada0s4a of=boot.fb

其中,/dev/ada0s4a 是 FB 的 / 挂载点。

# mount_msdosfs /dev/ada0s3 /mnt
# cp /boot.fb /mnt/

启动双系统

再一次插入 PE 启动盘 B,重启系统后进入 Win PE。

  1. 把 E:\boot.fb 拷贝到 C:\
  2. 把 C 盘设置为根分区,这样每次开机,如果不做选择,系统会自动进入 XP。这样,比较方便家人使用。
  3. 修改 C:\boot.ini 文件,将 C:\boot.fb=“FreeBSD” 加入到最后一行。

拔掉 U 盘,再次启动机器,选择菜单就出现了。

FreeBSD 自动挂载 FAT32 分区

在 FreeBSD 环境里建立目录 /data 和 /exchange。修改 /etc/fstab,在最末两行添加

/dev/ada0s2     /data     msdosfs rw 2    2
/dev/ada0s3     /exchange msdosfs rw 2    2

后记

我没有尝试把 grub 等。如果有朋友愿意续写,可以加上一段,来介绍如何缺省地从 FB 启动,而把 XP 列为第二选择。

再后记:Windows 7 + FreeBSD 双系统

为了享受 Windows 7 的家庭网络功能,我把 XP 系统升级为 Windows 7。还是用“老毛桃”USB 启动,Ghost 安装 Windows 7 没有任何惊险故事,就是把系统 ghost 到 C 盘,原有的 XP 自然就被覆盖掉了。

Windows 7 的双系统,不再采用 boot.ini。所以,前面的方法不再行得通。有一个简单有效的方法,不必重新安装 FreeBSD,就可以建立起 Windows 7 + FreeBSD 的双系统。

[1] 利用“老毛桃”自带的分区工具,将 FreeBSD 分区激活,重启机器,便进入 FreeBSD 环境。

[2] 以 root 身份运行

# boot0cfg -B /dev/ada0

[3] 再次利用“老毛桃”自带的分区工具,将 Windows 分区激活,重启机器,便出现选择菜单,F1 是 Windows 7,F4 是 FreeBSD。这样,我们便简简单单地实现了双系统的升级换代。

当然,如果直接安装 Windows 7 + FreeBSD 双系统,过程与 XP + FreeBSD 是类似的,仅仅在系统引导的实现上有一点小差异而已。

/data/vhosts/wiki-data/pages/doc/d/dualsystem.txt · 最后更改: 2014/01/02 08:32 由 IOU