Linux下/proc目录详解

Linux下/proc目录详解


  • proc目录总的概述
  • proc下有关进程的目录概述
  • proc下针对Linux系统相关的参数目录概述

/proc目录总的概述

1.首先,我们可以使用ll命令查看下/proc目录,如下

[root@centos6 ~]# ls -l /proc
    total 0
        dr-xr-xr-x.  8 root      root         0 May 19 04:02 1
        dr-xr-xr-x.  8 root      root         0 May 19 04:02 10
        dr-xr-xr-x.  8 root      root         0 May 18 20:02 1078
        dr-xr-xr-x.  8 root      root         0 May 18 20:02 1079
        ...(中间省略)...
        -r--r--r--.  1 root      root         0 May 19 17:39 timer_list
        -rw-r--r--.  1 root      root         0 May 19 17:39 timer_stats
        dr-xr-xr-x.  4 root      root         0 May 19 17:39 tty
        -r--r--r--.  1 root      root         0 May 19 17:39 uptime
        -r--r--r--.  1 root      root         0 May 19 17:39 version
        -r--------.  1 root      root         0 May 19 17:39 vmallocinfo
        -r--r--r--.  1 root      root         0 May 19 17:39 vmstat
        -r--r--r--.  1 root      root         0 May 19 17:39 zoneinfo

2.使用ps aux命令查看下当前系统所有正在运行的进程

[root@centos6 ~]# ps aux
    USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root          1  0.0  0.1  19352  1564 ?        Ss   May18   0:02 /sbin/init
    root          2  0.0  0.0      0     0 ?        S    May18   0:00 [kthreadd]
    root          3  0.0  0.0      0     0 ?        S    May18   0:00 
    ...(中间省略)...
   /sbin/dhclient -d -4 -sf /usr/libexec/nm-dhcp-client.action -pf /var/run/dhcl
    root      27825  0.0  0.4 102104  4140 ?        Ss   14:10   0:00 sshd:  root@pts/4 
    root      27826  0.0  0.4 102104  4152 ?        Ss   14:10   0:00 sshd: root@pts/3 
    root      27833  0.0  0.1 108364  1816 pts/3    Ss   14:10   0:00 -bash
    root      27834  0.0  0.1 108364  1800 pts/4    Ss+  14:10   0:00 -bash
    postfix   28615  0.0  0.3  81040  3436 ?        S    17:44   0:00 pickup -l -t fifo -u
    root      28620  8.0  0.1 110256  1152 pts/3    R+   17:45   0:00 ps aux

3.对比上面的两条命令运行的结果,我们可以发现系统中每个正在运行的进程几乎都在/prom目录下有一个以其进程Id命名的文件夹(/proc/Pid/),但是proc目录下除了这些以进程Id命令的文件夹,还有其他类似/proc/cpuinfo、/proc/pci的文件夹。通过man proc得知proc是一个进程信息伪文件系统,它只存在内存当中,不占用外内存空间。它以文件的方式为访问系统内核数据的操作提供接口。

proc下有关进程的目录概述

1.用ll 查看/proc/1/、 /proc/2 等类似/proc/Pid/的文件夹,可以发现它们有相同的文件夹。如下

[root@centos6 ~]# ll /proc/1
total 0
dr-xr-xr-x. 2 root root 0 May 19 18:25 attr
-rw-r--r--. 1 root root 0 May 19 18:25 autogroup
-r--------. 1 root root 0 May 19 18:25 auxv
-r--r--r--. 1 root root 0 May 19 18:25 cgroup
--w-------. 1 root root 0 May 19 18:25 clear_refs
-r--r--r--. 1 root root 0 May 19 04:02 cmdline
-rw-r--r--. 1 root root 0 May 19 18:25 comm
 ...(中间省略)...
-r--r--r--. 1 root root 0 May 19 04:02 stat
-r--r--r--. 1 root root 0 May 19 18:25 statm
-r--r--r--. 1 root root 0 May 19 17:46 status
-r--r--r--. 1 root root 0 May 19 18:25 syscall
dr-xr-xr-x. 3 root root 0 May 19 18:25 task
-r--r--r--. 1 root root 0 May 19 18:25 wchan

2.下面是/proc/Pid下的常用子目录作用简介

文件名 文件内容
/proc/[pid]/cmdline 进程被启动的命令串
/proc/[pid]/environ 进程的环境变量内容
/proc/[pid]/cwd 指向当前进程运行目录的一个符号链接
/proc/[pid]/exe 指向启动当前进程的执行路径的符号链接
/proc/[pid]/fd 包含当前进程打开的每一个文件的文件描述符的目录
/proc/[pid]/limits 当前进程所使用的每一个受限的软硬件限制和管理单元
/proc/[pid]/maps 当前进程关联到每个可执行文件和库文件在内存中的映射区域及其访问权限所组成的列表
/proc/[pid]/mem 当前进程所占用的内存空间
/proc/[pid]/root 指向当前进程运行根目录的符号链接
/proc/[pid]/stat 当前进程的状态信息
/proc/[pid]/statm 当前进程占用内存的状态信息
/proc/[pid]/status 当前进程的状态信息

