Linux proc目录详解

Linux proc目录详解目录 1 什么是 proc2 proc 目录介绍 2 1 proc cpuinifoCPU 的信息 型号 家族 缓存大小等 2 2 proc meminfo 物理内存 交换空间 2 3 proc mounts 已加载的文件系统的列表 2 4 proc devices 可用设备的列表 2 5 proc filesystems 被支持的文件系统 2 6 proc modules 已加载的模块 2 7 proc virsion 内核版本 2 8 proc cmdl

目录

1. 什么是proc

2.proc目录介绍

2.1 /proc/cpuinifo CPU的信息(型号、家族、缓存大小等)

2.2 /proc/meminfo物理内存、交换空间

2.3 /proc/mounts      已加载的文件系统的列表

2.4 /proc/devices 可用设备的列表

2.5 /proc/filesystems 被支持的文件系统

2.6 /proc/modules 已加载的模块

2.7 /proc/virsion 内核版本

2.8 /proc/cmdline 系统启动时输入的内核命令行参数

2.9 /proc/uptime 获取系统的正常运行时间

2.10 /proc/sys/kernel/ostype 操作系统类型

2.11 /proc/sys/kernel/osrelease 内核版本

2.12 /proc/sys/kernel/hostname  主机名

2.13 /proc/partitions   硬盘设备分区信息

3. 进程信息查看

3.1 /proc/N pid为N的进程信息

3.2 /proc/N/cmdline 进程启动命令

3.3  /proc/N/exe 链接到进程的执行命令文件

3.4 /proc/N/cwd 链接到进程当前工作目录

3.5 /proc/N/environ 进程环境变量列表

3.6 /proc/N/fd 包含进程相关的所有的文件描述符

3.7 /proc/N/stat 进程的状态

3.8 /proc/N/status 进程状态信息,比stat/statm更具可读性

1. 什么是proc

proc是Linux系统下一个很重要的目录。 它跟/etc, /home等这些系统目录不同, 它不是一个真正的文件系统, 而是一个虚拟的文件系统。 它不存在于磁盘, 而是存在于系统内存中。 所以当你使用 ls -al /proc这条命令来查看proc目录时, 会看到其下面的所有文件的大小都为0字节。 proc以文件系统的方式为访问系统内核的操作提供接口。 很多系统的信息, 如内存使用情况, cpu使用情况, 进程信息等等这些信息,都可以通过查看/proc下的对应文件来获得。 proc文件系统是动态从系统内核读出所需信息的。

2.proc目录介绍

2.1 /proc/cpuinifo CPU的信息(型号、家族、缓存大小等)

# cat /proc/cpuinfo system type : sepal_v10 machine : Unknown processor : 0 cpu model : Ingenic Xburst V0.0 FPU V0.0 BogoMIPS : 858.52 wait instruction : yes microsecond timers : no tlb_entries : 32 extra interrupt vector : yes hardware watchpoint : yes, count: 1, address/irw mask: [0x0fff] isa : mips32r1 ASEs implemented : shadow register sets : 1 kscratch registers : 7 core : 0 VCED exceptions : not available VCEI exceptions : not available Hardware : sepal Serial : 00000000 00000000 00000000 00000000

2.2 /proc/meminfo物理内存、交换空间

# cat /proc/meminfo MemTotal: 58720 kB MemFree: 2628 kB Buffers: 1624 kB Cached: 17120 kB SwapCached: 0 kB Active: 26260 kB Inactive: 9276 kB Active(anon): 17188 kB Inactive(anon): 2832 kB Active(file): 9072 kB Inactive(file): 6444 kB Unevictable: 0 kB Mlocked: 0 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 0 kB Writeback: 0 kB AnonPages: 16816 kB Mapped: 10392 kB Shmem: 3228 kB Slab: 6756 kB SReclaimable: 1960 kB SUnreclaim: 4796 kB KernelStack: 816 kB PageTables: 540 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 29360 kB Committed_AS:  kB VmallocTotal:  kB VmallocUsed: 3116 kB VmallocChunk:  kB

2.3 /proc/mounts      已加载的文件系统的列表

# cat /proc/mounts rootfs / rootfs rw 0 0 /dev/root / squashfs ro,relatime 0 0 devtmpfs /dev devtmpfs rw,relatime,size=29224k,nr_inodes=7306,mode=755 0 0 proc /proc proc rw,relatime 0 0 sysfs /sys sysfs rw,relatime 0 0 tmpfs /tmp tmpfs rw,relatime 0 0 /dev/ubi0_0 /data ubifs rw,relatime 0 0 devpts /dev/pts devpts rw,relatime,mode=600,ptmxmode=000 0 0 tmpfs /dev/shm tmpfs rw,relatime 0 0 /dev/mtdblock6 /home squashfs ro,relatime 0 0

