linux 用户内存保障管理配置

1.先确认是不是内存 OOM 被杀

dmesg -T | grep -i killed

如果输出类似:Out of memory: Killed process xxx (tessent_shell)就是内存不够被系统强杀,完全符合你判断。

2.方案 1:给 zhangsan 调高 OOM 优先级(最简单、零风险)

Linux 有 oom_score_adj,数值 -1000 ~ 1000

  • 越小:越不容易被 OOM 杀掉
  • 越大:内存不够时最先被干掉

1. 给 zhangsan 用户所有进程设为最优先

编辑 /etc/security/limits.conf 不行,要用 systemd 全局默认 + 用户固定 oom 权重

临时对当前已有进程生效

找到 tessent_shell 进程 PID:

ps -ef | grep tessent_shell

假设 PID=12345

echo -500 > /proc/12345/oom_score_adj

3.永久:所有 zhangsan 登录进程默认高优先级 zhangsan的uid未1112

mkdir -p /etc/systemd/system/user@1112.service.d

cat > /etc/systemd/system/user@1112.service.d/oom-priority.conf << EOF

Service

OOMScoreAdjust=-900

EOF

systemctl daemon-reload

4.再把系统内核参数设置好(保证系统不崩)

echo "vm.oom_kill_allocating_task = 0" >> /etc/sysctl.conf

echo "vm.min_free_kbytes = 41943040" >> /etc/sysctl.conf

sysctl -p

  • zhangsan 的 tessent_shell → OOM 优先级 -900(系统最后才会杀他)
  • 其他用户 → 保持默认,内存不够优先杀他们
  • 系统永远保留 40GB 空闲内存 → 不崩溃、不卡

5.限制其他普通用户内存(把内存留给 zhangsan)

vim /etc/security/limits.conf

普通用户:最大锁定物理内存 128GB 足够日常作业

* soft memlock 134217728

* hard memlock 134217728

普通用户:单进程虚拟内存上限 512GB,防止乱起大进程吃光1T内存

* soft as 536870912

* hard as 536870912

===================== 专属给 zhangsan =====================

跑Tessent仿真:内存锁定、进程地址空间 全部无限制

zhangsan soft memlock unlimited

zhangsan hard memlock unlimited

zhangsan soft as unlimited

zhangsan hard as unlimited

相关推荐
六点_dn10 分钟前
Linux学习笔记-printf命令
linux·运维·算法
蜡台13 分钟前
Linux Python 安装使用
linux·运维·服务器
欧神附体12329 分钟前
在虚拟机中添加网卡,修改网卡名并关闭SElinux
linux·服务器·网络
147API1 小时前
OpenAI新增工作区Admin keys,管理自动化怎么拆权限
运维·人工智能·自动化·openai·api
三8441 小时前
路由策略/控制 配置双点双向路由重发布
服务器·前端·javascript
喵喵喵~~~~1 小时前
2026 指挥控制台源头工厂深度测评:按行业项目落地能力择优采购指南
大数据·运维·人工智能·智能家居
Qimooidea2 小时前
祁木 CAD Translator 工程图纸出海实战指南
服务器·前端·安全
小顿的企业观察2 小时前
从人形机器人到AI销售智能体,AI正在重塑中企出海的底层逻辑
大数据·运维·人工智能·机器人·产品运营·制造
brave_zhao3 小时前
openEuler下安装tar包解压工具
linux·服务器·数据库
工业HMI实战笔记3 小时前
【拯救HMI】:低碳制造:自动化技术如何助力企业节能降耗
运维·前端·自动化·交互·制造