Linux /proc和/sys

发布时间 2023-10-23 19:18:59作者: 背对背依靠

在 Linux 系统中,/proc和/sys都是特殊的文件系统,数据内容是存放在内存中,这两个目录文件中的内容由内核动态生成,查看这个文件中的内容,实际上就是查询内核的某些状态或信息。

可以将这两个目录文件理解为虚拟的目录,即在硬盘上不存在。

/proc 文件系统

proc 是process(进程)的缩写。这个目录文件里面存放的是进程的相关信息

信息查看

查看进程信息

在/proc 目录下每个进程都有一个以其PID命名的目录,其中包含该进程的信息

/proc/pid

查看cpu信息

通过/proc目录下的cpuinfo,可以查看CPU信息。

/proc/cpuinfo

内存信息查看

通过/proc目录下的meminfo两个文件可以查看cpu和内存的信息

/proc/meminfo

查看当前系统的挂载点

/proc/mounts

查看硬盘分区信息

/proc/partitions

修改内核参数

网络参数修改

修改网络参数,是修改/proc/sys/net目录中的相关文件;

IPv4转发(路由功能)
# 1:开启转发 0:不开启

ipv4/ip_forward
是否响应 pin
# 1:不会收到任何响应   0:正常响应
net.ipv4.icmp_echo_ignore_all=0
SYN洪水攻击防范
ipv4/tcp_syncookies

修改内存参数

修改内存的相关参数,是修改/proc/sys/vm目录中的相关文件;

使用swap分区的倾向性
# 默认值是60

swappiness

/sys文件系统

信息查看

查看系统已加载内核模块

每个已加载的模块在 /sys/module 下都有一个对应的目录,其名称与模块名称相同

/sys/module/mod_name

查看系统上的所有块设备

每个块设备都有一个对应的子目录(与块设备的名称同名),这些子目录内部包含关于设备的详细信息,例如设备的大小、模型、统计信息等。这些信息以文件形式存在,可以直接读取它们来获取有关设备的信息。

/sys/block

sysctl