2.4 /proc/devices 可用设备的列表

# cat /proc/devices Character devices: 1 mem 2 pty 3 ttyp 4 /dev/vc/0 4 tty 4 ttyS 5 /dev/tty 5 /dev/console 5 /dev/ptmx 7 vcs 10 misc 13 input 89 i2c 90 mtd 108 ppp 116 alsa 128 ptm 136 pts 153 spi 180 usb 188 ttyUSB 189 usb_device 246 USB printer gadget 247 tph 248 ubi0 249 bsg 250 watchdog 251 ptp 252 pps 253 rtc 254 hwinfo Block devices: 259 blkext 8 sd 50 mtdblock 65 sd 66 sd 67 sd 68 sd 69 sd 70 sd 71 sd 128 sd 129 sd 130 sd 131 sd 132 sd 133 sd 134 sd 135 sd 179 mmc

2.5 /proc/filesystems 被支持的文件系统

# cat /proc/filesystems nodev sysfs nodev rootfs nodev bdev nodev proc nodev cgroup nodev cpuset nodev tmpfs nodev devtmpfs nodev debugfs nodev sockfs nodev pipefs nodev anon_inodefs nodev configfs nodev devpts squashfs nodev ramfs vfat fuseblk nodev fuse nodev fusectl nodev mqueue nodev mtd_inodefs nodev ubifs

2.6 /proc/modules 已加载的模块

# cat /proc/modules usb_f_printer 10416 3 - Live 0xc034c000 g_printer 1872 0 - Live 0xc0 libcomposite 27010 2 usb_f_printer,g_printer, Live 0xc0 thermal_printer_nt310  1 - Live 0xc014b000

2.7 /proc/virsion 内核版本

# cat /proc/version Linux version 3.10.14 (lizj@SM2534) (gcc version 4.7.2 (Ingenic r2.3.3 2016.12) ) #1 PREEMPT Wed Mar 23 16:52:34 CST 2022

2.8 /proc/cmdline 系统启动时输入的内核命令行参数

# cat /proc/cmdline console=ttyS1,n8 mem=65504K@0x0 rmem=32K@0x3FF8000 ip=off init=/linuxrc ubi.mtd=8 root=/dev/mtdblock5 rootfstype=squashfs ro

2.9 /proc/uptime 获取系统的正常运行时间

# cat /proc/uptime 14985.88 11766.31

2.10 /proc/sys/kernel/ostype 操作系统类型

# cat /proc/sys/kernel/ostype Linux

2.11 /proc/sys/kernel/osrelease 内核版本

# cat /proc/sys/kernel/osrelease 3.10.14

2.12 /proc/sys/kernel/hostname  主机名

# cat /proc/sys/kernel/hostname alex

2.13 /proc/partitions   硬盘设备分区信息

# cat /proc/partitions major minor #blocks name 50 0 1024 mtdblock0 50 1 1024 mtdblock1 50 2 4096 mtdblock2 50 3 4096 mtdblock3 50 4 8192 mtdblock4 50 5 8192 mtdblock5 50 6 4096 mtdblock6 50 7 4096 mtdblock7 50 8  mtdblock8

3. 进程信息查看

3.1 /proc/N pid为N的进程信息

# ls /proc/ 1 46 。。。。。。

3.2 /proc/N/cmdline 进程启动命令

# cat /proc/153/cmdline APP1

3.3  /proc/N/exe 链接到进程的执行命令文件

# ls -al /proc/153/exe lrwxrwxrwx 1 root root 0 Aug 21 2014 /proc/153/exe -> /home/bin/APP1

3.4 /proc/N/cwd 链接到进程当前工作目录

# ls /proc/153/cwd/ bin etc lib32 mnt root sys var data home linuxrc opt run tmp dev lib media proc sbin usr

3.5 /proc/N/environ 进程环境变量列表

# cat /proc/153/environ USER=rootSHLVL=2LD_LIBRARY_PATH=.:/home/libHOME=/TERM=vt102PATH=/sbin:/usr/sbin:/bin:/usr/bin:/home/bin:/data/binSHELL=/bin/shPWD=/

3.6 /proc/N/fd 包含进程相关的所有的文件描述符

# ls /proc/153/fd 0 1 2 3 4 5 6

3.7 /proc/N/stat 进程的状态

