FreeBSD 11.2-RELEASE: https://download.freebsd.org/ftp/releases/ISO-IMAGES/11.2/
虚拟机映像:https://download.freebsd.org/ftp/releases/VM-IMAGES/11.2-RELEASE/amd64/Latest/
创建虚拟机
1.自定义——兼容性选择最高版本——稍后安装操作系统

2.操作系统选择freeBSD11 64

3.处理器我配置了双核、内存1G、网络NAT,IO/磁盘类型默认
4.磁盘选择现有虚拟磁盘

5.浏览下载好的镜像

6.然后点击完成

配置编译
1.打开FreeBSD虚拟机,输入root登录系统

2.升级port目录vi /etc/portsnap.conf
把SERVERNAME=portsnap.freebsd.org
修改为SERVERNAME=portsnap.hshh.org
执行portsnap fetch extract
下载ports并且解压到/usr
3. 下载FreeBSD内核代码 (使用了pfsense的内核) https://github.com/pfsense/FreeBSD-src/archive/RELENG_2_5.zip
如果遇到“Authentication error”
,执行下面代码 pkg install ca_root_nss
ln -s /usr/local/share/certs/ca-root-nss.crt /etc/ssl/cert.pem
#svnlite update /usr/src
fetch
https://github.com/pfsense/FreeBSD-src/archive/RELENG_2_5.zip

4.将下载好的FreeBSD内核压缩包解压到/usr/src

5.进入FreeBSD内核编译目录
清理依赖关系make cleandepend
make cleanworld
重新构建依赖关系 make depend
6.确定核心数量sysctl hw.ncpu
make -j核心数
联编新的编译器, 以及少量相关工具, 并在随后使用新的编译器来联编 world。 联编的结果会存放在 /usr/obj make buildworld

7.自定义内核
可以通过复制GENERIC配置文件来创建自定义 配置文件# cd /usr/src/sys/amd64/conf/GENERIC /root/MYGENERIC
# cp
GENERIC
MYGENERIC
编辑
MYGENERIC
,添加或删除设备驱动等
通过KERNCONF在命令行上设置内核配置文件来构建自定义内核make buildkernel KERNCONF = MYGENERIC -j4 WERROR=-Wno-bitfield-constant-conversion

8.安装FreeBSD自定义内核# cd /usr/src
# make installkernel KERNCONF= MYGENERIC
# shutdown -r now
# cd /usr/src
# make installworld
# shutdown -r now
FreeBSD内核已经更新了
