proc被称为虚拟文件系统,它是一个控制中心,可以通过更改其中某些文件改变内核运行状态,
它也是内核提空给我们的查询中心,用户可以通过它查看系统硬件及当前运行的进程信息。
Linux中许多工具的数据来源正是proc目录中的内容,比如lsmod的命令是cat /proc/modules的别名。
/proc目录下常用文件介绍:
- /proc/loadavg 前三列分别保存最近1分钟,5分钟,及15分钟的平均负载。
- /proc/meminfo 当前内存使用信息
- /proc/diskstats 磁盘I/O统计信息列表
- /proc/net/dev 网络流入流出统计信息
- /proc/filesystems 支持的文件系统
- /proc/cpuinfo CPU的详细信息
- /proc/cmdline 启动时传递至内核的启动参数,通常由grub进行传递
- /proc/mounts 系统当前挂在的文件系统
- /proc/uptime 系统运行时间
- /poc/version 当前运行的内核版本号等信息
进程目录下常用文件介绍
cmdline
/proc/[pid]/cmdline
,保存了当前进程的启动命令
cwd
/proc/[pid]/cwd
一个符号链接,执行进程的运行目录
exe
/proc/[pid]/exe
exe是一个软链接,指向进程的可执行文件,通过它可以启动当前进程的一个拷贝
environ
/proc/[pid]/environ
当前进程关联的环境变量。
fd
/proc/[pid]/fd
包含了进程打开的每一个文件的文件描述符,这些描述符是指向实际文件的符号链接。可以通过它恢复删除的文件
limits
/proc/[pid]/limits
显示当前进程的资源限制。
status
/proc/[pid]/status
查看进程状态。