后记

如果你已经做到了这一点,你现在知道如何管理和使用FreeBSD作为几乎任何服务器任务的平台。您可能需要学习新的协议以及如何配置新程序,但底层操作系统几乎是一个已解决的问题。祝贺 你!FreeBSD是一个出色、灵活的平台,几乎可以在您的网络中扮演任何角色。总结一下,我想讨论一下FreeBSD的其他方面。

我们在本书中讨论了FreeBSD的特性:程序、内核、特性等等。我们还没有涵盖的一件事是创建所有这些的社区。

FreeBSD社区

FreeBSD社区包括计算机科学家、经验丰富的程序员、用户、系统管理员、文档作者,以及几乎所有对该系统感兴趣的人。他们来自世界各国,教育水平从高中到博士后不等。我个人曾与来自各大洲和地球上大多数较大岛屿的FreeBSD用户打过交道。1国籍根本不重要,种族、肤色、性别、性取向或信仰也不重要。

有些是计算机科学家。有些人在云提供商或制造公司工作。有些是医生,有些在可疑的小店当店员,这些小店在政府发现他们之前就消失了。有一次,我与一位才华横溢的开发人员密切合作,结果发现他太年轻了,不能合法开车。奇怪的是,时区很重要,但这只是因为它们会影响开发人员相互沟通的能力。由于社区的大部分互动都是在线的,唯一能代表你的东西就是你的文字和工作。这些人改进了FreeBSD并推动了它的发展,使其不仅仅是一个零和一个零的集合,也不仅仅是一种为网站服务的方式。

FreeBSD社区的一个有趣之处在于,它已经开发出应对领导层变化的方法。许多开源项目只有一个领导者或一个小型的静态领导团队。当这些人决定继续前进时,项目可能就结束了。其他人可能会分支或分叉该项目,但原始社区通常会分裂。创建FreeBSD的人大多转向了其他领域,但社区也培养了其他领导者。经过五代人的领导,FreeBSD作为一个项目已经表现出对领导层变化的弹性,这在开源世界几乎是独一无二的。今天的FreeBSD领导者对自己的替代者非常感兴趣,指导和辅导那些似乎最有可能成为2020年代甚至2030年代领导者的初级社区成员。

这种改变领导层的能力使FreeBSD作为一个社区保持了活力,并帮助它适应了世界。1994年,没有人认为开源项目需要行为准则或讨论和管理架构变更的过程。FreeBSD现在两者都有。一旦核心团队处理了所有的中央决策,核心团队就会将其许多职责委托给更具体的团队。所有组织都会随着成长和成熟而变化。变革摧毁了许多组织,但FreeBSD已经证明,它可以在重新定义自己的同时生存和繁荣。

更重要的是,他们总是欢迎那些以前来过的人,无论是在Subversion存储库还是在酒吧。UFS文件系统的原始作者仍然在附近徘徊。FreeBSD的一位创始人最近重新加入了该项目。自成立以来,有些人一直是提交者。不知何故,自90年代中期以来,他们一直让我待在这里——可能是因为我太大了,不能轻易违背自己的意愿,但我会接受的。

我们为什么要这样做?

每个人在FreeBSD上工作都有自己的原因。一小部分人受雇于依赖FreeBSD的公司来改进代码,如戴尔EMC和Netflix。FreeBSD基金会根据合同雇佣开发人员完成特定任务。大多数开发人员将FreeBSD作为一种爱好,这样他们就可以比日常工作更正确地编程,或者他们可以做自己感兴趣的工作。由于外界的影响,你们中有多少人完成的工作项目不如预期成功?你们中有多少人的工作可以支付账单,但不会让你感到满足?开发FreeBSD可以让人们同时满足这两种需求。

许多贡献者不是软件开发人员,而是在FreeBSD的其他部分工作。有些人写文档,有些人设计网站,有些人只是潜伏在论坛的阴暗小巷里回答用户的问题。无法做任何其他事情的人会测试发布候选对象和快照,寻找只在他们的环境中出现的错误。许多人花费数小时处理与FreeBSD相关的事务。为什么?我可以向你保证,这本书的版税远不能弥补我与家人共度的时光。我现在是一名全职作家,但如果我要追逐金钱,我会写Windows、Linux和最新的管理蛇油。相反,我正在写一本关于FreeBSD的书。

更糟糕的是,一个周六下午,我在办公室里写下这篇后记,而我的家人正在楼下度过一段美好的时光,说服征服了烧烤架的加拿大红松鼠一家搬回树上。人们大喊大叫,偶尔还会大喊“哦,上帝,请不要!”——所以大家都玩得很开心。你有权问:“你怎么了?你为什么这样做?”

我们这样做是为了创造对人类其他人有用的东西,并回报我们所得到的一些东西。

你可以自由地使用FreeBSD提供的东西,并用它做任何你想做的事情。我确实这样做了一段时间。几年后,当我成为一名有能力的系统管理员时,我发现我想为社区做点什么。这就是社区的发展方式,不断发展的社区意味着FreeBSD将蓬勃发展。

如果你自己想要一些满足感,也有一个地方适合你。

你能做什么?

如果你有兴趣支持FreeBSD,无论出于什么原因,都有你的空间。自从我在1996年开始使用FreeBSD以来,每隔一段时间,就会有人发帖说:“我想帮忙,但我不会编码。”(我很确定我在1998年左右就把这封电子邮件发到了questions@mailing list。)对这些帖子的标准回应是沉默。如果你已经决定你不能帮忙,你是对的——你不能。不过,一旦你决定可以帮忙,你就可以了。

