Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1719452
  • 博文数量: 362
  • 博客积分: 10587
  • 博客等级: 上将
  • 技术积分: 4098
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-10 18:15
文章分类

全部博文(362)

文章存档

2014年(1)

2013年(58)

2011年(115)

2010年(112)

2009年(76)

分类: BSD

2010-10-31 17:14:40

FreeBSD 提供了与其他几种类 UNIX 操作系统, 包括 Linux, 的兼容性。 现在您可能会问, 为什么 FreeBSD 需要能够运行 Linux 的可执行文件? 答案很简单。 许多公司和开发人员只为 Linux 开发程序, 因为这是目前计算机世界 “最热门” 的技术。 这使得我们 FreeBSD 用户不得不去劝说这些公司和开发人员提供他们应用程序可以直接在 FreeBSD 上运行的版本。 问题是, 许多这样的公司并不真的知道到底提供了 FreeBSD 版本之后能带来多少用户, 因此许多仍然只开发 Linux 的版本。 这时 FreeBSD 用户能做什么呢? 答案就是使用 FreeBSD 所提供的 Linux 二进制兼容性。

  默认情况下, 并不开启 Linux 二进制兼容支持。 启用这一功能最简单的方法是载入 linux KLD 模块 (“Kernel LoaDable object”)。 以 root 的身份, 键入下列命令即可:

# kldload linux

  如果希望 Linux 兼容支持在系统初始化过程中自动启用, 则应在 /etc/rc.conf 中增加:

linux_enable="YES"

  可以用来检查KLD模块是否加载:

% kldstat
Id Refs Address    Size     Name
 1    2 0xc0100000 16bdb8   kernel
 7    1 0xc24db000 d000     linux.ko

  如果您不想或者无法将Linux KLD加载,您就需要在内核中静态链接进Linux二进制兼容模式。您必须在 您的内核配置文件里面加入options COMPAT_LINUX,然后按照重新编译内核。


  有两种方法来安装Linux运行时库,要么使用 port, 要么安装。


  这是最容易的安装方法,只需要像安装其他port一样从 来安装:

# cd /usr/ports/emulators/linux_base-f10
# make install distclean

注意: 对于 FreeBSD 8.0 之前的版本的 FreeBSD 系统, 你需要使用  port 而不是 。

   您现在应当是工作在Linux兼容模式下了。一些程序可能会提示系统库的版本不正确。通常,这不是问题。

注意: 有多个版本的 port,针对不同的版本的Linux。 您应该选择最接近Linux应用程序需要的那个版本来安装。

阅读(1733) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~