Sysctl


sysctl命令 - 配置运行时的内核参数

Linux是单体的设计, 在编译时加入了大量可选的,附加的模块modules. 在启动时可以通过kmod加载不同的模块, 而且模块设置不同的参数.

常用命令


sysctl -a 查看所有可用的配置变量

sysctl kernel.version 读取一个配置变量的值

sysctl .= 只在当前Linux运行环境中设置变量值

sysctl -w .= 设置变量并持久保存

注意: 当前变量对应/proc/sys路径下的虚拟文件系统
image.png

批量修改内核tunables的方式


sysctl -p /etc/sysctl.conf 修改并持久化

vi /etc/sysctl.d/my.conf 在sysctl.d文件下并执行sysctl -p /etc/sysctl.d/my.conf可以持久化

参考配置文件的路径:

  1. [root@kuaicdn /]# ll /etc/sysctl.conf /etc/sysctl.d/99-sysctl.conf
  2. -rw-r--r--. 1 root root 506 3月 7 2021 /etc/sysctl.conf
  3. lrwxrwxrwx. 1 root root 14 3月 7 2021 /etc/sysctl.d/99-sysctl.conf -> ../sysctl.conf

配置


sysctl 中 vm.overcommit_memory 的含义


参考: https://www.huaweicloud.com/articles/ba513d1ece00f4545d4fc35f0ff0fa52.html

参数文件: /proc/sys/vm/overcommit_memory
overcommit_memory 设置内存的分配策略:

  • 0 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程
  • 1 表示内核允许分配所有的物理内存,而不管当前的内存状态如何
  • 2 表示内核允许分配超过所有物理内存和交换空间总和的内存

OverCommit 和 OOM概念:

在Unix中,当一个用户进程使用malloc()函数申请内存时,假如返回值是NULL,则这个进程知道当前没有可用内存空间,就会做相应的处理工作。许多进程会打印错误信息并退出。 Linux使用另外一种处理方式,它对大部分申请内存的请求都回复”yes”,以便能跑更多更大的程序。因为申请内存后,并不会马上使用内存。这种技术叫做Overcommit。当内存不足时,会发生OOM killer(OOM=out-of-memory)。它会选择杀死一些进程(用户态进程,不是内核线程),以便释放内存。

OverCommit有三种策略, 保存在vm/overcommit_acoounting中:

  • 0 启发式策略。合理的overcommit会被接受,不合理的overcommit会被拒绝
  • 1 任何overcommit都会被接受
  • 2 当系统分配的内存超过swap+N%*物理RAM(N%由vm.overcommit_ratio决定)时,会拒绝commit

当oom-killer发生时,linux会选择杀死哪些进程 选择进程的函数是oom_badness函数(在mm/oom_kill.c中),该函数会计算每个进程的点数(0~1000)。 点数越高,这个进程越有可能被杀死。 每个进程的点数跟oom_score_adj有关,而且oom_score_adj可以被设置(-1000最低,1000最高)。

Procfs


参考: https://en.wikipedia.org/wiki/Procfs

proc filesystem(procfs)是一个特殊的文件系统, 提供了进程和系统一些关键性信息, 同时提供了一种动态访问进程数据更方便的方式. 一般proc挂载在/proc目录上. proc 文件系统充当有关内核中正在运行的进程的内部数据结构的接口。 在 Linux 中,它还可用于获取有关内核的信息并在运行时更改某些内核参数 (sysctl)。

procfs提供一种用户空间与内核空间沟通的方式.

可通过/lib/modules/$(uname -r)/kernel/fs和/proc/filesystems查看系统支持的文件xitong

Linux


Linux相关procfs的介绍.

Linux在v0.97.3后加入了/proc文件系统.
2020后Linux实现了对于每一个运行进程使用一个目录来描述, 包含了内核进程, 目录为/proc/PID. 每个目录包含了进程的相关信息:

  • /proc/PID/cmdline : 启动进程的命令
  • /proc/PID/cwd : 当前进程工作目录的符号链接
  • /proc/PID/environ : 影响该进程的环境变量
  • /proc/PID/exe : 可执行文件的符号链接
  • /proc/PID/fd : 文件描述符的符号链接
  • fdinfo : a directory containing entries which describe the position and flags for each open file descriptor.
  • maps : 描述了映射文件和块(堆和栈)
  • mem : 二进制image 代表了进程的虚拟内存, 只能被ptrace’ing进程访问
  • root : 到根目录的符号链接,. 大多数进程都为/除非该进程处于chroot jail环境中.
  • status : 进程运行状态和内存使用的基本信息
  • task : 包含了该进程产生的任务的硬链接
[root@kuaicdn 1177]# cat cmdline 
/usr/bin/dockerd-Hfd://--containerd=/run/containerd/containerd.sock


[root@kuaicdn 1177]# ll cwd
lrwxrwxrwx 1 root root 0 11月  1 18:30 cwd -> /

[root@kuaicdn 1177]# cat environ 
LANG=zh_CN.UTF-8PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/binNOTIFY_SOCKET=/run/systemd/notifyLISTEN_PID=1177LISTEN_FDS=1

[root@kuaicdn 1177]# ll exe
lrwxrwxrwx 1 root root 0 11月  1 18:30 exe -> /usr/bin/dockerd

[root@kuaicdn 1177]# ll fd
总用量 0
lr-x------ 1 root root 64 11月  1 18:32 0 -> /dev/null
lrwx------ 1 root root 64 11月  1 18:32 1 -> socket:[20811]
lrwx------ 1 root root 64 11月  1 18:32 10 -> socket:[21128]
lrwx------ 1 root root 64 11月  1 18:32 11 -> socket:[21132]
lrwx------ 1 root root 64 11月  1 18:32 12 -> /data/docker-root/volumes/metadata.db
lr-x------ 1 root root 64 11月  1 18:32 13 -> net:[4026531992]
lrwx------ 1 root root 64 11月  1 18:32 14 -> socket:[21395]
lrwx------ 1 root root 64 11月  1 18:32 15 -> socket:[21396]
lrwx------ 1 root root 64 11月  1 18:32 16 -> socket:[21397]
lrwx------ 1 root root 64 11月  1 18:32 17 -> socket:[21851]
l--------- 1 root root 64 11月  1 18:32 18 -> /run/docker/containerd/34422c08c6a2b9673ac4a8aafb1153c5c1188bcb9103e7404b2aa13c73026566/init-stdin
l--------- 1 root root 64 11月  1 18:32 19 -> /run/docker/containerd/34422c08c6a2b9673ac4a8aafb1153c5c1188bcb9103e7404b2aa13c73026566/init-stdout
lrwx------ 1 root root 64 11月  1 18:32 2 -> socket:[20811]
lrwx------ 1 root root 64 11月  1 18:32 20 -> socket:[22069]
l-wx------ 1 root root 64 11月  1 18:32 21 -> /data/docker-root/containers/34422c08c6a2b9673ac4a8aafb1153c5c1188bcb9103e7404b2aa13c73026566/34422c08c6a2b9673ac4a8aafb1153c5c1188bcb9103e7404b2aa13c73026566-json.log
l-wx------ 1 root root 64 11月  1 18:32 22 -> /run/docker/containerd/34422c08c6a2b9673ac4a8aafb1153c5c1188bcb9103e7404b2aa13c73026566/init-stdin
lr-x------ 1 root root 64 11月  1 18:32 23 -> /run/docker/containerd/34422c08c6a2b9673ac4a8aafb1153c5c1188bcb9103e7404b2aa13c73026566/init-stdout
lrwx------ 1 root root 64 11月  1 18:32 24 -> /data/docker-root/buildkit/containerdmeta.db
lrwx------ 1 root root 64 11月  1 18:32 25 -> /data/docker-root/buildkit/snapshots.db
lrwx------ 1 root root 64 11月  1 18:32 26 -> /data/docker-root/buildkit/metadata_v2.db
lrwx------ 1 root root 64 11月  1 18:32 27 -> /data/docker-root/buildkit/cache.db
lrwx------ 1 root root 64 11月  1 18:32 3 -> socket:[21124]
lrwx------ 1 root root 64 11月  1 18:32 4 -> socket:[21043]
lrwx------ 1 root root 64 11月  1 18:32 5 -> anon_inode:[eventpoll]
lr-x------ 1 root root 64 11月  1 18:32 6 -> pipe:[20959]
l-wx------ 1 root root 64 11月  1 18:32 7 -> pipe:[20959]
lrwx------ 1 root root 64 11月  1 18:32 8 -> socket:[21044]
lrwx------ 1 root root 64 11月  1 18:32 9 -> socket:[17549]

