大厂面试官最爱问的/proc/sys,看这一篇就够了!

admin 2026-06-08 04:52:21 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详细解析了Linux系统中/proc/sys目录的结构与功能,重点介绍了abi、crypto、debug、dev、fs等关键子目录的内核参数作用。文档通过具体文件示例说明各参数在系统调优、硬件兼容性、加密合规、性能监控等运维场景的实际应用,并提供了可操作的内核参数调整建议。 综合评分: 85 文章分类: 技术标准,系统运维,安全工具,解决方案,安全建设


cover_image

大厂面试官最爱问的 /proc/sys,看这一篇就够了!

原创

刘军军 刘军军

运维星火燎原

2026年5月18日 00:02 山西

在小说阅读器读本章

去阅读

/proc/sys 下的目录结构其实就是 Linux 内核功能的映射。如果你在某些定制化内核或特殊硬件服务器上看到了其他陌生的目录,通常都是该特定硬件驱动或内核补丁导出的调优接口。

📂 /proc/sys/abi (应用程序二进制接口)

  • 作用:用于控制系统对不同二进制格式(如 SunOS、Solaris 等遗留格式)的兼容性处理。
  • 运维场景:在现代 Linux 发行版中,这个目录通常很少用到,但在一些需要运行老旧 Unix 商业软件的特定环境中可能会涉及。
[root@localhost abi]# ls -l
总计 0
-rw-r--r-- 1 root root 0  5月17日 11:46 vsyscall32
[root@localhost abi]# cat vsyscall32
1

这个文件是控制 32 位程序虚拟系统调用(vsyscall/vDSO) 功能的开关:作用:决定内核是否为 32 位进程映射 vDSO(虚拟动态共享对象)页,用于加速 gettimeofday 等高频系统调用,避免用户态到内核态的上下文切换开销。取值说明:1:启用(默认),兼容传统 32 位程序。0:禁用,部分老旧程序可能会报错。

📂 /proc/sys/crypto (加密子系统)

  • 作用:暴露内核加密子系统的配置参数和统计信息。
  • 运维场景:涉及系统底层加密、FIPS(联邦信息处理标准)合规性检查,或者排查与内核加密模块相关的性能问题时,会用到这里。
[root@localhost crypto]# ls -l
总计 0
-r--r--r-- 1 root root 0  5月17日 11:45 fips_enabled
-r--r--r-- 1 root root 0  5月17日 12:02 fips_name
-r--r--r-- 1 root root 0  5月17日 12:02 fips_version
3 个文件的核心作用(最重要)
1. fips_enabled
用途:查看系统是否开启 FIPS 140-3 加密标准
执行查看:cat fips_enabled
结果:
1 = FIPS 模式已启用(安全合规模式)
0 = FIPS 模式未启用(默认普通模式)
2. fips_name
用途:查看当前使用的 FIPS 加密模块名称
执行查看:cat fips_name
3. fips_version
用途:查看 FIPS 模块的版本号
执行查看:cat fips_version

📂 /proc/sys/debug (内核调试)

  • 作用:包含各种内核调试相关的开关和参数。
  • 运维场景:通常在开发内核模块或排查极其隐蔽的内核死锁、竞争条件时才会开启或修改。生产环境中一般保持默认,避免产生大量调试日志影响性能。
[root@localhost sys]# cd debug/
[root@localhost debug]# ls
exception-trace  kprobes-optimization
两个文件核心作用
1. exception-trace
功能:控制内核异常跟踪的开关
取值:
0:关闭(默认)
1:开启异常详细跟踪

2. kprobes-optimization
功能:控制 kprobes 内核探针优化 开关
kprobes:Linux 内核动态调试技术,用于在线调试内核、排查性能问题
优化开关:开启后探针执行效率更高
取值:
0:关闭优化
1:开启优化(默认)

📂 /proc/sys/dev (特定设备参数)

  • 作用:刚才提到过,这里存放特定硬件驱动导出的参数(如 RAID 卡、网卡驱动的特定调优项)。
  • 补充:它的结构通常是 /proc/sys/dev/<设备名>/,具体有什么文件完全取决于你服务器上插了什么硬件以及加载了什么驱动。
[root@localhost ~]# cd /proc/sys/dev/cdrom/
[root@localhost cdrom]# ls -l
总计&nbsp;0
-rw-r--r--1&nbsp;root root&nbsp;0&nbsp;&nbsp;5月17日&nbsp;12:10 autoclose
-rw-r--r--1&nbsp;root root&nbsp;0&nbsp;&nbsp;5月17日&nbsp;12:10 autoeject
-rw-r--r--1&nbsp;root root&nbsp;0&nbsp;&nbsp;5月17日&nbsp;12:10 check_media
-rw-r--r--1&nbsp;root root&nbsp;0&nbsp;&nbsp;5月17日&nbsp;12:10 debug
-r--r--r--1&nbsp;root root&nbsp;0&nbsp;&nbsp;5月17日&nbsp;12:10 info
-rw-r--r--1&nbsp;root root&nbsp;0&nbsp;&nbsp;5月17日&nbsp;12:10 lock

