1.什么是proc目录
proc是Linux系统下一个很重要的目录。它跟/etc,
/home等这些系统目录不同,它不是一个真正的文件系统,而是一个虚拟的文件系统。它不存在于磁盘,而是存在于系统内存中,难怪文件夹的名字叫做proc进程。所以当你使用
ls -al /proc这条命令来查看proc目录时,会看到其下面的所有文件的大小都为0字节。
proc以文件系统的方式为访问系统内核的操作提供接口。很多系统的信息,如内存使用情况,
cpu使用情况,进程信息等等这些信息,都可以通过查看/proc下的对应文件来获得。proc文件系统是动态从系统内核读出所需信息的。
2.初识proc目录
proc目录下具体有哪些文件呢?
/proc 目录下的文件
查看proc目录下的文件的内容,如 #cat /proc/devices
/proc/cpuinifo CPU的信息(型号、家族、缓存大小等)
/proc/meminfo物理内存、交换空间
/proc/mounts 已加载的文件系统的列表
/proc/devices 可用设备的列表,这个文件列出字符和块设备的主设备号,以及分配到这些设备号的设备名称。
/proc/filesystems 被支持的文件系统
/proc/modules 已加载的模块
/proc/virsion 内核版本
/proc/cmdline 系统启动时输入的内核命令行参数
/proc/XXX XXX是指以进程PID(数字编号)命名的目录,每一个目录表示一个进程(即线程组)。
/proc/swaps 要获知swap空间的使用情况
/proc/uptime 获取系统的正常运行时间
/proc/fs/nfsd/exports 列出由NFS共享的文件系统
/proc/kmsg 该文件被作为内核日志信息源,它可以被作为一个系统信息调用的接口使用
/proc/self -- 到当前进程/proc目录的符号链接,通过这个目录可以获取当前运行进程的信息。
/proc/pci -- 挂接在PCI总线上的设备
/proc/tty/driver/serial --串口配置、统计信息
/proc/version -- 系统版本信息
/proc/sys/kernel/ostype
/proc/sys/kernel/osrelease
/proc/sys/kernel/version
/proc/sys/kernel/hostname -- 主机名
/proc/sys/kernel/domainname -- 域名
/proc/partitions -- 硬盘设备分区信息
/proc/sys/dev/cdrom/info -- CDROM信息
/proc/locks -- 当前系统中所有的文件锁
/proc/loadavg -- 系统负荷信息
/proc/uptime -- 系统启动后的运行时间
3.从proc窥看系统详情
很多系统命令在读取系统信息的时候,其实是从proc目录下读取对应的文件来获得的。所以如果我们不使用这些命令, 直接到proc目录下去查看对应文件,也是可以获得对应的信息的。 下面举几个例子:

     操作     系统命令     proc对应目录
  获取系统版本信息   uname -a或者lsb_release   /proc/version或者/proc/sys/kernel/hostname[,domainname,  osrelease, ostype, version]
  获取系统负载信息   top或者w或者uptime   /proc/loadavg
  获取内存使用情况     free   /proc/meminfo
  获取CPU使用情况     top   /proc/cpuinfo
  获取进程运行情况   ps aux或者top   /proc/N[N为对应的PID号]

对于查看进程信息一栏,做下补充:
/proc/N pid为N的进程信息
/proc/N/cmdline 进程启动命令
/proc/N/cwd 链接到进程当前工作目录
/proc/N/environ 进程环境变量列表
/proc/N/exe 链接到进程的执行命令文件
/proc/N/fd 包含进程相关的所有的文件描述符
/proc/N/maps 与进程相关的内存映射信息
/proc/N/mem 指代进程持有的内存,不可读
/proc/N/root 链接到进程的根目录
/proc/N/stat 进程的状态
/proc/N/statm 进程使用的内存的状态
/proc/N/status 进程状态信息,比stat/statm更具可读性
/proc/self 链接到当前正在运行的进程

原文:https://blog.csdn.net/oyhb_1992/article/details/77715346

转载自:http://blog.csdn.net/kevinx_xu/article/details/8178746

/proc 文件系统下的多种文件提供的系统信息不是针对某个特定进程的, 而是能够在整个系统范围的上下文
中使用。可以使用的文件随系统配置的变化而变化。命令procinfo 能够显示基于其中某些文件的多种系统
信息。
以下详细描述/proc 下的文件:
/proc/cmdline 文件
这个文件给出了内核启动的命令行。它和用于进程的cmdline 项非常相似。
示例:

[root@localhost proc]# cat cmdline
ro root=LABEL=/ rhgb quiet

/proc/cpuinfo 文件
这个文件提供了有关系统CPU 的多种信息。这些信息是从内核里对CPU 的测试代码中得到的。文件列出
了CPU 的普通型号 (386,486,586,686 等 ), 以及能得到的更多特定信息 ( 制造商, 型号和版本 ) 。 文件还包含
了以bogomips 表示的处理器速度, 而且如果检测到CPU 的多种特性或者bug, 文件还会包含相应的标志。这
个文件的格式为:文件由多行构成, 每行包括一个域名称, 一个冒号和一个值。
示例:

