FreeBSD一些常用的命令
专有命令
-
pkg
FreeBSD 使用
pkg
作为包管理工具类似于Debian的apt
或 Fedora 的dnf
pkg install <package>
pkg search <package>
pkg delete <package>
-
fstat
fstat
是 FreeBSD 中一个用于显示打开文件的详细信息的命令。它类似于 Linux 中的lsof
命令fstat -p <PID>
-
sockstat
FreeBSD 系统中用于显示当前打开的网络套接字状态的命令。它类似于 Linux 中的
ss
sockstat -l
-
freebsd-update
FreeBSD 特有的命令,用于二进制更新系统
freebsd-update fetch
freebsd-update install
freebsd-update upgrade -r 12.1-RELEASE
freebsd-update install
shutdown -r now
freebsd-update install
-
bsdinstall
这是 FreeBSD 的安装工具,类似于 Fedora 的
anaconda
或 Debian 的debian-installer
bsdinstall
-
freebsd-version
用于显示 FreeBSD 系统的版本信息
freebsd-version
-
pw
用于管理用户和组,类似于 Linux 中的
useradd
和groupadd
,但有更多特性创建/删除用户组:
pw groupadd users -g 100
pw groupdel users
创建/删除用户
pw useradd usr1 -u 1026 -g 100 -s /usr/local/bin/bash -d /home/usr1
pw userdel usr1
修改用户到组:
pw usermod usr1 -g users
添加用户到属组:
pw groupmod users -m usr1
pw usermod squid -G wheel
-
mtree
用于检查和验证文件系统的完整性
mtree -c -K sha256digest -p /usr/local > /var/db/mtree/usr.local.dist
mtree -f /var/db/mtree/usr.local.dist -p /usr/local
-
dump
FreeBSD 特有的备份工具
dump -0 -f /backup/root.dump /
-
restore
FreeBSD 特有的恢复工具
restore -r -f /backup/root.dump
-
sysrc
sysrc
是 FreeBSD 中的一个命令行工具,用于管理系统配置文件/etc/rc.conf
和/etc/rc.conf.d/
中的配置项sysrc sshd_enable="YES"
sysrc -a
sysrc -l
-
jail
FreeBSD 独有的轻量级虚拟化技术,类似于 Linux 的容器,但有自己的独特实现
jail
jls
jexec
磁盘管理
-
gpart
用于磁盘分区管理,虽然 Linux 也有类似工具(如
fdisk
和parted
),但gpart
是 FreeBSD 特有的gpart show
gpart add
gpart delete
-
geom
GEOM 是 FreeBSD 的一个模块化块设备框架,提供了对磁盘设备进行高级管理的能力,比如磁盘分区、加密、RAID 等功能
geom disk list
geom label list
-
camcontrol
用于管理 SCSI 和 ATA 设备
camcontrol devlist
camcontrol inquiry
-
growfs
growfs
是 FreeBSD 中用于扩展已存在的文件系统的命令sysrc growfs_enable="YES"
启动growfs
growfs /dev/ada0p
通用命令及差异
-
netstat
bsd
netstat
命令与linuxnetstat
命令有较大区别netstat -an # 示活动的网络连接 [linux&bsd] -rn # 显示路由表 [linux&bsd] -i # 显示接口统计信息 [linux&bsd] -s # 显示协议统计信息 [linux&bsd] -l # 显示监听端口 [linux] -p # 显示监听端口的程序/PID [linux] -t # 显示TCP链接 [linux] -u # 显示UDP链接 [linux] -u # 显示UDP链接 [linux]
bsd查看监听端口:
netstat -na -f inet | grep LISTEN
-
service
FreeBSD 用 rc.d 管理服务进程,虽然 Linux 中也有
service
命令,但 FreeBSD 的service
命令具有一些特有的功能和用法启用服务:
service <service_name> enable
启动服务:
service <service_name> start
终止服务:
service <service_name> stop
查看启用服务:
service -e
查看全部服务:
service -l
-
sysctl
虽然 Linux 也有
sysctl
命令,但 FreeBSD 的sysctl
有一些不同的参数和用法sysctl -a
sysctl hw.model
sysctl kern.version
-
dd
尽管 Linux 也有
dd
命令,但 FreeBSD 的 dd 命令支持一些 Linux 不常见的选项,如iflag=direct
-
top/ps
用于查看进程与Linux类似
-
vmstat
用于查看内存使用情况与Linux类似
内核工具
bsd与linux内核各自独立开发采用的工具也各不相同
-
kenv
用于查看和设置内核环境变量
kenv
kenv hw.model
kenv boot_serial
-
kldload
用于加载内核模块类似Linux的
modprobe xxx
, FreeBSD可通过kldload
加载内核模块, 也可通过配置/boot/loader.conf
自动加载kldload pf.ko # 加载pf模块
kldstat # 查看已经加载的内核模块
shell
chsh -s /usr/local/bin/bash
$HOME/.profile
:
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi