游乐游手机版
首页/系统平台/文章详情

年FreeBSD从入门到精通学习指南

时间:2026-06-20 10:22
FreeBSD 的版本命名遵循一套清晰的规则,掌握它后,您一眼就能判断系统处于哪个开发阶段。版本号由三个部分组成:主版本号、次版本号以及修正版本号,后面附带一个状态标签,例如 RELEASE、STABLE 或 CURRENT。安装系统时,使用 install iso 镜像即可满足需求;而 mini

FreeBSD 的版本命名遵循一套清晰的规则,掌握它后,您一眼就能判断系统处于哪个开发阶段。版本号由三个部分组成:主版本号、次版本号以及修正版本号,后面附带一个状态标签,例如 RELEASE、STABLE 或 CURRENT。安装系统时,使用 install.iso 镜像即可满足需求;而 mini.iso 同样可以完成安装,但因其不包含常用软件包,所以体积更小。

硬盘分割表的概念

在 FreeBSD 环境下,IDE 硬盘的设备名称依次为 ad0ad1……FreeBSD 允许将主分区进一步细分为多个逻辑分区。按照惯例,a 代表根目录,b 用作交换分区,c 表示整个主分区,d 指代整块硬盘,而 efgh 则可自由分配使用。

改变 inode 的设定

若需调整 inode 参数,可以在创建文件系统时按下 N 并输入相应选项,例如 newfs -i 1024 -b 4096 -f 1024

选安装套件

进行安装时,除了最后两项 localXFree86 之外,其他所有组件建议全部勾选。

在 Configuration Menu 中所做的全部设置都会被保存到 /etc/rc.conf 文件中,后续直接编辑这个文件即可生效。

完成 FreeBSD 安装后,建议及时安装以下常用软件包:vim-litelessgnulspkg_treeelm+MEbash2unzipnmapwgetncftp3pstree

FreeBSD 的目录结构

/etc/defaults系统默认配置文件所在目录
/etc/mtree目录权限及结构的定义文件
/etc/periodic每日、每周、每月定时任务的配置目录
/usr/portsFreeBSD Ports 套件集的源代码目录,在此可查找并快速安装所需软件
/usr/srcBSD 内核及其他软件的源代码目录
/var/account用户执行过的命令记录文件存放位置
/var/db系统核心数据库文件存储目录
/var/quotas文件系统磁盘配额使用情况的记录

修改、编译核心

内核配置文件位于 /usr/src/sys/i386/conf,其中包含两个关键文件:GENERIC 是安装时使用的通用内核,LINT 则提供了完整的内核配置选项及其说明文档。

编译新核心的常用选项

启用磁盘配额:options QUOTA

监控用户活动:pseudo-device snp

NAT 相关配置选项:

  • options IPFIREWALL(提供防火墙支持)
  • options IPDIVERT(支持网络地址转换)
  • options IPFIREWALL_DEFAULT_TO_ACCEPT(默认允许所有数据包通过,否则需要在 /etc/rc.firewall 中手动配置规则)
  • options IPFIREWALL_VERBOSE(记录防火墙数据包日志)
  • options IPFIREWALL_VERBOSE_LIMIT=10(限制每条规则记录的日志条数,防止日志文件过大)
  • options IPFIREWALL_FORWARD(支持数据包转发,配合 fwd 动作使用)
  • options DUMMYNET(通过 pipe 限制带宽)

编译核心的两种方法

方法一(传统方式):

config GENERIC
cd ../../compile/GENERIC/
make depend; make; make install

方法二(FreeBSD 4.2-STABLE 之后推荐使用):

cd /usr/src
make buildkernel KERNCONF=GENERIC
make installkernel KERNCONF=GENERIC
cd /; rm -rf /usr/src/sys/compile/GENERIC
sync; sync; sync; reboot

新核心出问题时怎么办

如果编译后的新内核无法正常启动,请在开机倒计时期间按任意键进入 boot: 提示符。首先输入 unload 卸载当前加载的内核模块,然后输入 /kernel.old 尝试使用旧内核。若旧内核同样无法启动,可改为使用安装时的原始内核 /kernel.GENERIC。如需删除损坏的内核文件,请先修改文件属性:执行 chflags noschg /kernel

建立友善的使用者接口

编辑 /etc/csh.cshrc~/.cshrc(适用于 tcsh 或 csh shell),添加别名:alias ls gnuls --color -F。若希望所有新用户都能自动使用此设置,请修改 /usr/share/skel/dot.cshrc。修改 PATH 及其他环境变量时,同样编辑 /usr/share/skel 目录下的对应文件。

常见环境变量

  • EDITOR:指定默认文本编辑器
  • PAGER:指定分页程序(如 more 或 less)

支持中文的环境(仅 tcsh、csh)

编辑 /etc/csh.login

setenv ENABLE_STARTUP_LOCALE zh_TW.Big5
# 远程登录时才能正常输入中文
setenv LC_CTYPE is_IS.ISO_8859-1
# 控制台下才能正常输入中文
setenv LANG zh_TW.Big5

如果使用 bash,请改用 export 语法进行设置。

若要取消登录后自动显示的系统信息,只需修改 /etc/motd 文件。如果不想显示 FreeBSD 版本信息,请在 /etc/rc.conf 中添加 update_motd="YES"

FreeBSD 的账号管理

创建新用户:adduser
创建新用户组:pw groupadd newgroup
查看用户组信息:pw groupshow newgroup
编辑密码文件:vipw

FreeBSD 采用 shadow password 机制保护密码安全,只有 root 用户才能读取编码后的 /etc/master.passwd 文件。但系统实际验证时使用的是数据库文件 /etc/spwd.db/etc/pw.db。因此,修改 master.passwd 后需要执行 pwd_mkdb 重建数据库。不过,使用 vipw 命令会自动完成这一步骤。

