freebsd和linux区别

来源:
导读 大家好,我是本期栏目编辑小友,现在为大家讲解freebsd和linux区别问题。 freebsd概述 FreeBSD是一个类似UNIX的操作系统,是从BSD、386BS

大家好,我是本期栏目编辑小友,现在为大家讲解freebsd和linux区别问题。

freebsd概述

FreeBSD是一个类似UNIX的操作系统,是从BSD、386BSD和4.4BSD发展而来的Unix的重要分支,FreeBSD为不同架构的计算机系统提供不同级别的支持。而一些最初的BSD UNIX开发者后来转向FreeBSD开发,使得FreeBSD在内部结构和系统API上都与UNIX有很大的兼容性。得益于FreeBSD宽松的法律规定,它的代码被很多其他系统借鉴,包括苹果的macOS。正是因为macOS的UNIX兼容性,macOS才获得了UNIX商标认证。

FreeBSD支持amd64(x86_64)、X86(i386)、ARM、AArch64、IA-64、PowerPC、PC-98、SPARC等架构(不同版本支持不同)(详见官方文档)。

FreeBSD和Linux的相似之处。

FreeBSD和Linux是两个免费的开源软件。事实上,他们的用户可以很容易地检查和修改源代码,用户有绝对的自由。此外,FreeBSD和Linux都是类似Unix的系统,它们的内核、内部组件和库程序都使用历史上从ATT Unix继承的算法。FreeBSD从根本上来说更像是Unix系统,而Linux是作为一个类似于Unix的免费系统发布的。许多工具应用程序可以在FreeBSD和Linux中找到。事实上,它们具有几乎相同的功能。

此外,FreeBSD可以运行大量的Linux应用程序。它可以安装一个Linux的兼容层,可以在编译FreeBSD的时候加入AAC Compact Linux获得,也可以下载已经编译了Linux兼容层的FreeBSD系统,其中会包含一个兼容程序:aac_linux.ko与FreeBSD不同,Linux不能运行FreeBSD软件。

FreeBSD和Linux的区别。

许可

这两个系统的区别首先在于它们的许可证。Linux采用GPL许可证分发,为用户提供了阅读、分发和修改源代码的自由。GPL许可证帮助用户避免只分发二进制文件。而FreeBSD是用BSD许可证发行的,比GPL更宽容,因为它的衍生作品不需要用这个许可证发行。这意味着任何用户都可以使用、发布和修改代码,而无需维护以前的许可证。

您可以根据需要选择两个许可证中的一个。首先是BSD许可证,由于其特殊的条款而受到用户的青睐。事实上,此许可证使用户能够销售使用此许可证发布的软件,同时确保源代码关闭。再来说说GPL。它要求每一个使用本许可证下分发的软件的用户都要多加注意。

如果你想在两种不同许可证发布的软件之间进行选择,你需要知道它们各自的许可证以及它们在开发中的方法论,这样你就可以了解它们特性之间的差异,选择更适合你需求的软件。

控制

由于FreeBSD和Linux发行的许可证不同,Linus Torvalds控制Linux的内核,而FreeBSD与Linux的不同之处在于不受控制。个人比较喜欢用FreeBSD而不是Linux,因为FreeBSD绝对是自由软件,没有控制器。Linux和FreeBSD还有其他区别,建议大家不要急着做选择,看完这篇文章再做选择。

操作系统

Linux主要指的是内核系统,与FreeBSD的区别在于FreeBSD的整个系统都是维护的。FreeBSD的内核和FreeBSD团队开发的一套软件是作为一个整体来维护的。实际上,FreeBSD开发者可以远程高效地管理核心操作系统。

在Linux上,管理系统有一些困难。因为不同的组件由不同的来源维护,所以Linux开发人员需要组装它们来实现相同的功能。

FreeBSD和Linux都给用户提供了很多可选的软件和发行版,但是它们的管理方式不同。FreeBSD是统一的管理方式,而Linux需要单独维护。

硬件支持

说到硬件支持,Linux比FreeBSD好。但这并不意味着FreeBSD没有能力支持像Linux这样的硬件。他们只是用不同的方式管理,这通常取决于你的需求。所以,如果你在寻找最新的解决方案,FreeBSD更适合你;但是如果你想要更多的通用性,你最好使用Linux。

原生FreeBSD Vs原生Linux。

他们原生系统的差异是不同的。正如我之前所说,Linux是Unix的替代系统,它是由Linus Torvalds编写的,并在网络上许多极客的帮助下实现的。Linux具备现代系统所需的所有功能,如虚拟内存、共享库、动态加载、优秀的内存管理等。它是根据GPL许可证发行的。

FreeBSD还继承了Unix的许多重要特性。FreeBSD是加州大学开发的BSD的一个发行版。开发BSD最重要的原因是用开源系统取代ATT操作系统,从而让用户无需ATT许可就能使用。

许可证问题是开发商最关心的问题。他们试图提供一个开源系统来最大限度地克隆Unix。这影响了用户的选择,因为FreeBSD使用BSD许可证发布,比Linux更自由。

  支持的软件包

  从用户的角度来看,另一个二者不同的地方便是软件包以及从源码安装的软件的可用性和支持。Linux只提供了预编译的二进制包,这与FreeBSD不同,它不但提供预编译的包,而且还提供从源码编译和安装的构建系统。使用它的 ports 工具,FreeBSD给了您选择使用预编译的软件包(默认)和在编译时定制您软件的能力。(LCTT 译注:此处说明有误。Linux 也提供了源代码方式的包,并支持自己构建。)

  这些 ports 允许您构建所有支持FreeBSD的软件。而且,它们的管理还是层次化的,您可以在/usr/ports下找到源文件的地址以及一些正确使用FreeBSD的文档。

  这些提到的 ports给予你产生不同软件包版本的可能性。FreeBSD给了您通过源代码构建以及预编译的两种软件,而不是像Linux一样只有预编译的软件包。您可以使用两种安装方式管理您的系统。

  FreeBSD 和 Linux 常用工具比较

  有大量的常用工具在FreeBSD上可用,并且有趣的是他们由FreeBSD的团队所拥有。相反的,Linux工具来自GNU,这就是为什么在使用中有一些限制。(LCTT 译注:这也是 Linux 正式的名称被称作“GNU/Linux”的原因,因为本质上 Linux 其实只是指内核。)

  实际上FreeBSD采用的BSD许可证非常有益且有用。因此,您有能力维护核心操作系统,控制这些应用程序的开发。有一些工具类似于它们的祖先 - BSD和Unix的工具,但不同于GNU的套件,GNU套件只想做到最小的向后兼容。

  标准 Shell

  FreeBSD默认使用tcsh。它是csh的评估版,由于FreeBSD以BSD许可证发行,因此不建议您在其中使用GNU的组件 bash shell。bash和tcsh的区别仅仅在于tcsh的脚本功能。实际上,我们更推荐在FreeBSD中使用sh shell,因为它更加可靠,可以避免一些使用tcsh和csh时出现的脚本问题。

  一个更加层次化的文件系统

  像之前提到的一样,使用FreeBSD时,基础操作系统以及可选组件可以被很容易的区别开来。这导致了一些管理它们的标准。在Linux下,/bin,/sbin,/usr/bin或者/usr/sbin都是存放可执行文件的目录。FreeBSD不同,它有一些附加的对其进行组织的规范。基础操作系统被放在/usr/local/bin或者/usr/local/sbin目录下。这种方法可以帮助管理和区分基础操作系统和可选组件。

标签:

版权声明:转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢您的支持与理解。