如何在一个系统中使用 Linux 和 FreeBSD( 四 )



u2fs-0.4.3.tar.gz. U2FS 是用下列的方式来安装(假设u2fs-0.4.3.tar.gz 是存

放在/usr/src):



cd /usr/src

tar xvzf u2fs-0.4.3.tar.gz

patch -p0 -E < u2fs-0.4.3.patch

Linux 2.0.31 或更新的核心(u2fs-0.4.4.tar.gz), 与最新的 2.1.xx 核心适用

的 U2FS版本, 可以在 [8]这个网站 找到. 现在你必须重新建立支援 U2FS 档案

系统 和 BSD disklabel 的核心. 参考 [9]安装和准备 Linux 来得到更多的资

料. 当使用U2FS时, 你可以忽略核心的 UFS 档案系统 支援. 当完成新的核心安

装後, 你可以使用如下列的指令来架构你的 UFS 档案系统(所有在 FreeBSD

slice 中的切割, 除了 swap 切割.



mount -t u2fs /dev/hda8 /mnt

这个 UFS 支援是唯读的. 那即是你可以自UFS 档案系统中读取,但你不能对其作

写入.



5.2 在 FreeBSD上架构 ext2fs 档案系统

要在 FreeBSD 中架构 ext2fs 档案系统, 你要先建立一个支援 ext2f 的核心.

请参照 FreeBSD 的文件来明白如何进行. 放这几行



options "EXT2FS"

在你新核心的设定档中. 在完成使用新的核心来开机後, 你可以用下列这几行来

架构你的 ext2fs 档案系统



mount -t ext2fs /dev/wd0s3 /mnt

注意: 你不能把 ext2fs 档案系统架构在 FreeBSD 的延伸切割中.



基於 FreeBSD 的某些错误, 你必须在关闭 FreeBSD 前卸下所有的 ext2fs 档案

系统. 如果你在有 ext2fs 档案系统未卸下前就关闭 FreeBSD, FreeBSD 便不能

sync UFS 档案系统. 这会导致FreeBSD下次启动时 fsck 被执行. 这个错误据报

告说已在``-current" 发展树中被修正.



6. 执行外来的执行档

6.1 在 Linux 下执行 FreeSBD 的执行档

iBCS package 有提供在 Linux 下执行 FreeBSD 执行档的支援; 但它已太老旧且

没有人维护. 我不能成功让它动作. 如果你幸运地叫它动起来, 请你告诉我.



6.2 在 FreeBSD 下执行 Linux 的执行档

FreeBSD 有能力来执行 Linux 的执行档, 包括 a.out 和ELF 型式. 要这麽做,

你必须要采取下列三个步骤:

1. 你必须开启与 Linux 相容的机制. 要这麽做 (in FreeBSD 2.2.2 --- 其他

版本的细节可能不同) 你要修改你的/etc/rc.conf 档案, 并修改



linux_enable="NO"





linux_enable="YES"

2. 你必须安装 Linux 共享的程式库. 它们在 FreeBSD 2.2.2 中被包含成为

packagelinux_lib-2.4.tgz (更新的版本可能已经出来了.) 执行这个命令



pkg_add 【如何在一个系统中使用 Linux 和 FreeBSD】/linux_lib-2.4.tgz

来安装这个package.是这个package存放的目录.

3. 安装你要执行的 Linux 程式. 这些程式可任意安装在 UFS 或 ext2fs 档案

系统中. 看章节 [10]在 FreeBSD 上架构 ext2fs 档案系统 来获取在

FreeBSD 中使用 ext2fs 档案系统的更多资讯.



我已成功地使用这些方法在 FreeBSD 2.2.2 执行 Linux 版的 Applixware 4.3

和 Netscape 3.01 (两个都是 ELF 格式), (是的, 我知道有 FreeBSD 版的

Netscape 4.) 读 FreeBSD 的文件来了解有关这个主题.



7. 参考文献於其他有趣的文件

最新版的这份 mini-HOWTO 能够在 [11]我的 homepage 中找著, 有数种格式 (包

括 SGML 与 PostScript.) 这份文件已被 Mr. Teruyoshi Fujiwara 翻译成日

文, 成为 [12]JF project 的一部份.



FreeBSD 手册与 FreeBSD FAQ 被与 FreeBSD 一起散发. 它们也可以在

[13]FreeBSD Inc. 中被找著. 这个网站也有很多关於 FreeBSD 的其他资讯.



Linux Kernel HOWTO 被散发成为 [14]The Linux Documentation Project 的一

部份.

推荐阅读