没有人否认一些知名度很高的程序员是FreeBSD的名人。他们中的许多人都有令人印象深刻的技能,我们大多数人做梦也想不到会成为下一个罗伯特·沃森或约翰·鲍德温。然而,即使你无法从潮湿的纸袋中编程出来,你仍然可以提供帮助。

你只是问错了问题。

不要问FreeBSD需要什么。你无法提供这些,除非你有一大笔银行存款,乞求加入慈善事业。(如果你确实有多余的现金急需有人来养育它们,FreeBSD基金会很乐意收养它们,拥抱它们,让它们感到被爱。)如果你不能自己创造,不要说,“如果FreeBSD做这样那样的事情,那不是很酷吗?”。很多人都能做到这一点。

相反,问问自己你有什么技能。任何大型组织都需要许多不同的人,无论你今天拥有什么技能,对FreeBSD来说都是有用的。你会写文档吗?深入了解官方文档,也许可以将一个流行的教程从论坛移植到官方文档库。做得够多了,文档团队就会把你拖入FreeBSD,并在你的额头上打上一个承诺的烙印。

你是网页设计师吗?独立网页设计师提供宝贵的第三方资源,例如https://freshports.org/以及http://daemonforums.org/.这个空间很大,你可以填满它。

您需要的第三方软件是否尚未移植到FreeBSD?把它硬塞到工作状态,然后把它变成一个正式的移植版。FreeBSD一直在寻找更易于维护的软件。一旦你完成了其中的几项,你就可以在不再有维护人员的端口上采用维护人员。坚持下去,Ports团队会来找你,让你成为提交者。

我写得丰富,尚可。我为常见问题解答和这本书的第一版写了一些更新。常见问题解答的更新让我成为了一名提交者,尽管多年前当我把注意力转向写更多的书时,我就让这种情况消失了。仅仅看到我写的代码就会让小孩子绝望地哭泣,并迫使可爱的老太太制作标志以避开邪恶的目光,但FreeBSD的人欢迎我成为他们自己的一员,并把我当作合作伙伴,仅仅因为我做了这项工作。

你是做什么的?你喜欢做什么,即使你没有机会经常做?利用这种技能。我们将不胜感激。

如果没有别的 . . .

如果你真的没有有用的技能,也没有其他想法,请重读这本书。阅读FreeBSD网站上的文档。订阅FreeBSD-questions@FreeBSD.org,或加入论坛,帮助其他用户。许多人正是以这种方式开始为FreeBSD做出贡献的。

我鼓励你尽可能引导人们访问现有的信息资源。当有人问常见问题解答中回答的问题时,引导他们去那里。如果以前有人问过这个问题,建议他们搜索邮件列表档案。教人们自助是最有效地利用时间的方法——不仅在FreeBSD,在世界上也是如此。俗话说,教一个人钓鱼,你就可以卖给他鱼钩。

做得够多了,你就会想更新FreeBSD常见问题解答,这样你就不必回答这个问题了。更多。时间。提交足够的常见问题解答更新,文档团队将再次为您提供提交。

最重要的是,在回答问题一段时间后,您将对FreeBSD的需求有更深入的了解。其中一个需求几乎肯定会与你的技能相匹配。

完成任务

FreeBSD成功的秘诀在于:它所包含的一切都在那里,因为有人看到了他们可以填补的需求,并为此做了一些事情。NetBSD和FreeBSD是在一群386BSD patchkit用户厌倦了等待下一个官方版本时开始的。在开始写这本书之前,我没有征得许可。那些优秀的人继续前进bugbusters@FreeBSD.org不要为了好玩而浏览bug数据库;他们这样做是因为他们认为这足够重要,可以花时间去做。(如果你是一名程序员,浏览bug数据库并找到可以解决的问题是你能做出的最好的贡献之一。)

一旦你有了一个想法,就在邮件列表中搜索关于它的讨论。许多项目都是建议和讨论的,但从未实施过。如果有人提出了你的想法,请阅读存档的讨论。如果这个想法在过去几年里得到了普遍认可,但没有人在研究它,那就开始工作吧!如果FreeBSD的人第一次收到你的bug时说:“嗨,这是我实现此功能的补丁,正如某某邮件列表线程中讨论的那样,他们会非常满意的。”

无论你做什么,都不要在邮件列表或论坛上问,“为什么其他人不为X做这项工作?”这些建议大多分为三类:显而易见的(“嘿,如果FreeBSD在特斯拉上运行不是很酷吗?”),愚蠢的(“为什么没有内核选项BRINGMEACOLDBEER?”)或两者兼而有之(“为什么不支持我的Sinclair ZX80?”)。在任何一种情况下,提出要求的人都没有资格自己完成这项工作,并声称无法支持其他可以完成这项任务的人。所有这些建议都是浪费带宽和惹恼人们。带宽便宜;人们不是。

简而言之:闭嘴,工作。尽你所能,把它做好,人们会欣赏它。程序员可以通过进入bug数据库并选择一个有希望的bug来攻击来提供帮助。非程序员可以通过找到一个他们可以填补的漏洞并完成填补它的工作来提供帮助。你可能会成为FreeBSD的领导者,或者你可能会被称为“那个在-questions上闲逛并帮助EFI引导程序用户的了不起的女人”。所有这些都是绝对重要的。您的帮助使FreeBSD蓬勃发展。坚持足够长的时间,从帮助EFI引导加载程序的人开始,可能会发展成为代表整个FreeBSD的东西。

我期待着在邮件列表上见到你。