proc下针对Linux系统相关的参数目录概述

1.我们可以使用cat查看/proc/cpuinfo 等目录,可以看到与系统相关的一些参数

[root@centos6 ~]# cat /proc/cpuinfo 
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 58
model name  : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz
stepping    : 9
microcode   : 21
cpu MHz     : 2594.139
cache size  : 3072 KB
physical id : 0
siblings    : 1
core id     : 0
cpu cores   : 1
apicid      : 0
initial apicid  : 0
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm ida arat epb pln pts dtherm fsgsbase smep
bogomips    : 5188.27
clflush size    : 64
cache_alignment : 64
address sizes   : 42 bits physical, 48 bits virtual
power management:

2.下面是/proc/Pid下的常用子目录作用简介

文件名 文件内容
/proc/cmdline kernel启动的命令行
/proc/cpuinfo 本机的CPU相关信息
/proc/devices 记录字符和块设备的主设备号,以及分配到这些设备号的设备名称
/proc/filesystems 目前系统已经加载的文件系统
/proc/interrupts 目前系统上面的IRQ分配状态
/proc/ioports 目前系统上各个设备所配置的I/O地址
/proc/kcore 系统的物理内存以core文件格式保存的文件
/proc/loadavg 保存关于CPU和磁盘I/O的负载平均值,其前三列分别表示每1秒钟、每5秒钟及每15秒的负载平均值
/proc/meminfo 内存信息
/proc/modules Linux已经加载的模块列表
/proc/mounts 系统已经挂载的数据
/proc/swaps 当前系统上的交换分区及其空间利用信息
/proc/partitons 系统分区信息
/proc/zoneinfo 显示内存空间的统计信息,对分析虚拟内存行为很有用
/proc/pci 在PCI总线上的每个设备的详细情况
/proc/uptime 系统上次启动以来的运行时间
/proc/version 内核的版本
/proc/net 网卡设备信息
/proc/tty tty设备信息
/proc/bus/* 一些总线的设备、USB设备记录在此
+

原创文章,作者:似梦非雨,如若转载,请注明出处:http://www.178linux.com/76464

(1)
似梦非雨似梦非雨
上一篇 2017-05-20
下一篇 2017-05-20

相关推荐

  • #招聘福利#饿了么/运维核心岗位/上海

    饿了么/运维核心岗位/上海 待遇面谈 具体岗位:         应用运维,核心岗位,负责商家订单系统,有之前的学长带着成长 要求:     1、1-2年以上工作经验,     2、熟悉shell和python,    &nbsp…

    Linux干货 2016-03-18
  • 一个不想被打断腿的人的学习宣言

    听说不晒学习宣言的会被某人打断腿,忍了好几天,思考了好几天,想了想,还是腿比较重要。废话就不多说了。上图~~!  生命中总要去经历一些,好让自己在老的时候回忆起来,不至于说:“哎,怎么就没有去拼一下呢!”

    Linux干货 2016-10-27
  • 马哥教育网络班20期+第二周课程练习

    Table of Contents 1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 目录管理 文件管理 2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。 脚本返回值 命令或路径补全和展开 3、请使用命令行展开功能来完成以下练习: (1)、创建/tmp目录下的:a_c, a_d, b_c, b (2…

    Linux干货 2016-06-23
  • 树 非线性结构 树是n(n >= 0)个元素的集合: (1)每个元素称为结点(node); (2)有一个特定的结点,称为根结点或根(root); (3)除根结点外,其余结点被分成m(m>=0)个互不相交的有限集合,而每个子集又都是一棵树(称为原树的子树Subtree) 注意 n = 0时,称为空树 树只有一个特殊的没有前驱的元素,称为树的根(Ro…

    2017-10-16
  • Linux文件管理类命令相关

    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 1)、查看文件命令: (1)ls命令: list,列出目录下的内容 语法: ls [OPTION]… [FILE]… 常用选项: -a: 显示所有文件,包括隐藏文件; -A:显示除.和..之外的所有文件; -l: –long, 长格式列表,即显示文件的详细属性信息; -h, –huma…

    Linux干货 2016-11-06
  • Linux批量创建用户、passwd、shadow、组管理、group、gshadow、默认配置文件login.defs、切换用户su、提升权限(二)

    Linux批量创建用户、passwd、shadow、组管理、group、gshadow、默认配置文件login.defs、切换用户su、提升权限(二) Linux对于权限的管理非常完善,其强大的权限管理机制体现了它的魅力之处,让无数人为之操碎了心。Linux中的权限既能放也能收,既可以管理整个组的权限,也可以管理单个用户的权限,正是因为有了ACL的加入变得非…

    Linux干货 2016-08-06