年FreeBSD从入门到精通学习指南
FreeBSD 的版本命名遵循一套清晰的规则,掌握它后,您一眼就能判断系统处于哪个开发阶段。版本号由三个部分组成:主版本号、次版本号以及修正版本号,后面附带一个状态标签,例如 RELEASE、STABLE 或 CURRENT。安装系统时,使用 install.iso 镜像即可满足需求;而 mini.iso 同样可以完成安装,但因其不包含常用软件包,所以体积更小。
硬盘分割表的概念
在 FreeBSD 环境下,IDE 硬盘的设备名称依次为 ad0、ad1……FreeBSD 允许将主分区进一步细分为多个逻辑分区。按照惯例,a 代表根目录,b 用作交换分区,c 表示整个主分区,d 指代整块硬盘,而 efgh 则可自由分配使用。
改变 inode 的设定
若需调整 inode 参数,可以在创建文件系统时按下 N 并输入相应选项,例如 newfs -i 1024 -b 4096 -f 1024。
选安装套件
进行安装时,除了最后两项 local 和 XFree86 之外,其他所有组件建议全部勾选。
在 Configuration Menu 中所做的全部设置都会被保存到 /etc/rc.conf 文件中,后续直接编辑这个文件即可生效。
完成 FreeBSD 安装后,建议及时安装以下常用软件包:vim-lite、less、gnuls、pkg_tree、elm+ME、bash2、unzip、nmap、wget、ncftp3、pstree。
FreeBSD 的目录结构
| /etc/defaults | 系统默认配置文件所在目录 |
| /etc/mtree | 目录权限及结构的定义文件 |
| /etc/periodic | 每日、每周、每月定时任务的配置目录 |
| /usr/ports | FreeBSD Ports 套件集的源代码目录,在此可查找并快速安装所需软件 |
| /usr/src | BSD 内核及其他软件的源代码目录 |
| /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 的软件安装
(此处原文后续内容缺失,但已完整处理当前段落。)
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
微软详解Win11时间点还原 默认每24小时创建恢复点
微软今日推送了最新的 6 月可选更新,并发布博客详细解读了 Win11 全新的“时间点还原”(Point-in-time restore)功能——这一功能本质上是对系统恢复体验的一次全面升级,旨在让用户更轻松地应对电脑故障。 微软表示,面向 Windows 11 客户端用户的“时间点还原”功能现已正
Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验
微软今天推送了Windows 11 26H1设备的6月可选更新KB5095091,安装完成后系统版本号会升级到Build 28000 2340。值得一提的是,这次更新并非面向所有设备,而是专门为搭载高通骁龙X2系列芯片的机型准备的——包括骁龙X2 Plus、X2 Elite和X2 Elite Ext
Win11六月可选更新KB5095093修复回收站弹窗异常
微软已悄然推送Windows 11六月可选更新,编号KB5095093。本次更新覆盖两个版本:24H2用户安装后版本号升级至Build 26100 8737,而25H2用户则更新至Build 26200 8737。 本次更新并非仅是小修小补,而是带来了多项实质性新功能。下面我们就来详细解析这些更新内
苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞
科技媒体 Cult of Mac 昨日(6月23日)发布博文指出,苹果在 macOS 27 Beta 2 更新中悄然封堵了一个此前可用的后门——用户曾能通过一条终端命令绕过候补名单,直接启用新版 Siri AI,如今这一方法已失效。 简要回顾一下:在 macOS 27 Beta 1 阶段,只需在 M
微软加速Win11 25H2推送 覆盖所有符合条件家用PC
近日(6月23日),科技媒体 Windows Latest 发布了一则值得关注的动态:微软已进一步扩大 Windows 11 25H2 的推送范围,所有满足硬件要求、且不受 IT 部门管理的家庭版和专业版设备,现在均可顺利接收本次更新。 此次升级有一个显著特点——采用“启用包”(eKB)方式进行推送
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
相关攻略
2026-06-30 07:39
2026-06-30 07:39
2026-06-30 07:39
2026-06-30 07:38
2026-06-30 07:38
2026-06-30 07:38
2026-06-30 07:38
2026-06-30 07:38
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