删除用户:rmuser

FreeBSD 磁盘配额

启用磁盘配额需执行以下三步:

  • 在内核配置中添加 options QUOTA 并重新编译内核。
  • /etc/rc.conf 中加入 enable_quotas="YES"
  • /etc/fstab 中,需要启用配额的分区在 Options 列的 rw 后面添加 ,userquota

重启系统后,使用 edquota -u username 来限制用户配额。在 FreeBSD 4.5-RELEASE 版本中,系统默认会在开机时检查所有用户的配额;若希望跳过此检查,可在 /etc/rc.conf 中加入 check_quotas="NO"

FreeBSD 网络相关指令

ftp -a:以匿名身份自动登录 FTP 服务器。
sockstat:查看主机上的 internet 或 domain socket 信息。可以通过该命令了解哪些用户连接到了本机、由哪个服务处理、对应的 PID 是多少,同时还能查看本机开放了哪些端口以及提供了哪些服务。

/etc 下的档案介绍

  • csh.cshrc:csh/tcsh 使用的默认 .cshrc 文件,进入 shell 时加载的配置。
  • csh.login:csh/tcsh 使用的默认 .login 文件,登录时加载的配置。
  • defaults/make.conf:通常会将此文件复制到 /etc 下,使用 Ports 安装软件时会参考其中的设置。将其中的 FTP 站点修改为距离国内较近的镜像源可以显著提升下载速度。
  • login.access:用于控制用户登录系统的权限,例如是否允许从控制台登录、不同区域登录的权限等。
  • login.conf:控制不同账号能够使用的系统资源。系统会根据密码文件中的 login class 查找对应配置,未分类的账号则使用 default 配置。修改后需要执行 cap_mkdb /etc/login.conf 重建数据库。
  • newsyslog.conf:定期检查 /var/log/ 下的日志文件,设定当日志达到指定大小或特定时间时自动压缩备份,并删除过旧的存档。语法格式:logfilename [owner:group] mode count size when [ZB] [/pid_file] [sig_num]
logfilename日志文件的路径及名称
[owner:group]文件所属用户和用户组
mode日志文件的权限(八进制表示)
count最多保留的压缩备份数量,例如 cron 设为 3,则表示保留 cron.0.gz 至 cron.3.gz 共4个文件
size文件大小阈值(KB),超过此值将进行压缩备份
when备份触发时间。以 @ 开头表示 ISO 8601 格式的时间;以 $ 开头表示每天/每周/每月的定时规则。例如:
$D0 表示每天午夜12点,$D23 表示每天23:00,$W0D23 表示每周日23:00,$W5D16 表示每周五16:00,$MLD0 表示每月最后一天午夜12点,$M5D6 表示每月第5天6:00
[ZB]Z 表示使用 gzip 压缩,B 表示该文件为二进制文件
[/pid_file]守护进程 PID 文件的绝对路径
[sig_num]发送给守护进程的信号编号

FreeBSD 的软件安装

(此处原文后续内容缺失,但已完整处理当前段落。)

来源:https://www.jb51.net/os/Unix/1480.html
上一篇FreeBSD常用命令与packages使用教程 下一篇FreeBSD软件安装命令与包管理教程
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
微软详解Win11时间点还原 默认每24小时创建恢复点
系统平台 · 2026-06-30

微软详解Win11时间点还原 默认每24小时创建恢复点

微软今日推送了最新的 6 月可选更新,并发布博客详细解读了 Win11 全新的“时间点还原”(Point-in-time restore)功能——这一功能本质上是对系统恢复体验的一次全面升级,旨在让用户更轻松地应对电脑故障。 微软表示,面向 Windows 11 客户端用户的“时间点还原”功能现已正

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验
系统平台 · 2026-06-30

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验

微软今天推送了Windows 11 26H1设备的6月可选更新KB5095091,安装完成后系统版本号会升级到Build 28000 2340。值得一提的是,这次更新并非面向所有设备,而是专门为搭载高通骁龙X2系列芯片的机型准备的——包括骁龙X2 Plus、X2 Elite和X2 Elite Ext

Win11六月可选更新KB5095093修复回收站弹窗异常
系统平台 · 2026-06-30

Win11六月可选更新KB5095093修复回收站弹窗异常

微软已悄然推送Windows 11六月可选更新,编号KB5095093。本次更新覆盖两个版本:24H2用户安装后版本号升级至Build 26100 8737,而25H2用户则更新至Build 26200 8737。 本次更新并非仅是小修小补,而是带来了多项实质性新功能。下面我们就来详细解析这些更新内

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞
系统平台 · 2026-06-30

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞

科技媒体 Cult of Mac 昨日(6月23日)发布博文指出,苹果在 macOS 27 Beta 2 更新中悄然封堵了一个此前可用的后门——用户曾能通过一条终端命令绕过候补名单,直接启用新版 Siri AI,如今这一方法已失效。 简要回顾一下:在 macOS 27 Beta 1 阶段,只需在 M

微软加速Win11 25H2推送 覆盖所有符合条件家用PC
系统平台 · 2026-06-30

微软加速Win11 25H2推送 覆盖所有符合条件家用PC

近日(6月23日),科技媒体 Windows Latest 发布了一则值得关注的动态:微软已进一步扩大 Windows 11 25H2 的推送范围,所有满足硬件要求、且不受 IT 部门管理的家庭版和专业版设备,现在均可顺利接收本次更新。 此次升级有一个显著特点——采用“启用包”(eKB)方式进行推送