| 文件名 | 作用 | 取值 / 用法 | | — | — | — | | autoclose | 控制光驱托盘自动关闭 | 1(启用)/0(禁用),打开设备时自动关托盘 | | autoeject | 控制卸载光盘时自动弹出托盘 | 1(启用)/0(禁用),umount 后自动弹出 | | check_media | 控制内核是否定期检测光盘状态 | 1(启用)/0(禁用),检测光盘是否被更换 | | debug | 光驱调试日志开关 | 1(开启调试)/0(关闭),排查驱动问题时使用 | | info | 只读文件,显示光驱硬件信息 | 用 cat info 查看,包含型号、速度、支持的特性等 | | lock | 锁定光驱托盘,防止手动弹出 | 1(锁定)/0(解锁),锁定后按物理按键无法弹出 |

[root@localhost dev]# cd hpet/
[root@localhost hpet]# ls
max-user-freq
HPET:高精度事件计时器,Linux 系统硬件时钟定时组件
max-user-freq
含义:限制用户态程序可使用的 HPET 最大时钟频率
单位:Hz
[root@localhost dev]# cd mac_hid/
[root@localhost mac_hid]# ls
mouse_button2_keycode &nbsp;mouse_button3_keycode &nbsp;mouse_button_emulation
/sys/dev/mac_hid 详解
专门适配苹果 Mac 设备键鼠映射的内核控制目录,多用于 Linux 装黑苹果、Mac 机跑 Linux 环境
三个文件作用
mouse_button_emulation
鼠标按键模拟总开关
0&nbsp;关闭模拟
1&nbsp;开启键鼠按键映射模拟
mouse_button2_keycode
鼠标侧键&nbsp;2映射成键盘按键码
mouse_button3_keycode
鼠标侧键&nbsp;3映射成键盘按键码
[root@localhost dev]# cd raid/
[root@localhost raid]# ls
speed_limit_max &nbsp;speed_limit_min
/sys/dev/raid 内核 RAID 调速目录
两个文件作用
speed_limit_min
RAID 重建 / 同步最小限速(KB/s),最低读写速度
speed_limit_max
RAID 重建 / 同步最大限速(KB/s),最高读写速度
核心用途
调节软 RAID 阵列重建、同步、校验时的 IO 速度
调大:重建更快,占用带宽高
调小:限速不影响业务,重建变慢
[root@localhost dev]# cd scsi/
[root@localhost scsi]# ls
logging_level
/sys/dev/scsi 详解
文件:logging_level
作用:控制 SCSI 子系统日志打印级别,管控磁盘、SAS、SCSI 硬盘设备日志输出
级别取值
0:关闭日志(默认,最省资源)
1~7:日志级别逐级升高,数值越大打印日志越详细
级别越高,越能排查磁盘 IO 报错、掉线、超时、链路异常
[root@localhost dev]# cd tty
[root@localhost tty]# ls
ldisc_autoload &nbsp;legacy_tiocsti
/sys/dev/tty 终端子系统配置
1. ldisc_autoload
作用:是否自动加载终端线路规程
1 开启自动加载(默认)
0 关闭自动加载,手动挂载终端协议
多用于串口设备、工控串口、嵌入式 TTY 调试
2. legacy_tiocsti
作用:兼容老式终端输入接口
开启 = 兼容老旧串口终端、旧控制台程序
关闭 = 禁用旧式调用,提升安全与稳定性

📂 /proc/sys/fs (文件系统)

  • 作用

    :除了刚才提到的

  file-max

(文件句柄限制),这里还有几个关键子目录:

  [root@localhost sys]# cd fs
  [root@localhost fs]# ls
  aio-max-nr &nbsp; &nbsp; &nbsp; &nbsp; file-nr &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mqueue &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;protected_hardlinks
  aio-nr &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; fuse &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nr_open &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; protected_regular
  binfmt_misc &nbsp; &nbsp; &nbsp; &nbsp;inode-nr &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;overflowgid &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; protected_symlinks
  dentry-state &nbsp; &nbsp; &nbsp; inode-state &nbsp; &nbsp; &nbsp; overflowuid &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; quota
  dir-notify-enable &nbsp;inotify &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pipe-max-size &nbsp; &nbsp; &nbsp; &nbsp; suid_dumpable
  epoll &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;lease-break-time &nbsp;pipe-user-pages-hard
  fanotify &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; leases-enable &nbsp; &nbsp; pipe-user-pages-soft
  file-max &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mount-max &nbsp; &nbsp; &nbsp; &nbsp; protected_fifos

| 文件名 / 目录 | 核心作用 | 取值 / 说明 | 运维 / 调优场景 | | — | — | — | — | | aio-max-nr | 系统级异步 IO(AIO)请求最大并发数 | 默认约 65536,可修改,aio-nr 不能超过此值 | 数据库、存储系统调优,提升异步 IO 性能 | | aio-nr | 当前系统已使用的 AIO 请求总数 | 只读,实时反映 AIO 资源占用 | 排查 AIO 资源耗尽问题 | | binfmt_misc | 支持自定义可执行文件格式解析器 | 目录,可注册非标准格式的执行规则 | 运行自定义脚本、容器、交叉编译程序 | | dentry-state | 目录项缓存(dentry)状态统计 | 只读,包含已用 / 空闲 / 回收数 | 排查文件系统元数据性能问题 | | dir-notify-enable | 目录变更通知功能总开关 | 0 关闭 / 1 开启 | 依赖目录事件监控的应用(如备份工具) | | epoll | epoll 多路复用接口配置目录 | 含 max_user_watches 等参数,控制 epoll 监控上限 | 高并发服务器调优,防止 epoll 资源耗尽 | | fanotify | 高级文件系统事件监控接口目录 | 支持挂载级监控、访问控制决策,需特权 | 安全审计、防病毒、分层存储系统 | | file-max | 系统全局最大文件句柄数 | 可修改,默认由内核根据内存计算 | 高并发服务调优,解决 “Too many open files” | | file-nr | 当前文件句柄使用情况统计 | 输出 3 个值:已分配 / 空闲 / 最大值(第二个值 Linux 2.6 + 恒为 0) | 实时监控文件句柄占用趋势 | | fuse | FUSE(用户态文件系统)配置目录 | 控制 FUSE 文件系统的最大挂载数等 | 挂载用户态文件系统(如 sshfs、ntfs-3g) | | inode-nr | 当前 inode 使用情况统计 | 输出已分配 / 空闲 inode 数 | 排查 inode 耗尽导致的文件创建失败 | | inode-state | inode 缓存状态统计 | 只读,包含已用 / 空闲 / 脏 inode 数 | 分析文件系统元数据缓存性能 | | inotify | inotify 文件事件监控配置目录 | 含 max_user_watches/max_user_instances,控制监控上限 | 桌面应用、文件同步工具调优 | | lease-break-time | 文件租约中断超时时间 | 单位秒,租约到期前的强制回收等待时间 | NFS / 网络文件系统租约稳定性调优 | | leases-enable | 文件租约(flock/lease)功能开关 | 0 关闭 / 1 开启 | 多进程文件共享锁冲突排查 | | mqueue | POSIX 消息队列配置目录 | 控制队列最大消息数、单消息大小、队列数 | 进程间通信(IPC)调优 | | mount-max | 系统最大文件系统挂载数 | 可修改,默认约 1000 | 多容器 / 多分区环境挂载上限调优 | | nr_open | 单进程最大文件句柄数上限 | 可修改,全局限制进程级文件句柄上限 | 防止恶意进程耗尽系统文件资源 | | overflowgid | 16 位文件系统 GID 溢出时的默认映射值 | 默认 65534(nobody),可修改 | 兼容老旧 16 位文件系统(如 FAT、部分 NFS) | | overflowuid | 16 位文件系统 UID 溢出时的默认映射值 | 默认 65534(nobody),可修改 | 兼容老旧 16 位文件系统(如 FAT、部分 NFS) | | pipe-max-size | 管道 / 命名管道的最大缓冲区大小 | 默认约 1MB,可修改,单位字节 | 大数据管道传输调优(如日志处理) | | pipe-user-pages-hard | 非特权用户管道缓冲区总页数硬限制 | 0 为无限制,达到后无法创建新管道 | 防止恶意进程耗尽管道资源 | | pipe-user-pages-soft | 非特权用户管道缓冲区总页数软限制 | 超过后新管道强制使用单页缓冲区 | 限制普通用户管道资源占用 | | protected_fifos | 全局可写粘滞目录下 FIFO 文件保护 | 0 关闭 / 1 开启(限制非所有者写入) / 2 扩展到组可写目录 | 防止 /tmp 目录下 FIFO 文件被恶意劫持 | | protected_hardlinks | 硬链接创建安全限制 | 0 关闭 / 1 开启(仅允许链接到自己拥有的文件) | 防止普通用户创建敏感文件的硬链接 | | protected_regular | 全局可写粘滞目录下普通文件保护 | 0 关闭 / 1 开启 / 2 扩展到组可写目录 | 防止 /tmp 目录下普通文件被恶意覆盖 | | protected_symlinks | 符号链接跟随安全限制 | 0 关闭 / 1 开启(仅允许跟随自己拥有的链接) | 防止 /tmp 目录下符号链接劫持攻击 | | quota | 磁盘配额(Quota)配置目录 | 控制配额缓存、日志、启用状态 | 用户 / 组磁盘空间配额管理 | | suid_dumpable | SUID 程序 core dump 生成控制 | 0 禁止 / 1 允许 / 2 仅在安全路径生成 | 调试 SUID 程序,同时防止敏感信息泄露 |

  • fs/nfs/:如果你使用 NFS 服务器或客户端,这里有很多关于 NFS 挂载、超时、线程数的调优参数。

  • fs/quota/:与磁盘配额相关的内核参数。

  • fs/inotify/:控制 inotify 机制(常用于文件监控,如 Docker、IDE 监听文件变化)的最大实例数、最大监控数等,解决 inotify watch limit reached 报错就在这里调。

  • 这些文件 / 目录本质是内核提供的sysctl 接口,修改后大多临时生效,重启后恢复默认,永久生效需写入 /etc/sysctl.conf。

  • 安全类参数(如 protected_*)建议保持默认开启,防止 /tmp 等公共目录下的提权 / 劫持攻击。

  • 调优类参数(如 file-max/pipe-max-size)需结合业务负载和系统内存调整,避免盲目调大导致资源耗尽。

📂 /proc/sys/kernel (内核核心行为)

  • 作用

    :补充几个非常高频的运维参数:

  [root@localhost fs]# cd /proc/sys/kernel
  [root@localhost kernel]# ls
  acct &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;perf_event_max_sample_rate
  acpi_video_flags &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;perf_event_max_stack
  arch &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;perf_event_mlock_kb
  auto_msgmni &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; perf_event_paranoid
  bootloader_type &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pid_max
  bootloader_version &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;poweroff_cmd
  bpf_stats_enabled &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; print-fatal-signals
  cad_pid &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; printk
  cap_last_cap &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;printk_delay
  core_pattern &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;printk_devkmsg
  core_pipe_limit &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; printk_ratelimit
  core_uses_pid &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; printk_ratelimit_burst
  ctrl-alt-del &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;pty
  dmesg_restrict &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;qos_level_weights
  domainname &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;qos_offline_wait_interval_ms
  ftrace_dump_on_oops &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; qos_overload_detect_period_ms
  ftrace_enabled &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;random
  hardlockup_all_cpu_backtrace &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;randomize_va_space
  hardlockup_panic &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;real-root-dev
  hostname &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sched_autogroup_enabled
  hung_task_all_cpu_backtrace &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sched_cfs_bandwidth_slice_us
  hung_task_check_count &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sched_child_runs_first
  hung_task_check_interval_secs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sched_cluster
  hung_task_panic &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sched_deadline_period_max_us
  hung_task_timeout_secs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sched_deadline_period_min_us
  hung_task_warnings &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sched_prio_load_balance_enabled
  io_delay_type &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sched_rr_timeslice_ms
  io_uring_disabled &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sched_rt_period_us
  io_uring_group &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sched_rt_runtime_us
  kexec_load_disabled &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sched_schedstats
  kexec_load_limit_panic &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sched_util_low_pct
  kexec_load_limit_reboot &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; seccomp
  keys &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sem
  kptr_restrict &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sem_next_id
  max_lock_depth &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;shmall
  max_rcu_stall_to_panic &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;shmmax
  modprobe &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;shmmni
  modules_disabled &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;shm_next_id
  msgmax &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;shm_rmid_forced
  msgmnb &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;softlockup_all_cpu_backtrace
  msgmni &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;softlockup_panic
  msg_next_id &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; soft_watchdog
  ngroups_max &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; split_lock_mitigate
  nmi_watchdog &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;stack_tracer_enabled
  ns_last_pid &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sysctl_writes_strict
  numa_balancing &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sysrq
  numa_balancing_promote_rate_limit_MBps &nbsp;tainted
  oops_all_cpu_backtrace &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;task_delayacct
  oops_limit &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;threads-max
  osrelease &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; timer_migration
  ostype &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;traceoff_on_warning
  overflowgid &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tracepoint_printk
  overflowuid &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; unknown_nmi_panic
  panic &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; unprivileged_bpf_disabled
  panic_on_io_nmi &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; usermodehelper
  panic_on_oops &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; version
  panic_on_rcu_stall &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;warn_limit
  panic_on_unrecovered_nmi &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;watchdog
  panic_on_warn &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; watchdog_cpumask
  panic_print &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; watchdog_thresh
  perf_cpu_time_max_percent &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; yama
  perf_event_max_contexts_per_stack

| 参数名 | 核心作用 | 常用取值 / 说明 | | — | — | — | | acct | 内核进程记账开关 | 0 关闭 1 开启,统计进程资源 | | acpi_video_flags | ACPI 显卡电源策略 | 调节笔记本屏幕节能 | | arch | 系统架构标识 | 只读,显示 x86_64/arm 等 | | auto_msgmni | 自动调整消息队列数量 | IPC 队列自动扩容 | | bootloader_type | 引导程序类型 | 只读,识别 grub 等引导 | | bootloader_version | 引导程序版本 | 只读查看 | | bpf_stats_enabled | BPF 程序统计开关 | 0 关闭 1 开启 BPF 运行统计 | | cad_pid | Ctrl+Alt+Del 触发进程 PID | 控制系统重启快捷键行为 | | cap_last_cap | 系统最大权限能力值 | 权限管控上限 | | core_pattern | 内核崩溃转储文件格式 | 自定义 coredump 生成路径 / 命名 | | core_pipe_limit | core 转储管道并发限制 | 防止崩溃瞬间大量转储占资源 | | core_uses_pid | 转储文件是否追加 PID | 1 文件名带进程 ID | | ctrl-alt-del | 三键重启动作控制 | 0 禁用重启 1 允许 | | dmesg_restrict | 限制普通用户查看 dmesg | 1 仅 root 看系统内核日志,加固安全 | | domainname | 域名域名称 | 同主机域名配置 | | ftrace_dump_on_oops | 内核报错自动打印跟踪栈 | 报错自动输出 ftrace 调试信息 | | ftrace_enabled | 内核函数跟踪总开关 | 0 关闭 1 开启内核调用追踪 | | hardlockup_all_cpu_backtrace | 硬死锁打印全 CPU 栈 | 排查 CPU 死锁 | | hardlockup_panic | 硬死锁直接触发宕机 | 1 死锁立刻 panic 重启 | | hostname | 系统主机名 | 临时修改主机名 | | hung_task_* 系列 | 僵死进程检测全套参数 | 检测卡死进程、超时时间、告警 / 宕机 | | io_delay_type | IO 延迟等待模式 | 适配不同硬盘 IO 调度 | | io_uring_disabled | 禁用 io_uring 异步 IO | 0 启用 1 禁用,规避漏洞 | | io_uring_group | io_uring 进程组限制 | 管控异步 IO 进程权限 | | kexec_load_disabled | 禁用 kexec 热重启内核 | 1 禁用,防内核注入提权 | | keys | 内核密钥存储配置 | 系统内核密钥管理 | | kptr_restrict | 内核指针隐藏保护 | 1 隐藏内核地址,防漏洞利用 | | max_lock_depth | 内核锁最大嵌套深度 | 防止死锁嵌套溢出 | | max_rcu_stall_to_panic | RCU 卡顿超时宕机阈值 | 内核 RCU 阻塞超时触发重启 | | modprobe | 内核模块加载调用路径 | 指定模块加载程序 | | modules_disabled | 禁用内核模块加载 | 1 禁止加载任何内核模块,最高加固 | | msgmax | 单条消息队列最大长度 | IPC 消息单条上限 | | msgmnb | 单个消息队列最大字节数 | 队列总容量 | | msgmni | 系统最大消息队列总数 | 全局 IPC 队列数量上限 | | msg_next_id | 下一个消息队列 ID | 只读计数 | | ngroups_max | 用户最大附属组数量 | 限制用户加入用户组上限 | | nmi_watchdog | 硬件看门狗 NMI 监控 | 1 开启卡死强制重启 | | ns_last_pid | 命名空间最后 PID | 容器 PID 分配计数 | | numa_balancing | NUMA 架构内存自动均衡 | 多 CPU 节点内存调度优化 | | oops_all_cpu_backtrace | 内核报错打印全 CPU 栈 | 排错打印完整调用栈 | | oops_limit | 内核报错日志次数限制 | 限制重复报错刷屏 | | osrelease/ostype | 系统发行版 / 系统类型 | 只读系统标识 | | overflowgid/overflowuid | 老旧系统 ID 溢出默认映射 | 兼容 32 位旧文件系统 | | panic | 内核崩溃后自动重启秒数 | 0 不重启,正数延时重启 | | panic_on_* 系列 | 各类异常直接触发宕机 | IO 异常、Oops、NMI 告警等触发重启 | | panic_print | 崩溃时打印附加信息 | 宕机输出内存、寄存器信息 | | perf_* 系列 | 性能采样事件全套限制 | 管控 perf 性能采样频率、栈深度、权限 | | pid_max | 系统最大进程 PID 号 | 全局进程号上限 | | poweroff_cmd | 自定义关机执行命令 | 定制关机前置脚本 | | print-fatal-signals | 致命信号打印日志 | 程序崩溃打印信号日志 | | printk 系列 | 内核日志打印级别 / 限流 | 控制 dmesg 日志输出多少、速率 | | pty | 伪终端全局配置 | 调整虚拟终端数量限制 | | qos_* 系列 | 系统整机 QOS 调度权重 | 离线业务、过载检测调度策略 | | random | 内核随机数熵池配置 | 调整系统随机数生成 | | randomize_va_space | 地址空间随机化 ASLR | 1 开启,防缓冲区溢出攻击 | | real-root-dev | 真实根设备编号 | 早期根文件设备指定 | | sched_* 调度全系列 | Linux 进程调度核心参数 | 优先级、时间片、带宽、集群调度、RT 实时调度 | | seccomp | 系统调用隔离配置 | 容器进程系统调用权限限制 | | sem 信号量 | 系统 IPC 信号量全局限制 | 数据库必备调优 | | shm* 共享内存 | 共享内存段大小 / 数量限制 | Oracle/MySQL 共享内存调优核心 | | softlockup_* | 软死锁检测开关 | 检测进程软卡死 | | soft_watchdog | 软件看门狗总开关 | 纯软件进程卡死监控 | | split_lock_mitigate | 拆分锁性能缓解策略 | 缓解多核拆分锁卡顿 | | stack_tracer_enabled | 内核栈跟踪开关 | 调试内核栈溢出 | | sysctl_writes_strict | sysctl 修改严格校验模式 | 加固内核参数修改权限 | | sysrq | 内核魔法组合键总开关 | 开启 / 关闭 SysRq 应急快捷键 | | tainted | 系统内核污染标记 | 只读,判断是否加载非官方模块 | | task_delayacct | 进程延迟统计开关 | 统计进程 IO / 调度延迟 | | threads-max | 系统全局最大线程数 | 高并发服务器必调 | | timer_migration | 定时器 CPU 迁移调度 | 优化定时器 CPU 均衡 | | traceoff_on_warning | 告警自动关闭跟踪 | 报错停止 ftrace 节省性能 | | tracepoint_printk | 跟踪点打印内核日志 | 调试埋点日志输出 | | unknown_nmi_panic | 未知硬件中断直接宕机 | 硬件异常强制重启 | | unprivileged_bpf_disabled | 普通用户禁用 BPF | 安全加固,禁止普通用户用 BPF | | usermodehelper | 用户态辅助进程配置 | 内核调用用户态程序管控 | | version | 内核版本信息 | 只读查看内核详情 | | warn_limit | 内核告警日志次数限制 | 避免重复告警刷屏 | | watchdog 看门狗系列 | 软硬件看门狗阈值 / 掩码 | 服务器死机自动重启核心配置 | | yama | Yama 安全防护模块配置 | 链接劫持、ptrace 溯源安全限制 |

  • pid_max:控制系统最大进程/线程 ID 号。高并发服务器(如跑 Java、Go 应用)经常需要调大它,防止 PID 耗尽。
  • msgmax / msgmnb / msgmni:控制进程间通信(System V IPC 消息队列)的大小和数量。
  • core_pattern:定义程序崩溃时 Core Dump 文件的保存路径和命名格式,排查段错误(Segmentation Fault)必配。
  • printk:控制内核日志的输出级别,决定哪些级别的日志能打印到控制台。

📂 /proc/sys/net (网络栈)

  • 作用

    :这是最庞大的目录之一。除了 IPv4/IPv6,还有:

  [root@localhost net]# ls
  bridge &nbsp;core &nbsp;ipv4 &nbsp;ipv6 &nbsp;mptcp &nbsp;netfilter &nbsp;nf_conntrack_max &nbsp;unix

| 目录 / 文件 | 核心作用 | 运维用途 | | — | — | — | | bridge | 网桥网络内核参数 | 配置桥接转发、STP、ARP 过滤、虚拟网桥调优,虚拟机 / 容器桥接必备 | | core | 网络子系统全局通用参数 | 全局网络缓冲区、端口范围、拥塞控制、网卡队列通用配置 | | ipv4 | IPv4 全套内核网络参数 | 路由转发、TCP 调优、SYN 防御、TIME_WAIT 回收、ARP、路由缓存、防火墙转发 | | ipv6 | IPv6 网络参数 | 开启 / 关闭 IPv6、IPv6 路由、地址自动配置、转发策略 | | mptcp | 多路径 TCP 协议参数 | 多链路聚合、双线带宽叠加、移动网络稳流调优 | | netfilter | 内核防火墙 Netfilter 核心配置 | iptables/nftables 底层规则、钩子优先级、过滤策略 | | nf_conntrack_max | 连接跟踪表最大条目数 | 限制防火墙最大并发连接数,防连接表打满丢包 | | unix | Unix 域套接字参数 | 本地进程间通信套接字限制、本地 socket 资源管控 |

## 高频实用场景

  • net/core/:包含通用的网络层参数,如 somaxconn(监听队列最大值,高并发 Web 服务器必调)、netdev_max_backlog(网卡接收队列长度)。
  • net/unix/:Unix 域套接字的参数。
  • net/bridge/:如果服务器充当网桥(常见于 KVM、Docker 宿主机),这里有控制网桥转发、过滤的参数。
  1. 服务器高并发:改 ipv4 里 TCP 队列、TIME_WAIT、端口范围
  2. 容器虚拟化:调 bridge 桥接转发、内核 IP 转发
  3. 高并发防火墙:加大 nf_conntrack_max 连接跟踪上限
  4. 双线路组网:优化 mptcp 多路径 TCP
  5. 纯内网业务:直接关闭 ipv6 减少资源占用
  6. 本地进程通信:限制 unix 套接字数量防本地资源耗尽

📂 /proc/sys/user (用户命名空间)

  • 作用:控制 Linux 用户命名空间(User Namespaces)的创建限制。
  • 运维场景:在使用容器技术(如 Docker、Podman)或无服务器架构时,如果报错涉及 user namespace 限制,需要在这里调整 max_user_namespaces