[root@localhost proc]# cat cpuinfo
processor : vendor_id : AuthenticAMD cpu family : model : model name : AMD Athlon(tm) XP + stepping : cpu MHz : 1530.165 cache size : KB fdiv_bug : no hlt_bug : no f00f_bug : nocoma_bug : no fpu : yes fpu_exception : yes cpuid level : wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow bogomips : 2998.27

/proc/devices 文件
这个文件列出字符和块设备的主设备号, 以及分配到这些设备号的设备名称。
示例:

[root@localhost /]# cat /proc/devices

Character devices:

 mem

 /dev/vc/

 tty

 ttyS

 /dev/tty

 /dev/console

 /dev/ptmx

 lp

 vcs

 misc

 input

 sound

 fb

 netlink

 alsa

 ptm

 pts

 usb

Block devices:

 ramdisk

 fd

 ide0

 md

 ide1

 device-mapper

 mdp

/proc/dma
这个文件列出由驱动程序保留的DMA 通道和保留它们的驱动程序名称 。casade 项供用于把次DMA 控制器
从主控制器分出的DMA 行所使用; 这一行不能用于其它用途。
示例:

[root@localhost ~]# cat /proc/dma
: cascade

/proc/filesystems 文件
这个文件列出可供使用的文件系统类型, 一种类型一行 。 虽然它们通常是编入内核的文件系统类型, 但该文件
还可以包含可加载的内核模块加入的其它文件系统类型。
示例

[root@localhost proc]# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev sockfs
nodev binfmt_misc
nodev usbfs
nodev usbdevfs
nodev futexfs
nodev tmpfs
nodev pipefs
nodev eventpollfs
nodev devpts
ext2
nodev ramfs
nodev hugetlbfs
iso9660
nodev mqueue
nodev selinuxfs
ext3
nodev rpc_pipefs
nodev autofs

/proc/interrupts 文件
这个文件的每一行都有一个保留的中断 。 每行中的域有 : 中断号, 本行中断的发生次数, 可能带有一个加号的
域(SA_INTERRUPT 标志设置), 以及登记这个中断的驱动程序的名字。可以在安装新硬件前, 像查看
/proc/dma 和/proc/ioports 一样用cat 命令手工查看手头的这个文件 。 这几个文件列出了当前投入使用的资源
(但是不包括那些没有加载驱动程序的硬件所使用的资源 ) 。
示例:

[root@localhost SPECS]# cat /proc/interruptsCPU0
: XT-PIC timer
: XT-PIC i8042
: XT-PIC cascade
: XT-PIC uhci_hcd
: XT-PIC VIA8233, uhci_hcd
: XT-PIC rtc
: XT-PIC acpi
: XT-PIC ehci_hcd
: XT-PIC uhci_hcd, eth0
: XT-PIC i8042
: XT-PIC ide0
: XT-PIC ide1
NMI:
ERR:

proc/ioports 文件
这个文件列出了诸如磁盘驱动器, 以太网卡和声卡设备等多种设备驱动程序登记的许多I/O 端口范围。
示例:

[root@localhost SPECS]# cat /proc/ioports
-001f : dma1
- : pic1
- : timer0
- : timer1
-006f : keyboard
- : rtc
-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
- : ide1
01f0-01f7 : ide0
- : ide1
-037a : parport0
037b-037f : parport0
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial
- : PM1a_EVT_BLK
- : PM1a_CNT_BLK
-080b : PM_TMR
- : ACPI CPU throttle
- : GPE0_BLK0cf8-0cff : PCI conf1
dc00-dcff : ::12.0
dc00-dcff : via-rhine
e000-e0ff : ::11.5
-e0ff : VIA8233
e400-e41f : ::10.0
e400-e41f : uhci_hcd
e800-e81f : ::10.1
e800-e81f : uhci_hcd
ec00-ec1f : ::10.2
ec00-ec1f : uhci_hcd
fc00-fc0f : ::11.1
fc00-fc07 : ide0
fc08-fc0f : ide1

/proc/kcore 文件
这个文件是系统的物理内存以core 文件格式保存的文件。例如,GDB 能用它考察内核的数据结构。它不是
纯文本, 而是/proc 目录下为数不多的几个二进制格式的项之一。
示例:

