前言
编写原则
对既成事实和广大教程中的一贯说法持悬置态度。考察其有无真实出处和确定无疑、清楚明白的源代码支撑或历史因素。即使是大家(大家究竟是谁?有这么一个人吗?)一致认为的,也要考察其每一步骤的合理性与必要性,在官方文档或代码中哪里明确写出需要这样做,对不合理的做法予以驳斥,对于明显的错误,向上游相关项目进行反馈。不能说能运行就一定没有问题。凡是存在的有其合理性,但必然也有其不再存在的可能性的合理性存在:简而言之,对默认行为也要考察其原理,持怀疑态度。如果是个人习惯,则明确为个人习惯,并给出安全的、行业推荐的做法(这样就一定正确吗?)版本差异应予以注明。作者不是 Ai,如果个人无法确证,并且看不懂看不明白的坦白讲自己不知道,留置文中(故障排除与未竟事宜),以期后人的智慧。
目标平台
目前版本兼容 FreeBSD 14.2-RELEASE 及 FreeBSD 15.0-CURRENT,并尽量向下兼容。
主要面向 x86-64(amd64)、AArch64(arm64),并尽可能多的支持其他体系平台。
Windows 测试环境为 Windows 10、11,并尽量使用最新版本的 Windows。
pkg 与 ports
因为 FreeBSD 有两种安装软件的方式(但个别软件不支持 pkg 安装):因此为了方便,在本教程中已经尽可能地列出了两种方式的安装说明。但希望大家明白,只是为了方便,而并非不能使用 ports 或者 pkg 进行安装或必须使用二者其一进行安装。
请注意
ports 一般是 HEAD 分支,你的 pkg 最好与 ports 保持在同一主线上,即都选择
latest
。但是你亦可以自行拉取 pkg 对应的 Ports 季度分支,如2025Q1
。
要安装软件 yyy
,yyy
在 ports 里是 xxx/yyy
,即路径是 /usr/ports/xxx/yyy
。
那么首先可以通过 pkg 安装二进制软件包,和绝大多数 Linux 用法一样,下同:
还可以这样:
或者这样简写:
那么还可以通过 Ports 编译安装:
将会不断地弹出来窗口询问你怎么选。如果是使用默认选项,请这样做,则:
如果你想一次性完成所有配置:
本书中命令及符号含义
#
代表 root
下的操作,基本等同 su
、sudo
和 doas
。
$
、%
代表普通用户账户权限。
注意
提示一些注意事项。
技巧
提示一些技巧。
警告
如果不知道、不做就无法完成或造成重大危害的事项。
章节:
旨在将现存的问题和改进的方向/建议或谜团留置其中,以期后人的智慧。
对用户的要求
以高等院校计算机科学与技术学科一般本科毕业生所能达到的及格或及格以上水平为编写难度基准。
本书定位
本书旨在深入剖析 FreeBSD 操作系统,敉平从初学者到研究者之间的鸿沟。
参考书目
相关书籍:新的变化也不是很大。不像 Linux 有这么多入门书籍。出于历史上的原因,看 UNIX 相关书籍即可。
技巧
以下有多本书籍可通过微信读书免费阅读。
《FreeBSD 技术内幕》
Brian Tiemann、Michael Urban
9787111102010
机械工业出版社
2002 年的书,居然还能用。你该说 BSD 没有发展,还是该说他稳定?本书推荐选读第 1、4、8、9、10、11、12、13 章
《Unix & Linux 大学教程》
Harley Hahn
9787302209560
清华大学出版社
命令行基础
《UNIX/Linux 系统管理技术手册(第 5 版)》
Evi Nemeth、Garth Snyder、Trent R.Hein、Ben Whaley、Dan Mackin
9787115532763
人民邮电出版社
命令行进阶与 UNIX 基础
《FreeBSD 操作系统设计与实现(原书第 2 版)》
Marshall McKusick、George Neville-Neil、Robert N.M. Watson
9787111689973
机械工业出版社
主要讲解了内核。轻型纸,居然还有几个章节要自己在网络自己下载?
《UNIX 编程艺术》(TAOUP)
Eric Raymond
9787121176654
电子工业出版社
主要讲解了 UNIX 的设计哲学与软件工程理论。
《大教堂与集市》
Eric S. Raymond
9787111452478
机械工业出版社
主要介绍了开源运动的发展史。
《4.4BSD 操作系统设计与实现》
Marshall Kirk McKusick
9787111366478
机械工业出版社
4.4BSD 操作系统设计与实现
《深入理解 FreeBSD 设备驱动程序开发》
Joseph Kong
9787111411574
机械工业出版社
FreeBSD 设备驱动程序开发
《UNIX 环境高级编程(第 3 版)》
W. Richard Stevens、Stephen A. Rago
9787115352118
人民邮电出版社
深入了解驱动 UNIX 内核的编程接口的实用知识
《UNIX 网络编程 卷 1:套接字联网 API(第 3 版)》
W. Richard Stevens、Bill Fenner、Andrew M. Rudoff
9787115367198
人民邮电出版社
如何使用套接字 API 进行网络编程
《UNIX 网络编程 卷 2:进程间通信(第 2 版)》
W. Richard Stevens
9787115367204
人民邮电出版社
深入了解各种进程间通信形式。这书原作者没出第 3 版,不用再找了
《深入理解 UNIX 系统内核》
Uresh Vahalia
9787111491453
机械工业出版社
UNIX 内核基础
选读书目
《UNIX 传奇——历史与回忆》
Brian W Kernighan
9787115557179
人民邮电出版社
主要讲解了 UNIX 的发展历史。写的比较粗略。
Absolute FreeBSD 3rd
Michael W. Lucas
9781593278922
No Starch Press
英文版,目前没有译文。词汇包括内容都非常基础。切记,有计算机基础的人不需要阅读。
最后更新于