版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lemontree1945/article/details/124688251
目录
2.1 /proc/cpuinifo CPU的信息(型号、家族、缓存大小等)
2.5 /proc/filesystems 被支持的文件系统
2.8 /proc/cmdline 系统启动时输入的内核命令行参数
2.10 /proc/sys/kernel/ostype 操作系统类型
2.11 /proc/sys/kernel/osrelease 内核版本
2.12 /proc/sys/kernel/hostname 主机名
2.13 /proc/partitions 硬盘设备分区信息
3.6 /proc/N/fd 包含进程相关的所有的文件描述符
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: 471412 kB
-
VmallocTotal: 1048372 kB
-
VmallocUsed: 3116 kB
-
VmallocChunk: 1044980 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 0xc0342000
-
libcomposite 27010 2 usb_f_printer,g_printer, Live 0xc0334000
-
thermal_printer_nt310 1932531 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,115200n8 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 227328 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 1077960960 448 0 4 0 84 182 0 0 20 0 2 0 454 14049280 394 2147483647 4194304 4228320 2147352704 2147352312 2002778740 0 0 4102 0 4294967295 0 0 18 0 0 0 0 0 0 4296704 4297032 4300800 2147356509 2147356514 2147356514 2147356653 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: 00000000000000000000000180000000
-
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