[root@tan ~]# cat /proc/ioports
-0cf7 : PCI Bus :
-001f : dma1
- : PNP0001:
- : pic1
- : timer0
- : timer1
- : keyboard
- : PNP0800:
- : keyboard
- : rtc0
-008f : dma page reg
00a0-00a1 : PNP0001:
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
- : ::07.1
- : ata_piix
01f0-01f7 : ::07.1
01f0-01f7 : ata_piix
- : ::07.1
- : ata_piix
03c0-03df : vga+
03f6-03f6 : ::07.1
03f6-03f6 : ata_piix
03f8-03ff : serial
04d0-04d1 : PNP0001:
0cf0-0cf1 : pnp :
0cf8-0cff : PCI conf1
0d00-feff : PCI Bus :
-103f : ::07.3
- : ACPI PM1a_EVT_BLK
- : ACPI PM1a_CNT_BLK
-100b : ACPI PM_TMR
100c-100f : ACPI GPE0_BLK
- : ACPI CPU throttle
-104f : ::07.3
-104f : pnp :
-106f : ::07.1
-106f : ata_piix
-107f : ::0f.
-107f : vmwgfx probe
-10bf : ::07.7
-10bf : vmw_vmci
-14ff : ::10.0
-3fff : PCI Bus :
-203f : ::01.0
-203f : e1000
-207f : ::02.0
-207f : Ensoniq AudioPCI
-209f : ::00.0
-209f : uhci_hcd
-4fff : PCI Bus :
-5fff : PCI Bus :0b
-6fff : PCI Bus :
-7fff : PCI Bus :1b
-8fff : PCI Bus :
-9fff : PCI Bus :0c
a000-afff : PCI Bus :
b000-bfff : PCI Bus :1c
c000-cfff : PCI Bus :
d000-dfff : PCI Bus :0d
e000-efff : PCI Bus :
fce0-fcff : pnp :

/proc/kmsg 文件

这个文件用于检索用printk 生成的内核消息。任何时刻只能有一个具有超级用户权限的进程可以读取这个
文件。也可以用系统调用syslog 检索这些消息。通常使用工具dmesg 或守护进程klogd 检索这些消息。
示例:

              暂无

/proc/ksyms 文件
这个文件列出了已经登记的内核符号; 这些符号给出了变量或函数的地址 。 每行给出一个符号的地址, 符号名
称以及登记这个符号的模块。程序ksyms,insmod 和kmod 使用这个文件。它还列出了正在运行的任务数,
总任务数和最后分配的PID 。
示例:

                暂无

/proc/loadavg 文件
这个文件给出以几个不同的时间间隔计算的系统平均负载, 这就如同uptime 命令显示的结果那样 。 前三个数
字是平均负载 。 这是通过计算过去1 分钟,5 分钟,15 分钟里运行队列中的平均任务数得到的 。 随后是正在运行
的任务数和总任务数。最后是上次使用的进程号。

[root@tan ~]# cat /proc/loadavg
0.00 0.01 0.12 /

/proc/locks 文件
这个文件包含在打开的文件上的加锁信息。文件中的每一行描述了特定文件和文档上的加锁信息以及对文
件施加的锁的类型。内核也可以需要时对文件施加强制性锁。
示例:

[root@tan ~]# cat /proc/locks
: POSIX ADVISORY WRITE :: EOF
: FLOCK ADVISORY WRITE :: EOF
: FLOCK ADVISORY WRITE :: EOF
: FLOCK ADVISORY WRITE :: EOF

/proc/mdstat 文件
这个文件包含了由md 设备驱动程序控制的RAID 设备信息。
示例:

[root@tan ~]# cat /proc/mdstat
Personalities :
unused devices: <none>

/proc/meminfo 文件
这个文件给出了内存状态的信息 。 它显示出系统中空闲内存, 已用物理内存和交换内存的总量 。 它还显示出
内核使用的共享内存和缓冲区总量。这些信息的格式和free 命令显示的结果类似。
示例:

[root@tan ~]# cat /proc/meminfo
MemTotal: kB
MemFree: kB
MemAvailable: kB
Buffers: kB
Cached: kB
SwapCached: kB
Active: kB
Inactive: kB
Active(anon): kB
Inactive(anon): kB
Active(file): kB
Inactive(file): kB
Unevictable: kB
Mlocked: kB
SwapTotal: kB
SwapFree: kB
Dirty: kB
Writeback: kB
AnonPages: kB
Mapped: kB
Shmem: kB
Slab: kB
SReclaimable: kB
SUnreclaim: kB
KernelStack: kB
PageTables: kB
NFS_Unstable: kB
Bounce: kB
WritebackTmp: kB
CommitLimit: kB
Committed_AS: kB
VmallocTotal: kB
VmallocUsed: kB
VmallocChunk: kB
HardwareCorrupted: kB
AnonHugePages: kB
CmaTotal: kB
CmaFree: kB
HugePages_Total:
HugePages_Free:
HugePages_Rsvd:
HugePages_Surp:
Hugepagesize: kB
DirectMap4k: kB
DirectMap2M: kB
DirectMap1G: kB

/proc/misc 文件
这个文件报告用内核函数misc_register 登记的设备驱动程序。
示例:

[root@tan ~]# cat /proc/misc
vsock
vmci
network_throughput
network_latency
cpu_dma_latency
mcelog
crash
agpgart
hw_random
nvram
hpet
autofs
snapshot
vga_arbiter

/proc/modules 文件
这个文件给出可加载内核模块的信息 。lsmod 程序用这些信息显示有关模块的名称, 大小, 使用数目方面的信
息。
示例:

