快速业务通道

在FreeBSD下使用Linux模拟层运行linux软件

作者 佚名技术 来源 操作系统 浏览 发布时间 2012-06-28

我是比较认同BSD的协议以及FreeBSD负责任的开发团队模式,从而喜欢上FB的。当然,OpenBSD也很好,不过,出于性能和中文支持方面的考虑,FB更适合做桌面。

但一个不争的事实是,由于有众多商业公司的支持,Linux下的应 用软件现状要比FreeBSD下乐观的多。维护一个小众操作系统上的软件,是从商业上不值得的事情,因此,比如Realplay,Acroread之类 的,就没有FB的直接支持,当然,开源软件的话,有了万能的ports系统和勤奋的程序员,linux用户和FB用户并无多大区别。

为了能让FreeBSD的用户更好的使用系统,FB在内核里加入了一个Linux的模拟层。注意,这个不是传统意义上的模拟器,只是提供了一个Linux 的程序接口,使得在FB里通过设置,可以使用一些和内核关系不是非常密切的Linux程序(太密切的如虚拟机之类的,就不行了)

好了,要启动FB对linux的支持,使用命令

#kldload linux.ko

来加载linux的模块,注意,这需要root权限。如果你需要开机就加载这个模块的话,修改/etc/rc.conf,添加

linux_enable=”YES”

一行(推荐),或者修改/boot/loader.conf文件,添加这行:

linux_load=”YES”

不过,要真正执行Linux程序的话,需要给这些程序配置相应的库。在默认情况下,FB使用的是Fedora Core 4的模拟支持,为此,我们使用ports系统安装这个环境:

#cd /usr/ports/emulators/linux_base-fc4 && make install clean

当然,如果直接安装ports里面的软件,比如,因为我喜欢的opera目前还不支持FB的amd64版本,所以我只好选择使用linux的,那么我就

#cd /usr/ports/www/linux-opera && make install clean

这样会根据依赖关系,自动安装上linux_base-fc4的。

好吧,Linux发展很快,Linux上面的应用软件发展也很快。比如,现在很多的软件至少需要Linux 2.6以上版本的内核支持。而默认FB模拟层是2.4.2版本的,为此我们需要对这个模拟层进行一些配置

要让FB支持对Linux 2.6以上版本内核的模拟,首先要确认你的FB版本必须在7.0以上,6系列是不支持的。

#sysctl compat.linux.osrelease=2.6.16 #(模拟Linux的内核为2.6.16)

修改/etc/make.conf文件,加入:

OVERRIDE_LINUX_BASE_PORT=fc6

修改/etc/sysctl.conf文件,加入:

compat.linux.osrelease=2.6.16

使得下次开机的时候能自动设置模拟的Linux的内核版本

当然,这个也是必要的,和Linux 2.6内核配套的环境:

#cd /usr/ports/emulators/linux_base-fc6 && make install clean

好了,无论是哪个内核版本,Linux环境都搭建好了,为了能正确使用Linux程序,需要模拟一个Linux的进程文件,修改/etc/fstab文件,加入:

linproc /compat/linux/proc linprocfs rw 0 0

使/etc/fstab生效:

#mount -a

现在,你就可以试试Linux的程序啦,什么Realplay啦,Thunderbird,Firefox(因为一些扩展和插件只支持Linux版本,如chm阅读)

FB也支持rpm直接安装,不过,依赖关系可要自己好好把握了。能依赖ports系统的,还是尽量用ports吧。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号