[root@kuaicdn 1177]# ll fdinfo
总用量 0
-r-------- 1 root root 0 11月  1 18:32 0
-r-------- 1 root root 0 11月  1 18:32 1
-r-------- 1 root root 0 11月  1 18:32 10
-r-------- 1 root root 0 11月  1 18:32 11
-r-------- 1 root root 0 11月  1 18:32 12
-r-------- 1 root root 0 11月  1 18:32 13
-r-------- 1 root root 0 11月  1 18:32 14
-r-------- 1 root root 0 11月  1 18:32 15
-r-------- 1 root root 0 11月  1 18:32 16
-r-------- 1 root root 0 11月  1 18:32 17
-r-------- 1 root root 0 11月  1 18:32 18
-r-------- 1 root root 0 11月  1 18:32 19
-r-------- 1 root root 0 11月  1 18:32 2
-r-------- 1 root root 0 11月  1 18:32 20
-r-------- 1 root root 0 11月  1 18:32 21
-r-------- 1 root root 0 11月  1 18:32 22
-r-------- 1 root root 0 11月  1 18:32 23
-r-------- 1 root root 0 11月  1 18:32 24
-r-------- 1 root root 0 11月  1 18:32 25
-r-------- 1 root root 0 11月  1 18:32 26
-r-------- 1 root root 0 11月  1 18:32 27
-r-------- 1 root root 0 11月  1 18:32 3
-r-------- 1 root root 0 11月  1 18:32 4
-r-------- 1 root root 0 11月  1 18:32 5
-r-------- 1 root root 0 11月  1 18:32 6
-r-------- 1 root root 0 11月  1 18:32 7
-r-------- 1 root root 0 11月  1 18:32 8
-r-------- 1 root root 0 11月  1 18:32 9


[root@kuaicdn 1177]# cat maps | head
c000000000-c000800000 rw-p 00000000 00:00 0 
c000800000-c000e00000 rw-p 00000000 00:00 0 
c000e00000-c004000000 rw-p 00000000 00:00 0 
555b377f2000-555b3afd8000 r-xp 00000000 08:03 25401717                   /usr/bin/dockerd
555b3b1d7000-555b3c7fb000 r--p 037e5000 08:03 25401717                   /usr/bin/dockerd
555b3c7fb000-555b3c89b000 rw-p 04e09000 08:03 25401717                   /usr/bin/dockerd
555b3c89b000-555b3c8e3000 rw-p 00000000 00:00 0 
555b3cbef000-555b3cc10000 rw-p 00000000 00:00 0                          [heap]
7f9624000000-7f9624021000 rw-p 00000000 00:00 0 
7f9624021000-7f9628000000 ---p 00000000 00:00 0 

[root@kuaicdn 1177]# ll root
lrwxrwxrwx 1 root root 0 11月  1 18:30 root -> /

