系统管理指南:高级管理

调试进程(pargspreap

pargs 命令和 preap 命令可以改进进程调试。pargs 命令可以列显与实时进程或核心转储文件关联的参数和环境变量。preap 命令可以删除不再存在(僵停)的进程。僵停进程尚不具有由父进程请求的退出状态。这些进程通常是无害的,但如果数量众多,则会占用系统资源。可以使用 pargspreap 命令检查您有权检查的任何进程。作为超级用户,您可以检查任何进程。

有关使用 preap 命令的信息,请参见 preap(1) 手册页。有关使用 pargs 命令的信息,请参见 pargs(1) 手册页。另请参见 proc(1) 手册页。


示例 12–4 调试进程 (pargs)

pargs 命令可以解决一个长期存在的问题,即使用 ps 命令无法显示传递给进程的所有参数。以下示例显示如何通过结合使用 pargs 命令和 pgrep 命令来显示传递给进程的参数。


# pargs `pgrep ttymon`
579:	/usr/lib/saf/ttymon -g -h -p system-name console login:  
-T sun -d /dev/console -l 
argv[0]: /usr/lib/saf/ttymon
argv[1]: -g
argv[2]: -h
argv[3]: -p
argv[4]: system-name console login: 
argv[5]: -T
argv[6]: sun
argv[7]: -d
argv[8]: /dev/console
argv[9]: -l
argv[10]: console
argv[11]: -m
argv[12]: ldterm,ttcompat
548:	/usr/lib/saf/ttymon
argv[0]: /usr/lib/saf/ttymon

以下示例显示如何使用 pargs -e 命令来显示与某一进程关联的环境变量。


$ pargs -e 6763
6763: tcsh
envp[0]: DISPLAY=:0.0