[root@localhost user]# ls
max_cgroup_namespaces &nbsp;max_fanotify_marks &nbsp; &nbsp; max_inotify_watches &nbsp;max_mnt_namespaces &nbsp;max_pid_namespaces &nbsp; max_user_namespaces
max_fanotify_groups &nbsp; &nbsp;max_inotify_instances &nbsp;max_ipc_namespaces &nbsp; max_net_namespaces &nbsp;max_time_namespaces &nbsp;max_uts_namespaces

| 参数名 | 作用说明 | | — | — | | max_cgroup_namespaces | 最大 cgroup 命名空间数量,容器资源分组上限 | | max_fanotify_groups | fanotify 监控最大进程组上限 | | max_fanotify_marks | fanotify 文件监控标记最大数量 | | max_inotify_instances | 单用户最大 inotify 监控实例数 | | max_inotify_watches | 单用户 inotify 最大监控文件数 | | max_ipc_namespaces | 最大 IPC 进程通信命名空间数 | | max_mnt_namespaces | 最大挂载命名空间,独立文件系统隔离上限 | | max_net_namespaces | 最大网络命名空间,容器独立网卡 / 网络隔离 | | max_pid_namespaces | 最大 PID 命名空间,容器独立进程号隔离 | | max_time_namespaces | 最大时间命名空间,隔离系统时间 | | max_user_namespaces | 最大用户命名空间,权限身份隔离 | | max_uts_namespaces | 最大主机名域名命名空间,独立主机名隔离 |

核心用途

  • 容器 / K8s 专用:限制单用户可创建的各类隔离命名空间,防止批量创建容器耗尽系统资源
  • 安全防护:限制普通用户创建网络、PID、挂载隔离环境,防止提权逃逸
  • 运维调优:集群节点容器过多时,调大对应数值解决 too many namespaces 报错

📂 /proc/sys/vm (虚拟内存)

  • 作用

    :补充几个关键参数:

  [root@localhost user]# cd /proc/sys/vm
  [root@localhost vm]# ls
  admin_reserve_kbytes &nbsp; &nbsp; &nbsp; &nbsp; drop_caches &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;min_slab_ratio &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; overcommit_ratio
  cache_limit_mbytes &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; enable_soft_offline &nbsp; &nbsp; &nbsp; &nbsp;min_unmapped_ratio &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; page-cluster
  cache_reclaim_enable &nbsp; &nbsp; &nbsp; &nbsp; extfrag_threshold &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;mmap_min_addr &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;page_lock_unfairness
  cache_reclaim_s &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;hugetlb_optimize_vmemmap &nbsp; mmap_rnd_bits &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;panic_on_oom
  cache_reclaim_weight &nbsp; &nbsp; &nbsp; &nbsp; hugetlb_shm_group &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;mmap_rnd_compat_bits &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; percpu_pagelist_high_fraction
  compaction_proactiveness &nbsp; &nbsp; laptop_mode &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nr_hugepages &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; stat_interval
  compact_memory &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; legacy_va_layout &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; nr_hugepages_mempolicy &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; stat_refresh
  compact_unevictable_allowed &nbsp;lowmem_reserve_ratio &nbsp; &nbsp; &nbsp; nr_overcommit_hugepages &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;swappiness
  dirty_background_bytes &nbsp; &nbsp; &nbsp; max_map_count &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;numa_stat &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;unprivileged_userfaultfd
  dirty_background_ratio &nbsp; &nbsp; &nbsp; memcg_qos_enable &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; numa_zonelist_order &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;user_reserve_kbytes
  dirty_bytes &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;memcg_swap_qos_enable &nbsp; &nbsp; &nbsp;oom_dump_tasks &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; vfs_cache_pressure
  dirty_expire_centisecs &nbsp; &nbsp; &nbsp; memfd_noexec &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; oom_kill_allocating_task &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; watermark_boost_factor
  dirty_ratio &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;memory_failure_early_kill &nbsp;oom_kill_cpuless_numa_allocating_task &nbsp;watermark_scale_factor
  dirtytime_expire_seconds &nbsp; &nbsp; memory_failure_recovery &nbsp; &nbsp;overcommit_kbytes &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;zone_reclaim_mode
  dirty_writeback_centisecs &nbsp; &nbsp;min_free_kbytes &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;overcommit_memory

