FreeBSD 配置经验
2017-08-31 12:36
148 查看
概述
与 Linux 的差异
安装与配置
在 UEFI 下引导 FreeBSD
使用 GRUB2 引导 FreeBSD
无线网络配置
服务管理
包管理
pkg
Ports
系统版本升级
相比
开发模式差异:
社区规模差异:
镜像命名规则如下:
镜像类型分为以下几类:
后缀名
刻录镜像使用
以
从
引导
在
在
使用
默认无线网卡名称为
之后启动网络服务:
连接未加密的无线网络,不需要使用
可以使用service命令来管理服务:
开机自启动的服务,以及一些系统配置存放在
例如,需要开机自启动
常见的一些服务配置:
之后更新
编译
使用源码编译的软件包安装后同样受到
升级到指定版本,执行指令:
以
之后系统会开始下载升级所需要的补丁,下载完成之后,执行更新指令:
与 Linux 的差异
安装与配置
在 UEFI 下引导 FreeBSD
使用 GRUB2 引导 FreeBSD
无线网络配置
服务管理
包管理
pkg
Ports
系统版本升级
概述
FreeBSD是开源、自由的
Unix Like操作系统。
FreeBSD继承自
BSD(
Berkeley Software Distribution)系列,是正统的
Unix分支,但由于法律原因,
FreeBSD不能称为
Unix。
相比
Linux,
FreeBSD更加贴近传统
Unix的设计风格。
与 Linux 的差异
授权协议差异:Linux使用
GPLv2许可证,许可证兼容性较差,内核二次开发需要继续开源代码,直接导致一些使用其它许可证的开源技术无法并入
Linux内核,如
ZFS文件系统
FreeBSD使用
BSD许可证,许可证宽松,有多家公司基于
FreeBSD进行商业性的二次开发,如
Apple的
macOS、
Sony的
Play Station 3/4等
开发模式差异:
Linux项目仅仅包含内核开发,上游工具链由不同的团队维护,同时有众多基于
Linux内核的发行版
FreeBSD项目是完整的操作系统,包含内核、设备驱动、工具链、文档等,关注度和商业宣传不如
Linux,开发团队规模较小,对于新
社区规模差异:
Linux商业宣传优秀,社会关注度高,开发团队庞大,对于新硬件、新技术有较好支持
FreeBSD开发团队规模较小,开发进度较慢,对新硬件的支持较为缓慢
安装与配置
FreeBSD官方
FTP站点提供了镜像下载,地址为
ftp://ftp.freebsd.org/pub/FreeBSD。
ISO-IMAGES目录下即为正式发布版本的镜像,选择匹配的
CPU架构和版本即可。
镜像命名规则如下:
FreeBSD-[版本号]-RELEASE-[CPU架构]-[镜像类型].img/iso
镜像类型分为以下几类:
bootonly后缀名为
iso,仅供启动引导使用
disc1后缀名为
iso,基本镜像,包含基本软件包
dvd1后缀名为
iso,包含大量常用软件包
memstick后缀名
img,刻录使用镜像,包含基本软件包
memstick-mini后缀名
img,刻录使用镜像,包含核心软件包,最小化安装使用
后缀名
iso的镜像用于虚拟机启动,后缀名
img的镜像用于刻盘安装。
刻录镜像使用
dd指令,并需要添加部分参数,以
amd64架构的
memstick-mini镜像为例,刻录指令如下:
# dd if='FreeBSD-[版本]-RELEASE-amd64-memstick-mini.img' of='/dev/[磁盘id]' bs=1M conv=sync
在 UEFI 下引导 FreeBSD
FreeBSD 10开始引入
UEFI启动支持,
FreeBSD 10运行在
UEFI模式下需要下载独立的带有
uefi名称的镜像版本。
以
FreeBSD 10.3为例,对应的
amd64刻录镜像名称为
FreeBSD-10.3-RELEASE-amd64-uefi-memstick.img。
从
FreeBSD 11开始,镜像均支持
UEFI启动,不再区分是否带有
uefi。
引导
UEFI模式安装的
FreeBSD需要下载
iso格式的镜像,解压后提取
/boot/boot1.efi文件。
在
ESP分区中创建
FreeBSD目录,将
boot1.efi文件拷贝到其中。
在
UEFI BIOS中手动选取
boot1.efi文件作为系统引导项,重启即可在
UEFI模式下引导安装完成的
FreeBSD系统。
使用 GRUB2 引导 FreeBSD
在grub.conf文件中为
FreeBSD创建启动项,指定
FreeBSD启动文件
boot1.efi的位置,配置如下:
menuentry 'FreeBSD' { insmod part_gpt insmod fat set root='hd0,gpt1' chainloader /EFI/FreeBSD/boot1.efi # FreeBSD efi文件的实际路径 }
使用
boot1.efi文件引导
FreeBSD相比直接通过
GRUB2启动BSD内核的方式更加简单,无需复杂的引导配置。
无线网络配置
命令行环境下配置无线网络推荐使用wpa_supplicant工具。
FreeBSD源内提供的
wpa_supplicant工具默认未生成配置文件,需要自行在
/etc路径下创建
wpa_supplicant.conf。
wpa_supplicant.conf配置模版如下所示:
network={ ssid="无线网ssid" psk="密码" }
默认无线网卡名称为
ath0。将无线配置写入
/etc/rc.conf中:
wlan_ath0="wlan0" ifconfig_wlan="WPA DHCP"
之后启动网络服务:
# service netif start
连接未加密的无线网络,不需要使用
wpa_supplicant.conf,直接在
/etc/rc.conf中添加:
wlans_ath0="wlan0" ifconfig_wlan0="ssid [无线网ssid] DHCP”
服务管理
FreeBSD采用传统的
BSD风格的
init系统,服务项在
/etc/rc.d目录下。
可以使用service命令来管理服务:
# service [服务名称] [start | stop | status]
开机自启动的服务,以及一些系统配置存放在
/etc/rc.conf文件中。
例如,需要开机自启动
ssh服务则可以将
sshd_enable="YES"加入
rc.conf文件中。
常见的一些服务配置:
hostname="MacBook" //主机名称 ifconfig_em0="DHCP" //网络DHCP ifconfig_em0_ipv6="inet6 accept_rtadv" //ipv6 sshd_enable="YES" //ssh服务 ntpd_enable="YES" //时间同步服务 powerd_enable="YES" //电源管理服务 dumpdev="AUTO" //内核错误转储服务
包管理
FreeBSD同时提供了基于源码编译软件包的
Ports系统和基于预编译二进制包的
pkg包管理。
pkg
FreeBSD 10之后引入了新的
pkg工具用于管理软件包,常用指令类似与
yum/apt/dnf:
# pkg install [软件包名称] # pkg search [软件包名称] # pkg remove [软件包名称] # pkg autoremove [软件包名称] # pkg info //查询所有已安装的软件包 # pkg info [软件包名称] //查询某个软件包的具体信息(包括软件包的文件组成,依赖关系,来源等)
Ports
Ports系统提供了官方源内所有软件包的源码树,编译安装前能够定制编译参数,控制依赖项。
Ports源码树位于
/usr/ports目录之,首次使用前需要初始化
Ports树,执行:
# portsnap fetch extract
之后更新
Ports树执行:
# portsnap update
编译
Ports树下某个软件包的源码只需进入对应的源码目录中,执行以下步骤:
make config进入交互式界面,配置编译依赖
make执行编译操作
make install编译完成后执行安装操作
make clean安装完成后清理编译生成的临时文件
使用源码编译的软件包安装后同样受到
pkg包管理器的管理。
系统版本升级
FreeBSD并非滚动发行版,系统有严格的版本划分。
FreeBSD升级系统版本需要使用升级工具
freebsd-update。
升级到指定版本,执行指令:
# freebsd-update -r [版本号-发布状态] upgrade
以
FreeBSD 10.1正式版,执行指令:
# freebsd-update -r 10.1-RELEASE upgrade
之后系统会开始下载升级所需要的补丁,下载完成之后,执行更新指令:
# /usr/sbin/freebsd-update install
相关文章推荐
- apache和php之间协同工作的配置经验分享
- 安装和配置fedora19要做的那些事,超值经验
- FCKeditor.NET的配置、扩展与安全性经验交流
- 【经验帖】Ubuntu12.04安装cuda6.0以及配置Nsight开发环境教程
- FreeBSD系统,bugzilla, testlink, svn, ftp等LDAP 配置所在文件及位置
- mysql的配置经验谈
- AX负载均衡配置经验漫谈(2) - 会话保持 推荐
- 经验分享 | 通过adbd配置漏洞在安卓设备上提升权限
- AX负载均衡配置经验漫谈(1) - 健康检查 推荐
- Linux系统配置优化的几个经验
- Ionic 介绍、安装、配置、项目不同平台编译、DeBug调试经验总结
- freebsd 9.0 多个ADSL并行配置
- 在FREEBSD配置apache和tomcat的启动
- FreeBSD下SSH配置
- FreeBSD下安装配置Hadoop集群(二)
- Tomcat5.0下成功配置servlet经验谈
- Nginx缩略图和Fastdfs整合以及image_filter配置,7点经验结论和5个参考资料
- FCKeditor.NET的配置、扩展与安全性经验交流
- CCS3.1 DSP/BIOS 配置工具使用经验
- Ubuntu12.04配置NVIDIA cuda5.5经验帖