# cat /proc/153/stat 153 (APP1) S 1 152 152 0 -1  448 0 4 0 84 182 0 0 20 0 2 0 454  394       0 0 4102 0  0 0 18 0 0 0 0 0 0        0

3.8 /proc/N/status 进程状态信息,比stat/statm更具可读性

# cat /proc/153/status Name: APP1 State: S (sleeping) Tgid: 153 Pid: 153 PPid: 1 TracerPid: 0 Uid: 0 0 0 0 Gid: 0 0 0 0 FDSize: 32 Groups: VmPeak: 13720 kB VmSize: 13720 kB VmLck: 0 kB VmPin: 0 kB VmHWM: 1584 kB VmRSS: 1576 kB VmData: 8376 kB VmStk: 136 kB VmExe: 36 kB VmLib: 4300 kB VmPTE: 16 kB VmSwap: 0 kB Threads: 2 SigQ: 1/456 SigPnd: 00000000000000000000000000000000 ShdPnd: 00000000000000000000000000000000 SigBlk: 00000000000000000000000000000000 SigIgn: 00000000000000000000000000001006 SigCgt: 00000000000000000000000 CapInh: 0000000000000000 CapPrm: 0000001fffffffff CapEff: 0000001fffffffff CapBnd: 0000001fffffffff Seccomp: 0 Cpus_allowed: 1 Cpus_allowed_list: 0 Mems_allowed: 1 Mems_allowed_list: 0 voluntary_ctxt_switches: 16359 nonvoluntary_ctxt_switches: 284

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/208962.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 上午10:22
下一篇 2026年3月19日 上午10:22


相关推荐

  • mybatis的collection属性_安全带的使用方法和步骤

    mybatis的collection属性_安全带的使用方法和步骤问题1==>n问题选项//问题实体类publicclassQuestion{ private Stringid;//ID private Stringcontent;//问题 private Stringtype;//问题类型1:单选,2:多选,3:问答 private Integersort;//排序 privateList<Questi…

    2022年8月22日
    6
  • php 数组转字符串拼接 字符串转数组分割

    php 数组转字符串拼接 字符串转数组分割1 join implode 函数拆解数组为字符串 lt php arr array hello world str join arr implode 函数相同效果 echo str 输出 hello world gt 2 explode 函数指定字符分割字符串为数组 lt

    2025年7月5日
    4
  • eNSP常用命令 华为模拟器eNSP常用命令

    eNSP常用命令 华为模拟器eNSP常用命令路由器常用命令 进入任务视图给路由器取名 进入指定接口 给当前路由器接口配置 IP 地址和子网掩码 退出接口或系统视图 启用 DHCP 指定该接口拥有 DHCP 功能 指定 DNS 服务器的 IP 地址 显示全部 ip 的路由表 显示指定 ip 路由表 添加静态路由 交换机常用命令 交换机改变语言模式 创建 vlan 查看所有 vlan 将接口拆分为多个子接口 指定接口与哪个 vlan 关联 启用 arp 广播 将接口修改为 access 接口 将接口修改为 trunk 接口 将接口划分到指定 vlan 里 查看开启 stp 后的交换机接口的接口情况 查看交换

    2026年3月16日
    1
  • C语言移位运算符

    C语言移位运算符位移位运算符是将数据看成二进制数 对其进行向左或向右移动若干位的运算 位移位运算符分为左移和右移两种 均为双目运算符 第一运算对象是移位对象 第二个运算对象是所移的二进制位数 位移位运算符的运算对象 运算规则与结果 结合性如表 2 16 所示 移位时 移出的位数全部丢弃 移出的空位补入的数与左移还是右移花接木有关 如果是左移 则规定补入的数全部是 0 如果是右移 还与被移位的数据是否

    2026年3月20日
    2
  • 【数字图像处理】一.MFC详解显示BMP格式图片

    【数字图像处理】一.MFC详解显示BMP格式图片本文主要是讲述 数字图像处理 系列栏目中的第一篇文章 主要详细介绍了 BMP 图片格式 同时使用 C 和 MFC 显示 BMP 格式 主要结合自己的 数字图像处理 课程和以前的项目叙述讲解 一 BMP 图片格式定义 BMP 文件格式是 Windows 操作系统推荐和支持的标准图像文件格式 是一种将内存或显示器的图像数据不经过压缩而直接按位存盘的文件格式 故称位图 bitmap 其扩展名为 BMP BMP 图像通常

    2026年3月19日
    2
  • MongoDB 3 分片集群安装配置「建议收藏」

    MongoDB 3 分片集群安装配置

    2022年3月2日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号