| 参数名 | 核心作用 | | — | — | | admin_reserve_kbytes | 为管理员预留内存大小 (KB),防普通用户占满内存 | | cache_limit_mbytes | 页缓存上限 (MB),限制系统缓存占用 | | cache_reclaim_enable | 开启 / 关闭缓存主动回收机制 | | cache_reclaim_s | 缓存回收扫描间隔时长 | | cache_reclaim_weight | 缓存回收权重,控制回收激进程度 | | compaction_proactiveness | 内存碎片整理主动执行力度 | | compact_memory | 手动触发内存整理开关 | | compact_unevictable_allowed | 允许整理不可回收内存页 | | dirty_background_bytes | 后台刷盘脏页阈值 (字节) | | dirty_background_ratio | 后台脏页占内存百分比阈值 | | dirty_bytes | 系统全局脏页总上限 (字节) | | dirty_expire_centisecs | 脏页超时不写盘时长 (厘秒) | | dirty_ratio | 进程强制刷盘脏页内存占比 | | dirtytime_expire_seconds | 长时间未访问脏页过期时长 | | dirty_writeback_centisecs | 内核定时刷盘轮询间隔 (厘秒) | | drop_caches | 手动清理页缓存 / 目录项 /inode 缓存 | | enable_soft_offline | 开启内存软离线,隔离故障内存页 | | extfrag_threshold | 内存碎片阈值,超标触发整理 | | hugetlb_optimize_vmemmap | 优化大页内存虚拟映射结构,省内存 | | hugetlb_shm_group | 允许使用大页共享内存的用户组 | | laptop_mode | 笔记本省电内存读写模式,减少磁盘频繁唤醒 | | legacy_va_layout | 兼容老式虚拟内存地址布局 | | lowmem_reserve_ratio | 低端内存预留比例,防止高端内存挤占 | | max_map_count | 单进程最大虚拟内存映射区域数,Java 必备调优 | | memcg_qos_enable | 内存 Cgroup QoS 流量管控开关 | | memcg_swap_qos_enable | 容器内存交换分区 QoS 限制 | | memfd_noexec | 禁止 memfd 文件执行二进制程序,安全加固 | | memory_failure_early_kill | 内存硬件错误提前杀死进程 | | memory_failure_recovery | 开启内存硬件错误自动恢复 | | min_free_kbytes | 系统预留最小空闲内存 (KB),内核应急内存 | | min_slab_ratio | Slab 缓存最低保留占比 | | min_unmapped_ratio | 未映射内存最低保留比例 | | mmap_min_addr | 限制最低内存映射地址,防空指针攻击 | | mmap_rnd_bits | 内存地址随机化位数 (64 位系统) | | mmap_rnd_compat_bits | 兼容模式地址随机化位数 | | nr_hugepages | 系统预分配标准大页数量 | | nr_hugepages_mempolicy | 大页内存 NUMA 节点分配策略 | | nr_overcommit_hugepages | 超额临时大页上限 | | numa_stat | 开启 NUMA 内存节点统计 | | numa_zonelist_order | NUMA 内存区域分配优先级 | | oom_dump_tasks | OOM 触发时打印所有进程内存状态 | | oom_kill_allocating_task | OOM 优先杀死申请内存的进程 | | oom_kill_cpuless_numa_allocating_task | NUMA 架构下 OOM 精准杀进程 | | overcommit_kbytes | 内存超量分配固定额度限制 | | overcommit_memory | 内存超分配策略 (0/1/2) | | overcommit_ratio | 内存超分配百分比上限 | | page-cluster | 磁盘预读内存页数量 | | page_lock_unfairness | 内存页锁公平调度策略 | | panic_on_oom | 内存溢出直接内核宕机 | | percpu_pagelist_high_fraction | 单 CPU 内存页列表占用上限 | | stat_interval / stat_refresh | 内存状态统计刷新间隔 | | swappiness | 系统使用交换分区倾向值 (0-100) | | unprivileged_userfaultfd | 普通用户是否允许用户态缺页异常机制 | | user_reserve_kbytes | 普通用户预留应急内存 | | vfs_cache_pressure | 回收目录项 / Inode 缓存倾向值 | | watermark_boost_factor | 内存水位升压因子,加速空闲内存回升 | | watermark_scale_factor | 内存高低水位缩放比例 | | zone_reclaim_mode | 内存区域不足时回收策略 |


### 生产常用速记

  • dirty_ratio / dirty_background_ratio:控制内存中“脏页”(已修改但未写入磁盘的数据)的比例,直接影响系统的 IO 吞吐和突发写入性能。
  • drop_caches:写入特定值(如 1, 2, 3)可以手动清理系统缓存(PageCache, dentries, inodes),常用于排除缓存干扰的 IO 性能测试。
  • min_free_kbytes:保留的最小空闲内存,防止系统在内存极度紧张时彻底卡死。
  1. 数据库 / Java:调大max_map_count、调低swappiness、优化脏页刷盘参数
  2. 容器集群:开启memcg系列、限制内存超分配overcommit_memory=2
  3. 服务器省电:开启laptop_mode,降低磁盘 IO 频次
  4. 清理缓存echo 3 > /proc/sys/vm/drop_caches
  5. 防 OOM 雪崩:配置panic_on_oomoom_kill_allocating_task
  6. 大页部署:修改nr_hugepages配合业务使用

免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:运维星火燎原 刘军军 刘军军《大厂面试官最爱问的 /proc/sys,看这一篇就够了!》

在地下_马识途_摘录(11) 网络安全文章

在地下_马识途_摘录(11)

文章总结: 本文为马识途革命回忆录摘录,记述作者在成都党组织遭破坏后转移至重庆,通过朋友韩觉民筹款并借助海关职员黄毅掩护,与特务周旋后计划绕道贵州、广西前往香港
评论:0   参与:  0