Linux/proc文件系统操作指南

本文详细介绍了Linux系统的/proc文件系统,包括进程信息(如cmdline, cwd, environ, exe, fd等),以及acpi、asound、buddyinfo、bus、cmdline等系统信息。通过/proc,我们可以获取进程的状态、内存使用、设备信息等关键数据,对系统管理和监控具有重要意义。" 12946291,1511599,解决UITableView子视图重叠问题,"['iOS开发', 'Swift', 'UITableView', 'UI设计', '内存管理']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、数字目录或文件

按进程号排序的活动进程
`u-s f,t8|F"~q0例如下面的1ITPUB个人空间 W4W1n yT%Utf`T3e:{
ls /proc/1
zZ P5twU2}J kO1a0attr  auxv  cmdline  cwd  environ  exe  fd  loginuid  maps  mem  mounts  root  stat  statm  status  task  wchan

1)cmdline:启动进程的命令和参数

2)cwd:一个指向进程当前工作目录的链接
} ?Y7YZSJ4X0 例如要知道进程sshd的目录目录。ITPUB个人空间 d0W {%BE2sTyq
 oot root 0 Mar  2 20:01 wchan
(Gu/j8y?9YqP I"N0# ps -ef|grep sshdITPUB个人空间BA l.@v0_5F
root      2509     1  0 19:17 ?        00:00:00 /usr/sbin/sshdITPUB个人空间 o B#| hF)~ D_@)j%x
取得sshd的进程号:2509

# ls -al /proc/2509/cwd
.?6P)^5X%Q0lrwxrwxrwx  1 root root 0 Mar  2 20:00 /proc/2509/cwd -> /
H$` g,F }Y ACB0知道sshd的工作目录是根目录

3)environ:进程的环境变量ITPUB个人空间,~BWQFS[(z M9Z&@.m+p
以上面的sshd进程为例
w%a y I%vRqO @P0SELINUX_INIT=YESCONSOLE=/dev/pts/0TERM=linuxINIT_VERSION=sysvinit-2.85PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/binRUNLEVEL=5runlevel=5PWD=/LANG=en_US.UTF-8PREVLEVEL=Nprevious=NHOME=/SHLVL=2_=/sbin/initlog

4)exe
#?A}(I{&?.A-|0也是一个符号链接,指向被执行的二进制代码。ITPUB个人空间*y-j/j ]+Y;k)O
ls -al exe
L!DQHa0lrwxrwxrwx  1 root root 0 Mar  2 19:17 exe -> /usr/sbin/sshd

5)fdITPUB个人空间2ia%H*M+i!Q Q
进程所有打开的文件描述符,以文件描述符命名。指向了进程当前正在使用的文件

 0-std input, 1-std output, 2-std err.
yt3L;R d#S0lrwx------  1 root root 64 Mar  2 20:08 0 -> /dev/null
+N!A#U9GR*h3n0lrwx------  1 root root 64 Mar  2 20:08 1 -> /dev/nullITPUB个人空间N%k8A4j.q
lrwx------  1 root root 64 Mar  2 20:08 2 -> /dev/nullITPUB个人空间 ])?lN![/D/h
lrwx------  1 root root 64 Mar  2 20:08 3 -> socket:[6132]

6)maps
3p.Fh0s~:_/w}[0包含当前映象内存区和他们的访问许可,
!G^D^Tn@_6V8i u0cat maps
4`uQ;hO0address    perms offset dev   inode  filename
xe`F`I}+f9X000111000-001e5000 r-xp 00000000 fd:00 393602     /lib/libcrypto.so.0.9.7aITPUB个人空间qn.C(^b}iM;zL
001e5000-001f6000 rw-p 000d3000 fd:00 393602     /lib/libcrypto.so.0.9.7a
S(VA _y P3]0001f6000-001fa000 rw-p 001f6000 00:00 0
q0as,uu/Bb0001fa000-00209000 r-xp 00000000 fd:00 716543     /usr/lib/libz.so.1.2.1.2ITPUB个人空间 GI:PW-Ht*Dw
00209000-0020a000 rw-p 0000e000 fd:00 716543     /usr/lib/libz.so.1.2.1.2
h5J"x cG00020a000-0021d000 r-xp 00000000 fd:00 716749     /usr/lib/libgssapi_krb5.so.2.2ITPUB个人空间3qyF rg,bG:^oOh
0021d000-0021e000 rw-p 00013000 fd:00 716749     /usr/lib/libgssapi_krb5.so.2.2ITPUB个人空间R:a|{`S&d&F
0021e000-0023e000 r-xp 00000000 fd:00 716747     /usr/lib/libk5crypto.so.3.0
D-GN2~4o R A U,Gh"H00023e000-0023f000 rw-p 00020000 fd:00 716747     /usr/lib/libk5crypto.so.3.0
'E%C]}W/HoZ0...............
X5a1e@&|IwB0第一列是进程所占据的地址空间
i,L De#Ug /bu0第二列r:read,w:write,x:execute,s:share,p:private,
T/w#b/ ~!z0第三列:表示offset,文件等偏移量。
/P[)~$t:II[#b0第四列:dev设备号
)zCe9~%}+^"HA0第五列:inode设备节点号,0表示没有节点与内存相对应

7)menITPUB个人空间"wgcz/
进程访问内存/dev/men设备的通道?

8)rootITPUB个人空间~Ga'I iE
指向root文件系统

9)statITPUB个人空间:C:L#G6?;M[ }w
可以被PS命令使用的进程的一些状态信息
/z!N-kq G S"~0ps命令输出的一些字段信息改日补上

2、acpi
a E o:|EL)Z P0acpi信息

3、asoundITPUB个人空间GPP'c0cyk
声音信息,如声卡驱动之类

4、buddyinfo
]&^ @z/{8I0eg(@F0系统中每个内存区的每个order有多少块可用

5、bus

6、cmdline
V"dVMt C wG0显示内核的启动参数

7、cpuinfo
]_,{7x3C:?,B$j0当前系统CPU的详细信息
,{tkE5?/mO(X4{0# cat cpuinfo
x,T:A$A/6hTL0processor       : 0ITPUB个人空间m!v Q6}rJ kR0m
vendor_id       : GenuineIntelITPUB个人空间!q2/,^m/FJ
cpu family      : 15ITPUB个人空间S,B1HR1q"_:]c;}a
model           : 2ITPUB个人空间5cOa8?E _Bl4k)I
model name      : Intel(R) Celeron(R) CPU 2.40GHz
7xa+~6L1F0stepping        : 8
joP2_#He0cpu MHz         : 2405.715
LugCb)~6_D0cache size      : 128 KB
hP|/V @5R#K{ n0fdiv_bug        : no
+| n)h%fD"x8kS0hlt_bug         : noITPUB个人空间0JNBH5B,D_c F9B
f00f_bug        : no
mG1O!uf0coma_bug        : noITPUB个人空间&IGJw${'{K x
fpu             : yesITPUB个人空间W.]-M5r#`$_8v4M
fpu_exception   : yesITPUB个人空间F/u'/K3ha1W
cpuid level     : 2
In6? DVc2F_J0wp              : yes
R^v^] zh0flags           : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss
Z6~6WG%W2c`0bogomips        : 4472.83

8、crypto

9、devices
hW lr?!A T/.a0这个文件列出字符和块设备的主设备号,以及分配到这些设备号的设备名称
#q O$R.PMu0# cat devices
/|x U0x)FttX `0Character devices:ITPUB个人空间 Y+^rar*H
  1 mem