[root@tan ~]# cat -n /proc/modules
ip6t_rpfilter - Live 0xffffffffc087f000
ipt_REJECT - Live 0xffffffffc087a000
nf_reject_ipv4 ipt_REJECT, Live 0xffffffffc0875000
ip6t_REJECT - Live 0xffffffffc0870000
nf_reject_ipv6 ip6t_REJECT, Live 0xffffffffc086b000
xt_conntrack - Live 0xffffffffc0859000
ip_set - Live 0xffffffffc085e000
nfnetlink ip_set, Live 0xffffffffc084d000
ebtable_nat - Live 0xffffffffc0848000
ebtable_broute - Live 0xffffffffc0854000
bridge ebtable_broute, Live 0xffffffffc0822000
stp bridge, Live 0xffffffffc081d000
llc bridge,stp, Live 0xffffffffc0814000
ip6table_nat - Live 0xffffffffc080f000
nf_conntrack_ipv6 - Live 0xffffffffc0809000
nf_defrag_ipv6 nf_conntrack_ipv6, Live 0xffffffffc07fb000
nf_nat_ipv6 ip6table_nat, Live 0xffffffffc07f2000
ip6table_mangle - Live 0xffffffffc07ed000
ip6table_security - Live 0xffffffffc07e8000
ip6table_raw - Live 0xffffffffc07e3000
iptable_nat - Live 0xffffffffc07de000
nf_conntrack_ipv4 - Live 0xffffffffc07d9000
nf_defrag_ipv4 nf_conntrack_ipv4, Live 0xffffffffc07cc000
nf_nat_ipv4 iptable_nat, Live 0xffffffffc07c3000
nf_nat nf_nat_ipv6,nf_nat_ipv4, Live 0xffffffffc07d1000
nf_conntrack xt_conntrack,nf_conntrack_ipv6,nf_nat_ipv6,nf_conntrack_ipv4,nf_nat_ipv4,nf_nat, Live 0xffffffffc07a1000
iptable_mangle - Live 0xffffffffc079c000
iptable_security - Live 0xffffffffc0797000
iptable_raw - Live 0xffffffffc0792000
ebtable_filter - Live 0xffffffffc078d000
ebtables ebtable_nat,ebtable_broute,ebtable_filter, Live 0xffffffffc077f000
ip6table_filter - Live 0xffffffffc077a000
ip6_tables ip6table_nat,ip6table_mangle,ip6table_security,ip6table_raw,ip6table_filter, Live 0xffffffffc072a000
iptable_filter - Live 0xffffffffc071b000
vmw_vsock_vmci_transport - Live 0xffffffffc076d000
vsock vmw_vsock_vmci_transport, Live 0xffffffffc0707000
edac_mce_amd - Live 0xffffffffc0765000
crc32_pclmul - Live 0xffffffffc0725000
ghash_clmulni_intel - Live 0xffffffffc0711000
aesni_intel - Live 0xffffffffc0735000
lrw aesni_intel, Live 0xffffffffc0716000
gf128mul lrw, Live 0xffffffffc0702000
glue_helper aesni_intel, Live 0xffffffffc06fd000
ppdev - Live 0xffffffffc06f7000
ablk_helper aesni_intel, Live 0xffffffffc0720000
cryptd ghash_clmulni_intel,aesni_intel,ablk_helper, Live 0xffffffffc06e9000
vmw_balloon - Live 0xffffffffc06f1000
snd_seq_midi - Live 0xffffffffc064c000
snd_seq_midi_event snd_seq_midi, Live 0xffffffffc06e4000
joydev - Live 0xffffffffc06de000
pcspkr - Live 0xffffffffc063f000
snd_ens1371 - Live 0xffffffffc0619000
snd_rawmidi snd_seq_midi,snd_ens1371, Live 0xffffffffc0636000
snd_ac97_codec snd_ens1371, Live 0xffffffffc06bd000
ac97_bus snd_ac97_codec, Live 0xffffffffc0606000
snd_seq snd_seq_midi,snd_seq_midi_event, Live 0xffffffffc0671000
snd_seq_device snd_seq_midi,snd_rawmidi,snd_seq, Live 0xffffffffc0507000
snd_pcm snd_ens1371,snd_ac97_codec, Live 0xffffffffc06a2000
snd_timer snd_seq,snd_pcm, Live 0xffffffffc0699000
snd snd_ens1371,snd_rawmidi,snd_ac97_codec,snd_seq,snd_seq_device,snd_pcm,snd_timer, Live 0xffffffffc0683000
soundcore snd, Live 0xffffffffc0614000
sg - Live 0xffffffffc062b000
parport_pc - Live 0xffffffffc060c000
parport ppdev,parport_pc, Live 0xffffffffc0664000
vmw_vmci vmw_vsock_vmci_transport, Live 0xffffffffc0652000
i2c_piix4 - Live 0xffffffffc0624000
ip_tables iptable_nat,iptable_mangle,iptable_security,iptable_raw,iptable_filter, Live 0xffffffffc0644000
xfs - Live 0xffffffffc0511000
libcrc32c nf_nat,nf_conntrack,xfs, Live 0xffffffffc050c000
sd_mod - Live 0xffffffffc04fa000
crc_t10dif sd_mod, Live 0xffffffffc04a5000
sr_mod - Live 0xffffffffc0447000
cdrom sr_mod, Live 0xffffffffc04e1000
crct10dif_generic - Live 0xffffffffc04f5000
crct10dif_pclmul - Live 0xffffffffc049c000
crct10dif_common crc_t10dif,crct10dif_generic,crct10dif_pclmul, Live 0xffffffffc04f0000
crc32c_intel - Live 0xffffffffc044f000
serio_raw - Live 0xffffffffc0442000
nfit - Live 0xffffffffc04d2000
libnvdimm nfit, Live 0xffffffffc04ac000
vmwgfx - Live 0xffffffffc0457000
drm_kms_helper vmwgfx, Live 0xffffffffc0415000
ata_generic - Live 0xffffffffc03bf000
syscopyarea drm_kms_helper, Live 0xffffffffc03cb000
sysfillrect drm_kms_helper, Live 0xffffffffc03c4000
sysimgblt drm_kms_helper, Live 0xffffffffc031d000
pata_acpi - Live 0xffffffffc03ba000
fb_sys_fops drm_kms_helper, Live 0xffffffffc03b5000
mptspi - Live 0xffffffffc03ef000
ttm vmwgfx, Live 0xffffffffc03d2000
scsi_transport_spi mptspi, Live 0xffffffffc0402000
ata_piix - Live 0xffffffffc040b000
mptscsih mptspi, Live 0xffffffffc03f7000
drm vmwgfx,drm_kms_helper,ttm, Live 0xffffffffc0347000
e1000 - Live 0xffffffffc0324000
libata ata_generic,pata_acpi,ata_piix, Live 0xffffffffc02e0000
mptbase mptspi,mptscsih, Live 0xffffffffc02c5000
drm_panel_orientation_quirks drm, Live 0xffffffffc02be000

