FreeBSD下提供了相当丰富的工具可以用来查看系统的状态,使用者可以通过它们来了解系统状态,从而优化系统性能。这些工具通常读取/dev/mem、/dev/kmem来获得内存中的系统信息,使用/kernel将这些信息中的变量转换为名字。最基本的查看系统状态的命令为ps,用于报告当前系统中运行的进程的状态。
pstat能显示系统中打开的文件数量、交换设备的使用率等系统信息。pstat缺省使用/dev/mem设备文件,从系统内存中读取这些数据,或者可以指定一个core文件,那么pstat从这个文件中读取数据。还需要给pstat 一个参数来告诉pstat应该显示那种系统信息,通常使用 “pstat -f” 显示出当前打开文件的列表, “pstat -s” 显示交换设备的当前状态, “pstat -t” 显示当前使用的终端设备文件的状态, “pstat -v” 显示激活的v节点的当前状态。 “pstat -T” 显示这几个系统表的状态,包括当前使用的和可以利用的系统表空间,因此可以用来检查系统在当前负载下是使用多大的系统表,帮助进行优化系统性能。
$ pstat -T
69/8232 files
4M/137M swap space
vmstat报告内核的统计信息,包括进程、虚存、处理器、磁盘等。可以使用 “-w” 参数指定每隔几秒时间,报告一次系统状态。
$ vmstat
procs memory page disks faults cpu
r b w avm fre flt re pi po fr sr wd0 wd1 fd0 in sy cs us sy id
0 0 0 3752 30476 643 0 0 0 19 43 0 0 0 262 2599 85 56 3 41
其他与vmstat类似的命令还有,fstat报告系统中打开文件的信息,可以使用文件名、进程号、用户名,以及指定文件所在的文件系统来限制要显示的文件。iostat报告内核的输入输出统计信息,包括磁盘、终端等设备的I/O 状态。netstat报告网络的有关统计信息。nfsstat显示NFS的统计信息。
除此之外,systat以全屏幕方式显示各种系统统计信息,缺省情况下systat是报告处理器的使用率,包括总利用状态、空闲使用率和各个进程的使用率。通过指定参数,systat也能进行I/O的统计、虚存的统计、网络的统计等,这些参数包括-iostat, -vmstat, -mbufs, -netstat, -ip, -icmp, -tcp, -swap等。
/0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10
Load Average ||
/0 /10 /20 /30 /40 /50 /60 /70 /80 /90 /100
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
root XF86_S3.cx XXXXXXX
wb kpanel XXX
wb kfm XX
wb kbgndwm XX
wb kblankscrn
wb krootwm
wb kwm
除了这些系统提供的命令之外,FreeBSD也提供多种有效的系统工具,如综合ps、systat和vmst at功能的top等。这些软件通常可以在多种Unix系统中使用,也是十分常用的工具。也可以在FreeBSD系统中安装网络管理代理snmpd,然后使用网络管理系统通过网络来获得FreeBSD主机的各种系统信息。