[root@kuaicdn 1177]# cat status 
Name:    dockerd
Umask:    0022
State:    S (sleeping)
Tgid:    1177
Ngid:    0
Pid:    1177
PPid:    1
TracerPid:    0
Uid:    0    0    0    0
Gid:    0    0    0    0
FDSize:    64
Groups:     
NStgid:    1177
NSpid:    1177
NSpgid:    1177
NSsid:    1177
VmPeak:     1120520 kB
VmSize:     1120520 kB
VmLck:           0 kB
VmPin:           0 kB
VmHWM:       84284 kB
VmRSS:       82868 kB
RssAnon:       31376 kB
RssFile:       51492 kB
RssShmem:           0 kB
VmData:      189456 kB
VmStk:         132 kB
VmExe:       57240 kB
VmLib:        6372 kB
VmPTE:         440 kB
VmSwap:           0 kB
HugetlbPages:           0 kB
CoreDumping:    0
THP_enabled:    1
Threads:    11
SigQ:    1/3584
SigPnd:    0000000000000000
ShdPnd:    0000000000000000
SigBlk:    fffffffc3bfa2800
SigIgn:    0000000000000000
SigCgt:    fffffffdffc1feff
CapInh:    0000000000000000
CapPrm:    0000003fffffffff
CapEff:    0000003fffffffff
CapBnd:    0000003fffffffff
CapAmb:    0000000000000000
NoNewPrivs:    0
Seccomp:    0
Speculation_Store_Bypass:    thread vulnerable
Cpus_allowed:    1
Cpus_allowed_list:    0
Mems_allowed:    00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001
Mems_allowed_list:    0
voluntary_ctxt_switches:    773
nonvoluntary_ctxt_switches:    45


[root@kuaicdn 1177]# ll task
总用量 0
dr-xr-xr-x 7 root root 0 11月  1 18:37 1177
dr-xr-xr-x 7 root root 0 11月  1 18:37 1191
dr-xr-xr-x 7 root root 0 11月  1 18:37 1192
dr-xr-xr-x 7 root root 0 11月  1 18:37 1193
dr-xr-xr-x 7 root root 0 11月  1 18:37 1194
dr-xr-xr-x 7 root root 0 11月  1 18:37 1364
dr-xr-xr-x 7 root root 0 11月  1 18:37 1365
dr-xr-xr-x 7 root root 0 11月  1 18:37 1419
dr-xr-xr-x 7 root root 0 11月  1 18:37 1420
dr-xr-xr-x 7 root root 0 11月  1 18:37 1421
dr-xr-xr-x 7 root root 0 11月  1 18:37 1422