/proc/mounts 文件
这个文件以/etc/mtab 文件的格式给出当前系统所安装的文件系统信息。这个文件也能反映出任何手工安装
从而在/etc/mtab 文件中没有包含的文件系统。
示例:

[root@tan ~]# cat -n /proc/mounts
rootfs / rootfs rw
sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime
proc /proc proc rw,nosuid,nodev,noexec,relatime
devtmpfs /dev devtmpfs rw,seclabel,nosuid,size=230092k,nr_inodes=,mode=
securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime
tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev
devpts /dev/pts devpts rw,seclabel,nosuid,noexec,relatime,gid=,mode=,ptmxmode=
tmpfs /run tmpfs rw,seclabel,nosuid,nodev,mode=
tmpfs /sys/fs/cgroup tmpfs ro,seclabel,nosuid,nodev,noexec,mode=
cgroup /sys/fs/cgroup/systemd cgroup rw,seclabel,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd
pstore /sys/fs/pstore pstore rw,nosuid,nodev,noexec,relatime
cgroup /sys/fs/cgroup/net_cls,net_prio cgroup rw,seclabel,nosuid,nodev,noexec,relatime,net_prio,net_cls
cgroup /sys/fs/cgroup/cpuset cgroup rw,seclabel,nosuid,nodev,noexec,relatime,cpuset
cgroup /sys/fs/cgroup/freezer cgroup rw,seclabel,nosuid,nodev,noexec,relatime,freezer
cgroup /sys/fs/cgroup/devices cgroup rw,seclabel,nosuid,nodev,noexec,relatime,devices
cgroup /sys/fs/cgroup/pids cgroup rw,seclabel,nosuid,nodev,noexec,relatime,pids
cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,seclabel,nosuid,nodev,noexec,relatime,cpuacct,cpu
cgroup /sys/fs/cgroup/hugetlb cgroup rw,seclabel,nosuid,nodev,noexec,relatime,hugetlb
cgroup /sys/fs/cgroup/perf_event cgroup rw,seclabel,nosuid,nodev,noexec,relatime,perf_event
cgroup /sys/fs/cgroup/memory cgroup rw,seclabel,nosuid,nodev,noexec,relatime,memory
cgroup /sys/fs/cgroup/blkio cgroup rw,seclabel,nosuid,nodev,noexec,relatime,blkio
configfs /sys/kernel/config configfs rw,relatime
/dev/sda6 / xfs rw,seclabel,relatime,attr2,inode64,noquota
selinuxfs /sys/fs/selinux selinuxfs rw,relatime
systemd- /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=,pgrp=,timeout=,minproto=,maxproto=,direct,pipe_ino=
hugetlbfs /dev/hugepages hugetlbfs rw,seclabel,relatime
mqueue /dev/mqueue mqueue rw,seclabel,relatime
debugfs /sys/kernel/debug debugfs rw,relatime
/dev/sda2 /var xfs rw,seclabel,relatime,attr2,inode64,noquota
/dev/sda5 /home xfs rw,seclabel,relatime,attr2,inode64,noquota
/dev/sda1 /boot xfs rw,seclabel,relatime,attr2,inode64,noquota
tmpfs /run/user/ tmpfs rw,seclabel,nosuid,nodev,relatime,size=48192k,mode=,uid=,gid=
tmpfs /run/user/ tmpfs rw,seclabel,nosuid,nodev,relatime,size=48192k,mode=

