首页   快速返回

linux系统proc文件系统介绍     所属分类 linux
proc文件系统 伪文件系统/虚拟文件系统 存储当前内核运行状态的一系列特殊文件
可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可以通过更改其中某些文件来改变内核的运行状态。
可以用cat、more或者less进行查看
文件本身的大小显示为0字节 
这些特殊文件中大多数文件的时间及日期属性通常为当前系统时间和日期,这跟它们随时会被刷新(存储于RAM中)有关。


网络流量 /proc/net/dev
内存使用 /proc/meminfo
cpu使用  /proc/stat
磁盘io  /proc/diskstats    zabbix中磁盘使用情况就是从diskstats采集


/proc/diskstats各列含义介绍以及磁盘使用率计算方式说明
http://blog.51cto.com/tryagaintry/1975943

/proc 目录中包含许多以数字命名的子目录,数字表示系统当前正在运行进程的进程号

某个进程目录下的信息 
cmdline
environ 
当前进程的环境变量列表,彼此间用空字符(NULL)隔开;变量用大写字母表示,其值用小写字母表示; 

fd 目录 包含当前进程打开的每一个文件的文件描述符(file descriptor)

limits 资源限制
maps  当前进程关联到的每个可执行文件和库文件在内存中的映射区域及其访问权限所组成的列表
stat 当前进程的状态信息,包含一系统格式化后的数据列,可读性差,通常由ps命令使用; 
statm 当前进程占用内存的状态信息,通常以“页面”(page)表示; 
status  与stat所提供信息类似,但可读性较好
task  目录 包含当前进程运行的每一个线程的相关信息


/proc/apm 
高级电源管理(APM)版本信息及电池相关状态信息,通常由apm命令使用; 

/proc/buddyinfo 
用于诊断内存碎片问题的相关信息文件; 

/proc/cmdline 
在启动时传递至内核的相关参数信息,这些信息通常由lilo或grub等启动管理工具进行传递

/proc/cpuinfo 
处理器的相关信息的文件; 

/proc/crypto 
系统上已安装的内核使用的密码算法及每个算法的详细信息列表; 

/proc/devices 
系统已经加载的所有块设备和字符设备的信息,包含主设备号和设备组(与主设备号对应的设备类型)名

/proc/diskstats 
每块磁盘设备的磁盘I/O统计信息列表;(内核2.5.69以后的版本支持此功能) 

/proc/dma 
每个正在使用且注册的ISA DMA通道的信息列表; 

/proc/fb 
帧缓冲设备列表文件,包含帧缓冲设备的设备号和相关驱动信息; 

/proc/filesystems 
当前被内核支持的文件系统类型列表文件,被标示为nodev的文件系统表示不需要块设备的支持;通常mount一个设备时,如果没有指定文件系统类型将通过此文件来决定其所需文件系统的类型; 

/proc/interrupts 
X86或X86_64体系架构系统上每个IRQ相关的中断号列表;多路处理器平台上每个CPU对于每个I/O设备均有自己的中断号; 

/proc/iomem 
每个物理设备上的记忆体(RAM或者ROM)在系统内存中的映射信息; 

/proc/ioports 
当前正在使用且已经注册过的与物理设备进行通讯的输入-输出端口范围信息列表

/proc/loadavg 
保存关于CPU和磁盘I/O的负载平均值,其前三列分别表示每1秒钟、每5秒钟及每15秒的负载平均值,类似于uptime命令输出的相关信息

/proc/locks 
保存当前由内核锁定的文件的相关信息,包含内核内部的调试数据;

/proc/mdstat 
保存RAID相关的多块磁盘的当前状态信息

/proc/meminfo 
系统中关于当前内存的利用状况等的信息,常由free命令使用

/proc/modules 
当前装入内核的所有模块名称列表,可以由lsmod命令使用,也可以直接查看

/proc/partitions 
块设备每个分区的主设备号(major)和次设备号(minor)等信息,同时包括每个分区所包含的块(block)数目

/proc/pci 
内核初始化时发现的所有PCI设备及其配置信息列表,其配置信息多为某PCI设备相关IRQ信息,可读性不高,可以用“/sbin/lspci –vb”命令获得较易理解的相关信息;在2.6内核以后,此文件已为/proc/bus/pci目录及其下的文件代替; 

/proc/slabinfo 
在内核中频繁使用的对象(如inode、dentry等)都有自己的cache,即slab pool,而/proc/slabinfo文件列出了这些对象相关slap的信息

/proc/stat 

/proc/swaps 
当前系统上的交换分区及其空间利用信息,如果有多个交换分区的话,则会每个交换分区的信息分别存储于/proc/swap目录中的单独文件中,而其优先级数字越低,被使用到的可能性越大

/proc/uptime 
系统启动以来的运行时间
第一个数字表示系统运行时间,第二个数字表示系统空闲时间,单位是秒

/proc/version 
当前系统运行的内核版本号

/proc/vmstat 
当前系统虚拟内存的多种统计数据,信息量可能会比较大,这因系统而有所不同,可读性较好

上一篇     下一篇
linux监控利器dstat

学术界和工业界做研发的区别

非阿里的同学如何判断自己的级别

2018年InfoWorld最佳开源数据平台

2018年度十大网络用语

那些年ofo的广告文案