同时/proc包含了非进程相关的系统信息, 尽管2.6内核之后系统信息被移到一个单独的pseudo-file system, sysfs文件系统中, 挂载在/sys下:

  • 取决于电源管理的模式(如果有的话),目录 /proc/acpi 或 /proc/apm,它早于 sysfs 并包含有关电源管理状态的各种信息。
  • /proc/buddyinfo, 描述了buddy算法处理内存段的处理方式
  • /proc/bus,包含代表计算机上各种总线的目录,例如 PCI/USB。 这在很大程度上已被 /sys/bus 下的 sysfs 取代,后者提供了更多信息。

    buddy内存分配技术是一种内存分配算法,它将内存划分为多个分区,以尽量满足内存请求。 该系统利用将内存分成两半来尝试提供最佳匹配。 根据 Donald Knuth 的说法,buddy系统由 Harry Markowitz 于 1963 年发明,并由 Kenneth C. Knowlton 首次描述(1965 年出版)。[1] Buddy 内存分配比较容易实现。 它支持有限但有效的内存块拆分和合并。

  • /proc/fb,可用帧缓冲区的列表

  • /proc/cmdline,将引导选项传递给内核
  • /proc/cpuinfo,包含有关 CPU 的信息,例如其供应商(以及应允许用户识别 CPU 的 CPU 系列、型号和型号名称)及其速度(CPU 时钟速度)、缓存大小、兄弟节点数量、内核、 和 CPU 标志。 /proc/cpuinfo 包含“bogomips”的值,经常被误解为 CPU 速度的度量,例如基准测试,但它实际上根本没有度量任何合理的(对于最终用户)值。 它是内核定时器校准的副作用,即使在相同的时钟速度下,也会根据 CPU 类型产生高度变化的值。
  • /proc/crypto,可用加密模块的列表
  • /proc/devices,按设备 ID 排序的字符和块设备列表,但也给出了 /dev 名称的主要部分
  • /proc/diskstats,为每个逻辑磁盘设备提供一些信息(包括设备编号)
  • /proc/filesystems,列出时内核支持的文件系统列表
  • /proc/interrupts、/proc/iomem、/proc/ioports 和目录 /proc/irq,提供有关使用各种系统资源的设备(物理或逻辑)的一些详细信息
  • /proc/kmsg,保存内核输出的消息
  • /proc/meminfo,包含内核如何管理其内存的摘要
  • /proc/modules,/proc 中最重要的文件之一,包含当前加载的内核模块列表。 它给出了一些依赖关系的指示(并不总是完全正确)
  • /proc/mounts,self/mounts 的符号链接,其中包含当前挂载的设备及其挂载点的列表(以及正在使用的文件系统和正在使用的挂载选项)。
  • /proc/net/,一个包含有关网络堆栈的有用信息的目录,特别是 /proc/net/nf_conntrack,它列出了现有的网络连接(当使用 iptables FORWARD 重定向网络连接时,对于跟踪路由特别有用)
  • /proc/partitions,设备编号列表,它们的大小和内核已识别为现有分区的 /dev 名称
  • /proc/scsi,提供有关通过 SCSI 或 RAID 控制器连接的任何设备的信息
  • 指向 /proc/self 中当前(遍历)进程的符号链接(即 /proc/PID/,其中 PID 是当前进程的)。
  • /proc/slabinfo,列出 Linux 内核中常用对象的缓存统计信息
  • /proc/swaps,活动交换分区的列表,它们的各种大小和优先级
  • 访问 /proc/sys 下的动态可配置内核选项。 在 /proc/sys 下出现代表内核区域的目录,包含可读和可写的虚拟文件。例如,一个常用的虚拟文件是/proc/sys/net/ipv4/ip_forward,因为它是路由防火墙或隧道所必需的。 该文件包含“1”或“0”:如果为 1,则 IPv4 堆栈转发不适合本地主机的数据包,如果为 0,则不转发。
  • /proc/sysvipc,包含内存共享和进程间通信 (IPC) 信息。
  • /proc/tty,包含有关当前终端的信息; /proc/tty/driver 看起来是[原始研究?] 可用的不同类型 tty 的列表 - 每个列表都是每种类型的列表
  • /proc/uptime,内核自启动以来运行并处于空闲模式的时间长度(均以秒为单位)
  • /proc/version,包含 Linux 内核版本、发行版号、gcc 版本号(用于构建内核)以及与当前运行的内核版本相关的任何其他相关信息
  • 其他文件取决于各种硬件、模块配置和内核更改。
[root@kuaicdn proc]# cat buddyinfo 
Node 0, zone      DMA      5      5      2      2      1      3      3      2      1      1      1 
Node 0, zone    DMA32   1371    617    330    229    133     27     15      6      3      5     12 
Node 0, zone   Normal    427    346    190    155    102     70     38     10      5      7     26 

[root@kuaicdn proc]# ll bus
总用量 0
dr-xr-xr-x 4 root root 0 11月  1 18:43 input
dr-xr-xr-x 3 root root 0 11月  1 18:43 pci

[root@kuaicdn proc]# cat fb
0 hyperv_fb

[root@kuaicdn proc]# cat cmdline 
BOOT_IMAGE=/vmlinuz-5.4.102-1.el7.elrepo.x86_64 root=UUID=6e615d41-1941-45ef-a398-27d641ebbb74 ro crashkernel=auto spectre_v2=retpoline rhgb quiet LANG=zh_CN.UTF-8

[root@kuaicdn proc]# cat cpuinfo 
processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 165
model name    : Intel(R) Core(TM) i5-10400F CPU @ 2.90GHz
stepping    : 3
microcode    : 0xffffffff
cpu MHz        : 2904.011
cache size    : 12288 KB
physical id    : 0
siblings    : 1
core id        : 0
cpu cores    : 1
apicid        : 0
initial apicid    : 0
fpu        : yes
fpu_exception    : yes
cpuid level    : 21
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology cpuid pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced fsgsbase bmi1 avx2 smep bmi2 erms invpcid rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves flush_l1d arch_capabilities
bugs        : spectre_v1 spectre_v2 spec_store_bypass swapgs itlb_multihit
bogomips    : 5808.02
clflush size    : 64
cache_alignment    : 64
address sizes    : 39 bits physical, 48 bits virtual
power management:

[root@kuaicdn proc]# cat crypto | head -n 20
name         : crct10dif
driver       : crct10dif-pclmul
module       : crct10dif_pclmul
priority     : 200
refcnt       : 2
selftest     : passed
internal     : no
type         : shash
blocksize    : 1
digestsize   : 2

name         : crc32
driver       : crc32-pclmul
module       : crc32_pclmul
priority     : 200
refcnt       : 1
selftest     : passed
internal     : no
type         : shash
blocksize    : 1

blocksize    : 1


[root@kuaicdn proc]# cat devices 
Character devices:
  1 mem
  4 /dev/vc/0
  4 tty
  4 ttyS
  5 /dev/tty
  5 /dev/console
  5 /dev/ptmx
  7 vcs
 10 misc
 13 input
 21 sg
 29 fb
128 ptm
136 pts
162 raw
180 usb
188 ttyUSB
189 usb_device
202 cpu/msr
203 cpu/cpuid
243 ptp
244 pps
245 hidraw
246 usbmon
247 bsg
248 watchdog
249 rtc
250 dax
251 dimmctl
252 ndctl
253 tpm
254 gpiochip

Block devices:
  7 loop
  8 sd
  9 md
 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
254 mdp
259 blkext

[root@kuaicdn proc]# cat diskstats 
   8       0 sda 19804 109 1304193 89914 14068 7756 2179796 1311384 0 261133 1387120 2 0 216 0
   8       1 sda1 406 0 17932 7181 0 0 0 0 0 486 6986 0 0 0 0
   8       2 sda2 159 0 11217 568 25 0 4384 2440 0 2535 2929 0 0 0 0
   8       3 sda3 18962 109 1260636 80768 13780 7724 2175092 1305025 0 257637 1372105 0 0 0 0
   7       0 loop0 224 0 11316 84 84 0 29198 1930 0 1649 1977 0 0 0 0
您在 /var/spool/mail/root 中有新邮件


[root@kuaicdn proc]# cat filesystems 
nodev    sysfs
nodev    tmpfs
nodev    bdev
nodev    proc
nodev    cgroup
nodev    cgroup2
nodev    cpuset
nodev    devtmpfs
nodev    configfs
nodev    debugfs
nodev    tracefs
nodev    securityfs
nodev    sockfs
nodev    bpf
nodev    pipefs
nodev    ramfs
nodev    hugetlbfs
nodev    devpts
nodev    autofs
nodev    efivarfs
nodev    mqueue
nodev    pstore
    xfs
    vfat
nodev    rpc_pipefs
nodev    overlay
nodev    binfmt_misc

[root@kuaicdn proc]# cat meminfo 
MemTotal:        2324868 kB
MemFree:          282456 kB
MemAvailable:    1452480 kB
Buffers:            8992 kB
Cached:          1114552 kB
SwapCached:           40 kB
Active:           338640 kB
Inactive:        1012296 kB
Active(anon):     105844 kB
Inactive(anon):   127928 kB
Active(file):     232796 kB
Inactive(file):   884368 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:        131068 kB
SwapFree:         130800 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:        223792 kB
Mapped:           165388 kB
Shmem:              6380 kB
KReclaimable:     337568 kB
Slab:             411456 kB
SReclaimable:     337568 kB
SUnreclaim:        73888 kB
KernelStack:        3244 kB
PageTables:         9828 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     1293500 kB
Committed_AS:    1551752 kB
VmallocTotal:   34359738367 kB
VmallocUsed:       24672 kB
VmallocChunk:          0 kB
Percpu:              492 kB
HardwareCorrupted:     0 kB
AnonHugePages:    100352 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
FileHugePages:         0 kB
FilePmdMapped:         0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:               0 kB
DirectMap4k:       93488 kB
DirectMap2M:     2396160 kB
DirectMap1G:           0 kB

