如果你希望在已安装 Windows 2003 的电脑上再安装一个 FreeBSD,并让两个系统和平共存,通过 Windows 引导菜单自由切换,那么这篇教程正好适合你。整个操作的核心思路是:保留 Windows 的引导权限,将 FreeBSD 作为 Windows 启动菜单中的一个选项来加载。
先说明几个前提条件:你的电脑上已经成功安装了 Windows 2003;此次安装的目标是让 FreeBSD 能够完成常见的中文桌面应用,例如上网、聊天、播放视频等——没错,它需要具备完整的网络功能;我们计划采用最小化安装策略,只部署一个精简的迷你系统,后续所需的软件包全部通过网络获取;另外,动手之前请先用分区工具预留出一个空的主分区,专门分配给 FreeBSD 使用。
安装前的准备
由于当时找不到直接从硬盘启动安装的方法,最终还是选择刻录一张光盘,从光驱引导进入安装流程。
有一个至关重要的步骤需要提前完成:从光盘 disc1 中提取 boot/boot1 文件,并将其复制到 C 盘根目录下。接着编辑 boot.ini,在该文件末尾追加一行:
C:\boot1="FreeBSD 6.0"
这样一来,Windows 的启动菜单里就会多出一个“FreeBSD 6.0”的选项,在后续安装过程中我们会利用它来引导系统。
安装系统
从光盘启动后,直接按回车进入 sysinstall 界面,使用方向键移动光标,按回车键确认选择。
选择 Standard 开始执行标准安装流程。
接下来处理硬盘分区。用方向键选中准备安装 FreeBSD 的硬盘分区,按 D 删除原有的文件系统,然后按 C 创建新的 FreeBSD 文件系统(默认大小约为 165MB)。这里有一个关键点:因为最终要从 Windows 引导,所以必须将 Windows 所在的 C 盘分区设置为激活状态——把光标移动到 Windows 分区上,按下 S 标记为激活。分区操作完成后按 W、Q 将分区表写入磁盘并退出。
进入多重引导设置环节时,系统会给出三个选项:BootMgr、Standard、None。由于我们打算用 Windows 的引导程序来接管启动,这里直接选择 None,不安装 FreeBSD 自带的引导管理器。
接下来是 Disklabel 分区。建议按顺序创建四个分区:/ 作为根文件系统、swap 作为交换分区、/var 用于存放日志及各类管理文件、/usr 留给第三方软件(将剩余磁盘空间全部分配给它)。创建方法是:按 C,在弹出的对话框中输入分区大小(例如 120M),选择类型为 fs,然后输入挂载点(如 / 或 /var 等,swap 无需指定挂载点)。如果你觉得手动分区过于繁琐,也可以直接按 A 让系统自动分配。分区完成后同样按 W、Q 完成操作。
到了选择安装软件包的步骤时,如果你硬盘空间充裕,选 ALL 全部安装也无妨。但按照计划我们只需要一个最小化的系统,因此选择 mini。
安装介质选择 cd/dvd,确认后系统便会开始安装。
安装后的配置
配置网卡
系统会询问是否配置网络设备,选择 Yes 开始配置。第一项网卡型号通常保留默认值即可。
接着会询问是否尝试 IPv6 配置,这里选择 No。然后是 DHCP 配置,同样选 No,之后用 Tab 键选中 CANCEL 跳过。
配置网关
系统会询问是否让这台机器充当网络网关,选择 No。
配置网络服务
后续的几个询问涉及 inetd 服务、匿名 FTP、NFS 服务器和客户端,全部选择 No。
安全配置
系统建议选用中等安全级别,这里选 Yes。
系统终端
询问是否自定义控制台设置,选择 No。
配置时区
这一步选 Yes,然后依次选择 5(亚洲)-> China -> Beijing,回车确认。同时请注意询问 CMOS 时钟是否设置为 UTC 时,选 No。
Linux 兼容性
推荐选 Yes,开启 Linux 二进制兼容支持,后续运行某些软件会更加顺畅。
配置鼠标
如果你的鼠标是传统的非 USB 接口,选 Yes -> Enable,然后测试鼠标是否能正常移动。确认后选 Exit 退出。
安装软件包
系统会询问是否浏览软件包集合,选 Yes 进入。在列表中建议只勾选 cvsup 相关的两项,其余跳过,选 Cancel 完成。
最终配置
接下来添加用户。选 Yes 进入用户添加界面,输入用户名等信息。注意在 Member groups 这一项里填写 wheel,这样创建的用户就拥有了 root 权限。
然后设置 root 密码。系统会要求输入两次,确保一致。这里不会显示任何字符,包括星号,所以务必牢记自己输入的密码。
退出安装时选 No,然后在主菜单选择 X Exit Install。确认退出后系统会重启,记得取出光盘。
安装应用程序
配置 ADSL 拨号
编辑 /etc/ppp/ppp.conf。需要注意的是:以冒号结尾的行必须从行首开始书写,其他所有行前面都要空一个空格。以下是一个可参考的配置示例:
default:
set log Phase Chat LCP IPCP CCP tun command
ident user-ppp VERSION (built COMPILATIONDATE)
set device PPPoE:rl0 # 这里的 rl0 对应 Rtl8139 网卡,请根据实际情况修改
set speed sync
set mru 1492
set mtu 1492
set timeout 180
set ctsrts off
enable dns
deny lqr
add default HISADDR
adsl:
set phone 你的电话号码
set authname 你的ADSL账号
set authkey 你的密码
set dial
set login
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
这个配置文件也可以从 /usr/share/examples/ppp/ppp.conf.sample 复制过来修改。
接着编辑 /etc/rc.conf,添加以下内容以实现开机自动拨号:
ifconfig_rl0="192.168.0.254/24"
defaultrouter="192.168.0.254"
ppp_enable="YES"
ppp_mode="ddial"
ppp_profile="adsl"
对于电信用户来说,完成这几步设置后通常就能上网了。但如果你是海南网通用户,可能还需要额外配置 DNS——例如创建一个 /etc/resolv.conf 文件,写入当地运营商的 DNS 地址。至于为什么有些地区必须手动指定 DNS,坦白说我也没完全搞懂,但亲自试过确实有效。
用 cvsup 快速获取 ports
将示例文件复制到 /root 目录下:
#cp /usr/share/examples/cvsup/ports-supfile /root/ports-supfile
编辑 /root/ports-supfile,将 *CHANGE_THIS.FreeBSD.org 替换为离你最近的 cvsup 服务器,例如:
cvsup5.cn.FreeBSD.org
然后执行更新命令:
#cvsup -g -L 2 /root/ports-supfile
安装中文桌面环境(X Windows)
Xorg 和 KDE 的源码包比较大,如果通过 ports 编译安装会花费大量时间,建议直接用 pkg_add 来装。
#pkg_add -r xorg
#pkg_add -r kde
安装完成后生成 Xorg 配置文件:
#Xorg -configure
然后编辑 /root/xorg.conf.new,主要修改以下几处:
鼠标部分——启用模拟三键、滚轮支持:
Option "Emulate3Buttons" "true"
Option "ZAxisMapping" "4 5"
显示器部分——取消 DDC 的默认值,手动设置行频和场频范围:
HorizSync 30.0 - 70.0
VertRefresh 50.0 - 150.0
Option "DPMS"
屏幕部分——默认色深设为 24,添加常用的分辨率:
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1024x768"
EndSubSection
配置完成后把文件复制到 /etc/X11 并重命名为 xorg.conf:
#cp /root/xorg.conf.new /etc/X11/xorg.conf
到这一步虽然可以启动 X 了,但没有中文字体的话根本没法正常使用。
汉化 KDE
安装 KDE 的中文语言包:
#cd /usr/ports/chinese/kde3-i18n-zh_CN
#make install clean
同样也装上 KOffice 的中文支持:
#cd /usr/ports/chinese/koffice-i18n-zh_CN
#make install clean
接着安装字体管理工具 ttmkfdir:
#cd /usr/ports/X11-fonts/ttmkfdir
#make install clean
从 Windows 分区复制 simsun 字体(Windows 下叫 simsun.ttc):
#mount_msdosfs -L zh_CN.GBK /dev/ad0s1 /mnt/winc
#mkdir -p /usr/X11R6/lib/X11/fonts/TrueType
#cp simsun.ttc /usr/X11R6/lib/X11/fonts/TrueType/simsun.ttf
用 ttmkfdir 创建字体索引文件:
#cd /usr/X11R6/lib/X11/fonts/TrueType
#ttmkfdir >fonts.dir
#cp fonts.dir fonts.fonts.scale
刷新字体缓存:
#fc-cache -f -v
然后编辑 /etc/X11/xorg.conf,注释掉 Load "record"、Load "freetype"、Load "type1",并添加以下段落:
Section "Files"
FontPath "/usr/X11R6/lib/X11/fonts/TrueType/"
EndSection
最后修改 /usr/X11R6/etc/fonts/fonts.conf,在适当位置添加字体路径和抗锯齿设置:
/usr/X11R6/lib/X11/fonts/TrueType
12
false
启动 KDE 配置
在用户主目录下创建 .xinitrc:
#echo "exec startkde" > ~/.xinitrc
如果希望从 kdm 或 xdm 直接进入桌面,可以编辑 /etc/ttys,将对应的 off 改为 on。默认情况下 kdm 不允许 root 直接登录,如果需要的话可以修改 AllowRootLogin=true。
设置中文环境
进入 KDE 后,在控制中心找到“区域与辅助功能”,将国家设置为“China”,语言设置为“简体中文”。然后在“外观与主题”的字体设置中将中文字体选为 simsun、字号 12 号,并取消“使用字体平滑”选项。
安装中文输入法
终端下的输入法 CCE:
#cd /usr/ports/chinese/cce
#make install clean
fcitx 输入法:
用 ports 安装后,需要修改几个配置文件。首先在 ~/.profile 中添加:
LANG=zh_CN.eucCN
LC_ALL=zh_CN.eucCN
export LANG LC_ALL
根据你使用的 shell 不同,设置变量方式略有区别。对于 csh:
setenv LANG zh_CN.eucCN
setenv LC_ALL zh_CN.eucCN
对于 sh/bash:
LANG=zh_CN.eucCN
LC_ALL=zh_CN.eucCN
编辑 ~/.cshrc 添加:
setenv LANG zh_CN.eucCN
setenv LC_ALL zh_CN.eucCN
setenv XMODIFIERS @im=fcitx
编辑 ~/.xinitrc,在 exec startkde 之前加上:
exec fcitx&
进入 X 后运行 #qtconfig,在 Interface -> XIM Input Style 中选中 Over the sport,然后保存退出。
安装完成后可以通过以下命令查看 fcitx 的详细配置说明:
#cd /usr/ports/chinese/fcitx
#cat pkg-message
安装 BT 下载工具
#cd /usr/ports/net/py-bittorrent
#make install clean
安装聊天工具
gaim-openq:
#cd /usr/ports/net-im/gaim-openq
KDE 下的 QQ 客户端 EVA(推荐):
#cd /usr/ports/net-im/eva
#make extract
#make install clean
多媒体工具
MP3 播放器 Xmms:
#cd /usr/ports/multimedia/xmms
#make install clean
安装皮肤包:
#cd /usr/ports/multimedia/xmms-skins
汉化 Xmms 字体:在“选项 -> 首选项 -> 字体”中勾选“使用字体集和使用X字体”,然后设置置换字体为:
-sony-*-*-*-*-*-16-*-*-*-*-*-iso8859-0,-*-*-*-*-*-*-16-*-*-*-*-*-gbk-1
播放 rm/rmvb 格式的 Kaffeine:
#cd /usr/ports/multimedia/kaffeine
安装解码器:
#cd /usr/ports/multimedia/win32-codecs
让 Noatun 也能播放 rmvb:
#cd /usr/ports/multimedia/xine_artsplugin
安装 Flash 插件
#cd /usr/ports/www/linuxpluginwrapper
安装完成后,打开 Konqueror,在“设置 -> 插件 -> 新建”中填入路径 /usr/local/lib/pluginwrapper。