Z5fT*UH_l0  4 /dev/vc/0ITPUB个人空间!r uVb1HO"|
  4 ttyITPUB个人空间/ z7c c M4c8ir
  4 ttySITPUB个人空间+Oa},OyF$Jn
  5 /dev/tty
/w$s rln*xDy0  5 /dev/consoleITPUB个人空间E k D*YGJ)DH
  5 /dev/ptmx
hp!Cm{0`Y0  6 lp
@ k.pxv,x0  7 vcsITPUB个人空间D W{dex^w"Q
 10 misc
)fZsq+H8^H.u0 13 input
P D"Jq B#Wtb0 14 soundITPUB个人空间L,d#t-[@9E.y
 29 fb
%A'sz IW)KW N//r0 36 netlinkITPUB个人空间 J1T r?)l GH VT}
 89 i2c
0t$r'g_[9B1d{0116 alsa
P'F;n:JUd/a@0128 ptm
FVK)m(wQ*y&Gn0136 pts
EJ,D PL$O0|U(B0162 raw
:W'Utb*N,x0180 usb

Block devices:
:j;k6As'Z)t1^T UeS0  1 ramdisk
w4k5H,kX#M0  2 fd
K*rH6h8Pv3wNF.i+yG0  8 sd
e[3_.z)Uk0  9 mdITPUB个人空间!yx5B/YA4]0e
 22 ide1
"/+E5]#T h.H)D!k2wf0 65 sd
:fP+B%I`l G.y5{0 66 sd
r2Xh H`!Gc0 67 sdITPUB个人空间^"N ?Q6Y3S!xu
 68 sdITPUB个人空间*D2xsw&K%H`6ge
 69 sd
t4bLI v w)UH0 70 sdITPUB个人空间{3D8j D-r w
 71 sd
H u'_U+qC'Z%N HVI0128 sd
!q+fqh(N`7s:}0129 sdITPUB个人空间q*ebE f,H7Ua(G
130 sdITPUB个人空间t-O$G/Cl4~G"A
131 sdITPUB个人空间L0z-m GT[_
132 sdITPUB个人空间,qt$xm c2`Dh0?
133 sdITPUB个人空间p,Vu6J!Zv:c
134 sd
@z]!Ww1s$d0135 sd
:NwSoNQ8Tt0253 device-mapperITPUB个人空间 l(jT+@:G{
254 mdp

系统所有可用字符和块设备
nCKLRc+P/m010、diskstats
Y/[DIaX)w011、dma
&V%bvoTk*M0当前可用的通道信息

# cat dmaITPUB个人空间x6oBk:@rZX0?
 4: cascade

12、driver
"f"SGg{?0l&XZ0包含被内核使用的各种驱动信息

13、execdomains
b(W,iZ%k7W0列出被LINUX内核支持的运行网域,连同他们支持的其他性质

14、fb
-AP-L9UL1?5c S0包含进程打开的文件句柄

15、filesystems
*o5z:hz2QX5V;ANS0当前系统支持的文件系统列表
b2G h"_(q0# cat /proc/filesystems
6]+V;Q8{BWv7i0nodev   sysfsITPUB个人空间 y#Ol3Oc n
nodev   rootfs
9TY[b'X[0nodev   bdev
7TD.F6h5L6?*S'[E0nodev   proc
}-OP7ZEAs v}0nodev   sockfs
:KtO$gm9N3s0nodev   binfmt_misc
7dr9T1| X0nodev   usbfsITPUB个人空间` W,R y9Z?.x
nodev   usbdevfs
UK#V-H4mq|0nodev   futexfs
t4Q9VS0np0nodev   tmpfsITPUB个人空间Y6]BF t4n
nodev   pipefsITPUB个人空间 o%IW*Wd-i|F
nodev   eventpollfsITPUB个人空间#u A&a_ _
nodev   devptsITPUB个人空间$J3Fo8S/AM1k9W)O/cy
        ext2ITPUB个人空间j4c5/[!^(O0[
nodev   ramfs
Bu,u,s8[8|E-R0nodev   hugetlbfs
0px%j2R4j*x0t0        iso9660
1rW x,W%S0nodev   relayfs
]9P!Oz0U ]'e}0nodev   mqueueITPUB个人空间~| FQ@:A9j:^
nodev   selinuxfs
[&LYR*{#t TR7v2f4s0        ext3
.i8Z ga,@w$f0nodev&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值