[root@kuaicdn proc]# cat modules 
loop 36864 2 - Live 0xffffffffc0600000
binfmt_misc 24576 1 - Live 0xffffffffc05f9000
xt_conntrack 16384 4 - Live 0xffffffffc05f4000
xt_MASQUERADE 20480 8 - Live 0xffffffffc05ee000
nf_conntrack_netlink 45056 0 - Live 0xffffffffc05e2000
nfnetlink 16384 2 nf_conntrack_netlink, Live 0xffffffffc05dd000
xt_addrtype 16384 6 - Live 0xffffffffc05d8000
iptable_filter 16384 1 - Live 0xffffffffc05d3000
iptable_nat 16384 1 - Live 0xffffffffc05ce000
nf_nat 40960 2 xt_MASQUERADE,iptable_nat, Live 0xffffffffc05c3000
nf_conntrack 147456 4 xt_conntrack,xt_MASQUERADE,nf_conntrack_netlink,nf_nat, Live 0xffffffffc059e000
nf_defrag_ipv6 24576 1 nf_conntrack, Live 0xffffffffc0597000
nf_defrag_ipv4 16384 1 nf_conntrack, Live 0xffffffffc0592000
overlay 114688 1 - Live 0xffffffffc0575000
sunrpc 397312 1 - Live 0xffffffffc0513000
vfat 20480 1 - Live 0xffffffffc050d000
fat 73728 1 vfat, Live 0xffffffffc04fa000
intel_pmc_core_pltdrv 16384 0 - Live 0xffffffffc04f5000
intel_pmc_core 28672 0 - Live 0xffffffffc0481000
crct10dif_pclmul 16384 1 - Live 0xffffffffc047c000
crc32_pclmul 16384 0 - Live 0xffffffffc0477000
ghash_clmulni_intel 16384 0 - Live 0xffffffffc0472000
aesni_intel 372736 0 - Live 0xffffffffc0499000
crypto_simd 16384 1 aesni_intel, Live 0xffffffffc046d000
cryptd 24576 2 ghash_clmulni_intel,crypto_simd, Live 0xffffffffc0466000
glue_helper 16384 1 aesni_intel, Live 0xffffffffc0461000
hv_utils 32768 0 - Live 0xffffffffc0490000
ptp 24576 1 hv_utils, Live 0xffffffffc0489000
pps_core 24576 1 ptp, Live 0xffffffffc045a000
sg 40960 0 - Live 0xffffffffc044f000
pcspkr 16384 0 - Live 0xffffffffc044a000
joydev 24576 0 - Live 0xffffffffc02c0000
hv_balloon 32768 0 [permanent], Live 0xffffffffc0441000
ip_tables 28672 2 iptable_filter,iptable_nat, Live 0xffffffffc0439000
xfs 1261568 3 - Live 0xffffffffc0304000
libcrc32c 16384 3 nf_nat,nf_conntrack,xfs, Live 0xffffffffc02bb000
sd_mod 49152 4 - Live 0xffffffffc02f7000
serio_raw 20480 0 - Live 0xffffffffc02c8000
hv_netvsc 73728 0 - Live 0xffffffffc02e4000
hyperv_fb 20480 1 - Live 0xffffffffc02b5000
hyperv_keyboard 16384 0 - Live 0xffffffffc02ad000
hid_hyperv 16384 0 - Live 0xffffffffc02a5000
hv_storvsc 20480 3 - Live 0xffffffffc029b000
scsi_transport_fc 57344 1 hv_storvsc, Live 0xffffffffc02d5000
crc32c_intel 24576 1 - Live 0xffffffffc02ce000
hv_vmbus 106496 7 hv_utils,hv_balloon,hv_netvsc,hyperv_fb,hyperv_keyboard,hid_hyperv,hv_storvsc, Live 0xffffffffc0280000