/proc/pci 文件
这个文件给出PCI 设备的信息。用它可以方便地诊断PCI 问题。你可以从这个文件中检索到的信息包括诸
如IDE 接口或USB 控制器这样的设备, 总线, 设备和功能编号, 设备延迟以及IRQ 编号。
示例:

[root@localhost /]# cat /proc/pci
PCI devices found:
Bus , device , function :
Class : PCI device : (rev ).
Master Capable. Latency=.
Prefetchable bit memory at 0xe0000000 [0xe7ffffff].
Bus , device , function :
Class : PCI device :b091 (rev ).
Master Capable. No bursts. Min Gnt=.
Bus , device , function :
Class 0c03: PCI device : (rev .
IRQ .
Master Capable. Latency=.
I/O at 0xec00 [0xec1f].
Bus , device , function :
Class 0c03: PCI device : (rev .
IRQ .
Master Capable. Latency=.
I/O at 0xe800 [0xe81f].
Bus , device , function :
Class 0c03: PCI device : (rev .
IRQ .
Master Capable. Latency=.
I/O at 0xe400 [0xe41f].
Bus , device , function :
Class 0c03: PCI device : (rev ).
IRQ .
Master Capable. Latency=.
Non-prefetchable bit memory at 0xdfffff00 [0xdfffffff].
Bus , device , function :
Class : PCI device : (rev ).
Bus , device , function :Class : PCI device : (rev ).
IRQ .
Master Capable. Latency=.
I/O at 0xfc00 [0xfc0f].
Bus , device , function :
Class : PCI device : (rev ).
IRQ .
I/O at 0xe000 [0xe0ff].
Bus , device , function :
Class : PCI device : (rev ).
IRQ .
Master Capable. Latency=. Min Gnt=.Max Lat=.
I/O at 0xdc00 [0xdcff].
Non-prefetchable bit memory at 0xdffffe00 [0xdffffeff].
Bus , device , function :
Class : PCI device :8d04 (rev ).
IRQ .
Master Capable. Latency=. Min Gnt=.Max Lat=.
Non-prefetchable bit memory at 0xdfe80000 [0xdfefffff].
Prefetchable bit memory at 0xd0000000 [0xd7ffffff].

/proc/stat 文件
这个文件包含的信息有CPU 利用率, 磁盘, 内存页, 内存对换, 全部中断, 接触开关以及赏赐自举时间(自1970
年1 月1 日起的秒数 ) 。
示例:

[root@localhost /]# cat /proc/stat
cpu
cpu0
intr
ctxt
btime
processes
procs_running
procs_blocked

/proc/uptime 文件
这个文件给出自从上次系统自举以来的秒数, 以及其中有多少秒处于空闲 。 这主要供uptime 程序使用 。 比较
这两个数字能够告诉你长期来看CPU 周期浪费的比例。
示例:

[root@tan ~]# cat -n /proc/uptime
2756.81 10804.22

/proc/version 文件
这个文件只有一行内容, 说明正在运行的内核版本。可以用标准的编程方法进行分析获得所需的系统信息 。
示例:

[root@localhost /]# cat /proc/version
Linux version 2.6.-1.667 ( bhcompile@tweety.build.redhat.com ) (gcc version 3.4. (Red Hat
3.4.-.fc3)) # Tue Nov :: EST

/proc/net 子目录
此目录下的文件描述或修改了联网代码的行为。可以通过使用 arp,netstat,route 和ipfwadm 命令设置或查询
这些特殊文件中的许多文件。
示例:

[root@localhost /]# ls /proc/net
anycast6 ip_conntrack mcfilter6 rt6_stats tcp
arp ip_conntrack_expect netlink rt_acct tcp6
dev ip_mr_cache netstat rt_cache udp
dev_mcast ip_mr_vif packet snmp udp6
dev_snmp6 ip_tables_matches psched snmp6 unix
if_inet6 ip_tables_names raw sockstat wireless
igmp ip_tables_targets raw6 sockstat6
igmp6 ipv6_route route softnet_stat
ip6_flowlabel mcfilter rpc stat

以下摘要介绍此目录下文件的功能:

arp

转储每个网络接口的arp 表中dev 包的统计

dev

来自网络设备的统计

dev_mcast

列出二层(数据链路层)多播组

igmp

加入的IGMP 多播组

netlink

netlink 套接口的信息

netstat

网络流量的多种统计。第一行是信息头, 带有每个变量的名称。接下来的一行保存相应变量的值

raw

原始套接口的套接口表

route

静态路由表

rpc

包含RPC 信息的目录rt_cache

路由缓冲

snmp

snmp agent 的ip/icmp/tcp/udp 协议统计; 各行交替给出字段名和值

sockstat

列出使用的tcp/udp/raw/pac/syc_cookies 的数量

tcp

TCP 连接的套接口

udp

UDP 连接的套接口表

unix

UNIX 域套接口的套接口表

示例:

[root@localhost /]# cat /proc/net/route
Iface Destination Gateway Flags RefCnt Use Metric Mask MTU
Window IRTT
eth0 0035C2DA 80FFFFF0
eth0 0000FEA9 0000FFF0
eth0 0135C2DA
[root@localhost /]# cat /proc/net/tcp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
: : : 0A : :
0dde7500 -
: :006F : 0A : :
0dde79e0 -
: 0100007F: : 0A : :
0a8e3a00 -
: 0100007F:14D7 : 0A : :
0dde7020 -
: 0100007F: : 0A : :
0a8e3520 -
[root@localhost /]# cat /proc/net/arp
IP address HW type Flags HW address Mask Device
218.194.53.1 0x1 0x2 :0D:BC:::3F * eth0
[root@localhost /]# cat /proc/net/udp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: : : : : 2
0b4ef7c0
105: :14E9 : : : 20b4ef040
111: :006F : : : 20b4efcc0
116: :02F4 : : : 20b4efa40
119: : : : : 2
0b4ef2c0

/proc/scsi 子目录
此目录下包含一个列出了所有检测到的SCSI 设备的文件, 并且为每种控制器驱动程序提供一个目录, 在这个
目录下又为已安装的此种控制器的每个实例提供一个子目录。
示例:

[root@tan ~]# ll /proc/scsi
total
-r--r--r--. root root May : device_info
dr-xr-xr-x. root root May : mptspi
-r--r--r--. root root May : scsi
dr-xr-xr-x. root root May : sg

/proc/sys 子目录
在此目录下有许多子目录 。 此目录中的许多项都可以用来调整系统的性能 。 这个目录包含信息太多, 无法介
绍全部。只在示例中展示目录下的一些文件。
示例:

[root@localhost /]# ls /proc/sys
debug dev fs kernel net proc sunrpc vm
[root@localhost ~]# ls /proc/sys/fs
aio-max-nr dentry-state file-nr lease-break-time overflowgid
aio-nr dir-notify-enable inode-nr leases-enable overflowuid
binfmt_misc file-max inode-state mqueue quota
[root@localhost ~]# ls /proc/sys/kernel
acct hotplug panic sem
cad_pid modprobe panic_on_oops shmall
cap-bound msgmax pid_max shmmax
core_pattern msgmnb print-fatal-signals shmmni
core_uses_pid msgmni printk sysrq
ctrl-alt-del ngroups_max printk_ratelimit tainted
domainname osrelease printk_ratelimit_burst threads-max
exec-shield ostype pty vdso
exec-shield-randomize overflowgid random version
hostname overflowuid real-root-dev
[root@localhost ~]# ls /proc/sys/net
core ethernet ipv4 ipv6 unix
[root@localhost sys]# ls /proc/sys/vmblock_dump laptop_mode nr_pdflush_threads
dirty_background_ratio legacy_va_layout overcommit_memory
dirty_expire_centisecs lower_zone_protection overcommit_ratio
dirty_ratio max_map_count page-clusterdirty_writeback_centisecs min_free_kbytes swappiness
hugetlb_shm_group nr_hugepages vfs_cache_pressure
[root@tan ~]# ls /proc/sys/net/ipv4
cipso_cache_bucket_size
cipso_cache_enable
cipso_rbm_optfmt
cipso_rbm_strictvalid
conf
fib_multipath_hash_policy
fwmark_reflect
icmp_echo_ignore_all
icmp_echo_ignore_broadcasts
icmp_errors_use_inbound_ifaddr
icmp_ignore_bogus_error_responses
icmp_msgs_burst
icmp_msgs_per_sec
icmp_ratelimit
icmp_ratemask
igmp_max_memberships
igmp_max_msf
igmp_qrv
inet_peer_maxttl
inet_peer_minttl
inet_peer_threshold
ip_default_ttl
ip_dynaddr
ip_early_demux
ip_forward
ip_forward_use_pmtu
ipfrag_high_thresh
ipfrag_low_thresh
ipfrag_max_dist
ipfrag_secret_interval
ipfrag_time
ip_local_port_range
ip_local_reserved_ports
ip_nonlocal_bind
ip_no_pmtu_disc
neigh
ping_group_range
route
tcp_abort_on_overflow
tcp_adv_win_scale
tcp_allowed_congestion_control
tcp_app_win
tcp_autocorking
tcp_available_congestion_control
tcp_base_mss
tcp_challenge_ack_limit
tcp_congestion_control
tcp_dsack
tcp_early_retrans
tcp_ecn
tcp_fack
tcp_fastopen
tcp_fastopen_key
tcp_fin_timeout
tcp_frto
tcp_invalid_ratelimit
tcp_keepalive_intvl
tcp_keepalive_probes
tcp_keepalive_time
tcp_limit_output_bytes
tcp_low_latency
tcp_max_orphans
tcp_max_ssthresh
tcp_max_syn_backlog
tcp_max_tw_buckets
tcp_mem
tcp_min_tso_segs
tcp_moderate_rcvbuf
tcp_mtu_probing
tcp_no_metrics_save
tcp_notsent_lowat
tcp_orphan_retries
tcp_reordering
tcp_retrans_collapse
tcp_retries1
tcp_retries2
tcp_rfc1337
tcp_rmem
tcp_sack
tcp_slow_start_after_idle
tcp_stdurg
tcp_synack_retries
tcp_syncookies
tcp_syn_retries
tcp_thin_dupack
tcp_thin_linear_timeouts
tcp_timestamps
tcp_tso_win_divisor
tcp_tw_recycle
tcp_tw_reuse
tcp_window_scaling
tcp_wmem
tcp_workaround_signed_windows
udp_mem
udp_rmem_min
udp_wmem_min
xfrm4_gc_thresh
[root@tan ~]# cat -n /proc/sys/kernel/shmall
         
[root@tan ~]# cat -n /proc/sys/kernel/osrelease
3.10.-.el7.x86_64

/proc路径的更多相关文章

  1. windows和linux下获取当前程序路径以及cpu数

    #ifdef WIN32 #include <Windows.h> #else #include <stdio.h> #include <unistd.h> #en ...

  2. /proc 目录详细说明

    /proc路径详细: Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构.改变内核设置的机制.proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以 ...

  3. 理解proc目录与linux进程、ps命令、netstat命令的关系

    零.proc目录简介 proc目录是虚拟文件系统(VFS)的一种实现,保存了进程信息(pid目录)和一些系统信息. 一.系统的信息 1.cpuinfo和meminfo两个文件 查看CPU和内存相关信息 ...

  4. Delphi For Android 开发笔记-附:如何Delphi中同时实现Windows、Android版的GetModuleFileName函数

    在Windows中开发DLL时,经常会需要获取当前DLL所在目录以便读取同目录下的其他文件,而目前Delphi在开发android时,其实没多大必要获取,因为整个工程只有一个so文件,而这个so文件也 ...

  5. 韦东山笔记之用busybox构建根文件系统

    1 百度搜索busybox进入busybox官网(https://busybox.net/)作者:恒久力行 QQ:624668529  点击左侧DownloadSource下载最新稳定版的busybo ...

  6. oeasy教您玩转linux010107那啥在哪 whereis

    回忆上次内容 上次讲了 ls 的参数 (arguement) 和选项 (option) 的设置. 现在我们要制作这样一个列表:

  7. Linux namespace技术应用实践--调用宿主机命令(tcpdump/ip/ps/top)检查docker容器网络、进程状态

    背景 最近偶然听了几堂极客时间的云原生免费公开课程,首次接触到了Linux namespace技术,并了解到这正是现在风头正劲的容器技术基石,引起了自己探究一二的兴趣,结合课程+网络搜索+实践操作,也 ...

  8. /proc下重要路径知识

    /proc 虚拟目录,是内存的映射,内核与进程的虚拟文件系统目录/proc/version 内核版本/proc/sys/kernel 系统内核功能/proc/sys/net/ipv4*/proc/cp ...

  9. Linux /proc/$pid部分内容详解

    auxv /proc/[pid]/auxv包含传递给进程的ELF解释器信息,格式是每一项都是一个unsigned long长度的ID加上一个unsigned long长度的值.最后一项以连续的两个0x ...

随机推荐

  1. visual studio 无添加视图 选项

    我是因为 UserController未继承 Controller

  2. 011-数据结构-树形结构-B+树[mysql应用]、B*树

    一.B+树概述 B+树是B树的变种,有着比B树更高的查询效率. 一棵 B+ 树需要满足以下条件: 节点的子树数和关键字数相同(B 树是关键字数比子树数少一) 节点的关键字表示的是子树中的最大数,在子树 ...

  3. [Bayes] MCMC (Markov Chain Monte Carlo)

    不错的文章:LDA-math-MCMC 和 Gibbs Sampling 可作为精进MCMC抽样方法的学习材料. 简单概率分布的模拟 Box-Muller变换原理详解 本质上来说,计算机只能生产符合均 ...

  4. oracle导入及导出dmp文件

    导出数据库步骤: exp 用户名/密码@实例名 file=导出的dmp文件存放路径(绝对路径) log=导出日志存放路径(建议记录log文件,方便后续核实数据是否完整导出和导入) 导入数据库步骤: 1 ...

  5. [LeetCode] 122. Best Time to Buy and Sell Stock II 买卖股票的最佳时间 II

    Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...

  6. [LeetCode] 217. Contains Duplicate 包含重复元素

    Given an array of integers, find if the array contains any duplicates. Your function should return t ...

  7. Exsi6.6主机网络不通解决办法

    Exsi虚拟机网络偶尔不通,防火墙性能不足 解决办法,断开网络连接再重连

  8. DB2执行计划分析

    多表连接的三种方式详解 hash join.merge join. nested loop 项目中的SQL执行效率太低,就用执行计划看一下执行SQL,看不懂,百度一下,纪录下来: 大多数人从来没有听说 ...

  9. android基础---->ListView的使用

    简单说明 ListView在android程序中比较常用,在此做一下简单的总结 内容:自定义ListView, 自定义Adapter,ListView滚动事件的应用! 项目结构如下图

  10. Python代码编码规范

    目录 1. Introduction 介绍 2. A Foolish Consistency is the Hobgoblin of Little Minds 尽信书,则不如无书 3. Code la ...