BSD 的那些事
================================================================================
![](http://www.linuxvoice.com/wp-content/uploads/2015/02/faq1-large1.png)

### 假如历史稍有不同，今天你将听到的是“FreeBSD之声”... ###
（LCTT 译注：本文来自“Linux之声（LinuxVoice）”。）

#### 那么，这个Birsa Seva Dal是怎么回事呢？难道不是一个印度的政治组织么？ ####

真有趣，您查阅了维基百科上“BSD”的消除分歧页面是为了讲上面这个笑话，对么？这里我们在讨论伯克利软件发行版（Berkeley Software Distribution），一个比您想象中用的更广泛的操作系统家族。

#### 抱歉，我有点 Hold 不住自己。那么，这些操作系统是怎么回事呢？ ####

今天，主要使用的BSD操作系统有三种。他们都基于Unix，他们都开源，并且大多担任服务器的角色，但也能当作优秀的桌面和工作站。他们运行KDE，Firefox，LibreOffice，Apache，MySQL和许多你能说得出名字的开源软件。它们都很稳定、安全、支持许多不同的硬件。

#### 真棒！你刚才在描述GNU/Linux吧 ####

是的，Linux拥有我刚才提到的所有东西，这也是为什么很多人从来不讨论BSD。在日常的使用中，Linux和BSD并没有太多的不同，这主要是因为他们都以Unix为基础，并共用很多软件。您可以登录进远程主机，在Vim中写一些Python代码，使用Mutt检查您的email，您可能并未意识到您在使用BSD。或许您在咖啡馆里正通过网络终端使用它，但不知道他是BSD。

两者最大的区别在于开发模式和许可证，为了解这些，我们需要回到过去。在BSD中，B代表着加利福尼亚大学伯克利分校（University of California, Berkeley），在1980年代，那里是开源的Unix软件的发源地。到了90年代，基于x86的PC变得流行，许多人对在他们的家庭电脑中安装Unix类操作系统产生了兴趣。1992年，一个叫做386BSD的项目在那时发布，提供了上述功能。

#### 那么，所有的Linux发行版那个时候在哪里呢？ ####

问得好！您也许知道这一年的前一年（1991），Linus Torvalds已经发布了他的内核，当它与GNU项目结合时，变成了完整的开源操作系统。Linus那时也在关注GNU的内核（Hurd）和386BSD，并且他说过，如果那时两个内核有一个可以正常使用，他可能就不会创造Linux了。所以，90年代的头几年，开源操作系统生机勃勃，没有人知道哪个系统会最终胜出。

接下来，BSD遇到了一些麻烦。Unix最初的开发方AT&T试图从他们在操作系统方面的付出中获得一些利益，他们声称BSD侵犯了他们的知识产权。此事最终以1992年的一桩诉讼结束，它极大的抑制了BSD的开发进程。其结果就是，许多BSD源码必须重写，与此同时，GNU/Linux已经丰富了功能，变得稳定和流行了。

在90年代早期，BSD被认为比GNU/Linux更加成熟，如果没有那些法律麻烦，他可能已经成为了x86 PC的标准了。今天，我们可能都在使用它而不是Linux。

#### 但你提到BSD仍然被广泛的使用，所以它后来有提升么？ ####

是的。386BSD的开发停滞了，但有两只开发团队通过互联网协作并创造了两个独立的成功的项目。FreeBSD成为了使用最广泛的BSD版本，它目前是和Linux最相似的系统，包括桌面和服务器版本。而NetBSD则聚焦于可移植性（今天它可以运行在超过50种不同平台上，均基于同样的代码版本）。另一个版本是OpenBSD，它在NetBSD开始不久就因为开发者的口角而作为NetBSD的分支诞生了，今天，它以专注于安全闻名。多年以来，OpenBSD创建了许多程序，它们都成了Linux的标准部分，比如说OpenSSH - 甚至，现在我们还有了LibreSSL。

#### 所以，这三种版本的BSD和Linux发行版相似么？ ####

也是也不是，每个BSD版本都有自己的代码库、不同的开发团队。尽管他们间有许多共用的代码（尤其是硬件驱动）。但他们是各自拥有其特色、优点和缺点的相互独立的操作系统。

我们提到过，BSD的开发模式是他们真正和GNU/Linux区别的重要特点。在GNU/Linux中没有人对其整体进行掌控：一些团队在GNU组件方面工作，一些团队在开发内核，一些在开发启动脚本，一些在写手册，一些在写库等等。这样的开发模式通常被称作缺少中央权利的“荒蛮的美国西部”，由发行版负责将所有的东西各自锲合。

而BSD则相反，它们从中央化的源代码树中开发并作为一个整体。内核、库、系统组件和文档页都存在一个地方，且以同样的方式使用。许多BSD粉丝声称，这个特点给了操作系统更多的一致性和稳定性。通过我这些年使用BSD的经验来看，我们可以证明手册页已经变得非常完备。

![](http://www.linuxvoice.com/wp-content/uploads/2015/02/faq2-large1.png)

#### 难道BSD没有使用GNU/Linux的任何东西么？ ####

是的，但除了GCC。几十年来，GNU Compiler Collection已经成为了实际上的Unix系统标准编译器，但FreeBSD最近已经转而使用LLVM/Clang了。值得注意的是BSD还是用了一些其他的开源项目，但它们并属于GNU或者Linux，比如说X Window System（XFree86和X.org）、Perl等等。并且幸亏有像POSIX一样的标准，许多运行在Linux上的程序可以在BSD的许多版本上编译和运行。

因此，您可以把LAMP（Linux、Apache、MySQL和PHP）中的L改成FreeBSD，这样可以获得几乎同样的环境，以及一些不同的特性（例如，在文件系统和驱动支持方面）。FreeBSD有一些大型、海量的用户，例如Netflix，每天提供海量的数据。尽管FreeBSD可以做为一个不错的桌面环境，但它的长处在于服务器方面，它拥有超乎寻常的可靠性和网络性能。

OpenBSD更倾向用于安全性十分必要的场合，如小型Web服务、文件托管、防火墙和网关。NetBSD是BSD主要发行版中最不流行的一个，它能运行在几乎所有平台上，包括古老的Amigas和Acorn boxes，有时您可以在闭源的网络设备中找到它的身影。

#### 等等，怎么会有人将开源代码闭源呢？那在Linux中是不合适的 ####

对的，这里我们谈到了它与GNU/Linux的主要不同。BSD版本的许可证（很有趣，就叫做BSD许可证）非常不同于我们所知的GPL。对于新手来说，BSD更简短。BSD许可证主要内容是：对这份代码做你想做的事，但要保留它的初始开发者的荣誉，并且如果它搞坏你的电脑时不要提出诉讼。

因此，该许可证中没有任何条款强制代码开源，不像GPL，它要求使用这份代码的用户将他们的修改也开源。这一重要的不同引起了互联网上无数的激烈讨论，BSD的粉丝们说他们的许可证更加自由（因为它不那么严格），而GNU/GPL的粉丝说他们的证书才更自由（因为它保留了真正的自由）

#### 啊呀，不管怎么说，你已经引起了我的兴趣，我在哪里能尝试这些可爱的BSD版本呢？ ####

您大概已经可以猜到这些网站了 – [www.openbsd.org][1]、[www.freebsd.org][2]、[www.netbsd.org][3]。在那里，您可以下载ISO镜像，在VirtualBox中启动它们，然后开始玩耍。如果您已经用了一段时间的Linux，你就会发现这并不难，虽然您需要了解命令行。如果您在寻找一些对新手更加友好的东西，可以试试PC-BSD，PC-BSD([www.pcbsd.org][4])是一个基于FreeBSD的个性化定制版本，它专注于桌面，有美观的图形化安装器和超级简单的软件管理器。

祝你玩的愉快！

--------------------------------------------------------------------------------

via: http://www.linuxvoice.com/faq-bsd-2/

作者：[Mike Saunders][a]
译者：[wwy-hust](https://github.com/wwy-hust)
校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出

[a]:http://www.linuxvoice.com/author/mike/
[1]:http://www.openbsd.org/
[2]:http://www.freebsd.org/
[3]:http://www.netbsd.org/
[4]:http://www.pcbsd.org/