[root@kuaicdn proc]# cat mounts
sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
devtmpfs /dev devtmpfs rw,nosuid,size=458872k,nr_inodes=114718,mode=755 0 0
securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev,size=470208k,nr_inodes=117552 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
tmpfs /run tmpfs rw,nosuid,nodev,size=470208k,nr_inodes=117552,mode=755 0 0

[root@kuaicdn proc]# ll net
lrwxrwxrwx 1 root root 8 11月  1 16:50 net -> self/net

[root@kuaicdn proc]# cat partitions 
major minor  #blocks  name

   8        0   16777216 sda
   8        1     131072 sda1
   8        2     524288 sda2
   8        3   16119808 sda3
   7        0     524288 loop0

[root@kuaicdn proc]# ll scsi/
总用量 0
-r--r--r-- 1 root root 0 11月  1 18:54 device_info
-r--r--r-- 1 root root 0 11月  1 18:54 scsi
dr-xr-xr-x 9 root root 0 11月  1 18:54 sg

[root@kuaicdn proc]# cat slabinfo  | head
slabinfo - version: 2.1
# name            <active_objs> <num_objs> <objsize> <objperslab> <pagesperslab> : tunables <limit> <batchcount> <sharedfactor> : slabdata <active_slabs> <num_slabs> <sharedavail>
nf_conntrack          36     36    320   12    1 : tunables    0    0    0 : slabdata      3      3      0
ovl_inode          34783  35088    672   12    2 : tunables    0    0    0 : slabdata   2924   2924      0
rpc_inode_cache       24     24    640   12    2 : tunables    0    0    0 : slabdata      2      2      0
fat_inode_cache       33     33    728   11    2 : tunables    0    0    0 : slabdata      3      3      0
fat_cache              0      0     40  102    1 : tunables    0    0    0 : slabdata      0      0      0
xfs_dqtrx              0      0    528   15    2 : tunables    0    0    0 : slabdata      0      0      0
xfs_dquot              0      0    496    8    1 : tunables    0    0    0 : slabdata      0      0      0
xfs_buf            10980  10980    384   10    1 : tunables    0    0    0 : slabdata   1098   1098      0

[root@kuaicdn proc]# cat swaps 
Filename                Type        Size    Used    Priority
/tmp/swap                               file        131068    268    -2

[root@kuaicdn proc]# ll sys
总用量 0
dr-xr-xr-x 1 root root 0 11月  1 17:07 abi
dr-xr-xr-x 1 root root 0 11月  1 17:07 debug
dr-xr-xr-x 1 root root 0 11月  1 17:07 dev
dr-xr-xr-x 1 root root 0 10月 29 17:22 fs
dr-xr-xr-x 1 root root 0 10月 29 17:22 kernel
dr-xr-xr-x 1 root root 0 11月  1 17:07 net
dr-xr-xr-x 1 root root 0 11月  1 17:07 sunrpc
dr-xr-xr-x 1 root root 0 11月  1 17:07 user
dr-xr-xr-x 1 root root 0 11月  1 17:07 vm

[root@kuaicdn proc]# ll sysvipc/
总用量 0
-r--r--r-- 1 root root 0 11月  1 18:57 msg
-r--r--r-- 1 root root 0 11月  1 18:57 sem
-r--r--r-- 1 root root 0 11月  1 18:57 shm

[root@kuaicdn proc]# ll tty/
总用量 0
dr-x------ 4 root root 0 11月  1 16:50 driver
-r--r--r-- 1 root root 0 11月  1 18:38 drivers
dr-xr-xr-x 2 root root 0 11月  1 18:57 ldisc
-r--r--r-- 1 root root 0 11月  1 18:57 ldiscs

[root@kuaicdn proc]# cat uptime
64522.84 64377.25

[root@kuaicdn proc]# cat version 
Linux version 5.4.102-1.el7.elrepo.x86_64 (mockbuild@Build64R7) (gcc version 9.3.1 20200408 (Red Hat 9.3.1-2) (GCC)) #1 SMP Wed Mar 3 18:56:52 EST 2021