linux系统进程目录下常用文件介绍,linux系统进程目录


说明

proc目录下所有以数字全名的目录,都有一个进程id与该目录名一一对应,如httpd的进程为8293,则可以在/proc/8293目录下找到该进程的相关信息;进程退出后该进程id对应的目录也会消失

1、cmdline
与/proc/cmdline相似,保存了当前进程的启动命令 2、cwd
链接符号,指向进程的运行目录 3、exe
链接符号,指向进程的可执行文件,通过/proc/[id]/exey启动一个该程序的副本 4、environ
与进程相关的环境变量
~ cat /proc/29941/environ
USER=vincentLOGNAME=vincentHOME=/home/vincentPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/gamesMAIL=/var/mail/vincentSHELL=/usr/bin/zshSSH_CLIENT=192.168.50.38 63250 33893SSH_CONNECTION=192.168.50.38 63250 192.168.10.33 33893SSH_TTY=/dev/pts/1TERM=xterm-256colorXDG_SESSION_ID=26397XDG_RUNTIME_DIR=/run/user/1000DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/busLANG=en_US.UTF-8LANGUAGE=en_US:en
5、fd:包括了进程打开的每个文件的文件描述符(file descriptor),该目录下的文件是指向实际文件的链接符号

可以统计该目录下文件个数统计该进程打开了多少个文件,也可以直接读取文件,就像直接读取文件一样
* 6、limits:保存了进程使用系统资源的限制信息
* 7、task: 该进程所有线程的信息都在该目录下,每个线程的相关信息都保存在该目录下一个由线程号(tid)全名的目录中

?  29941 tree -L 2 task
task
└── 29941
    ├── attr
    ├── auxv
    ├── cgroup
    ├── children
    ├── clear_refs
    ├── cmdline
    ├── comm
    ├── cpuset
    ├── cwd -> /proc/29941
    ├── environ
    ├── exe -> /bin/zsh
    ├── fd
    ├── fdinfo
    ├── gid_map
    ├── io
    ├── limits
    ├── loginuid
    ├── maps
    ├── mem
    ├── mountinfo
    ├── mounts
    ├── net
    ├── ns
    ├── numa_maps
    ├── oom_adj
    ├── oom_score
    ├── oom_score_adj
    ├── pagemap
    ├── personality
    ├── projid_map
    ├── root -> /
    ├── sched
    ├── schedstat
    ├── sessionid
    ├── setgroups
    ├── smaps
    ├── stack
    ├── stat
    ├── statm
    ├── status
    ├── syscall
    ├── uid_map
    └── wchan

8 directories, 36 files

相关内容