麒麟OS怎么查看系统资源限制_麒麟OS ulimit查看当前限制方法【进阶】

酷雪君_1764

酷雪君_1764

2026-04-05

888人浏览

原创

在麒麟os中查看系统资源限制需分五步:一、用ulimit命令查当前会话软硬限制;二、检查/etc/security/limits.conf及limits.d/下配置文件;三、追溯/etc/profile等启动脚本中的ulimit覆盖;四、通过tty重新登录验证pam limits模块是否生效;五、读取/proc/pid/limits获取内核级真实限制。

麒麟os怎么查看系统资源限制_麒麟os ulimit查看当前限制方法【进阶】

如果您在麒麟OS中需要确认当前用户或系统对进程资源的约束条件,则可能是由于应用程序运行异常、文件打开失败或进程创建受限。以下是查看系统资源限制的多种方法:

一、使用ulimit命令查看当前会话限制

该方法适用于快速获取当前终端会话中生效的软限制与硬限制,所有值均反映shell及其子进程的实际可用上限。

1、打开终端,执行命令:ulimit -a,显示全部资源限制项,包括文件大小、进程数、文件描述符数量等。

2、若仅需查看文件描述符数量限制,执行:ulimit -n。

3、若需区分软限制与硬限制,分别执行:ulimit -S -a 和 ulimit -H -a。

二、检查系统级持久化配置文件

该方法用于定位由PAM模块加载的全局或用户级默认限制,这些设置在用户登录时被应用,影响所有后续shell会话。

1、查看主限制配置文件:sudo cat /etc/security/limits.conf,其中包含以用户名、组名或通配符开头的软硬限制条目。

2、检查动态加载目录:ls /etc/security/limits.d/,随后逐个查看如 20-nproc.conf 或 90-nofile.conf 等文件内容。

3、确认PAM是否启用limits模块:grep pam_limits.so /etc/pam.d/common-session,应存在 session required pam_limits.so 行。

三、追溯启动脚本中的ulimit覆盖设置

该方法用于发现可能被shell初始化脚本显式重置的ulimit值,此类设置优先级高于limits.conf,但仅作用于当前shell环境。

1、检查系统级初始化脚本:sudo grep -n "ulimit" /etc/profile /etc/bash.bashrc 2>/dev/null。

2、检查当前用户专属配置:grep -n "ulimit" ~/.bashrc ~/.profile 2>/dev/null。

3、若发现匹配行,执行对应脚本后再次运行 ulimit -a 验证是否已被覆盖。

四、验证内核级与PAM联合生效状态

该方法用于确认limits.conf配置是否已通过PAM机制正确注入到登录会话中,避免因配置未加载导致查看结果与预期不符。

1、新建一个非图形界面的TTY终端(Ctrl+Alt+F2),以目标用户身份重新登录。

2、登录后立即执行:ulimit -a,对比此前图形终端中结果是否一致。

3、若不一致,说明图形会话未触发PAM limits模块,可检查桌面环境对应的PAM配置文件,例如:/etc/pam.d/lightdm 或 /etc/pam.d/gdm 中是否存在 session required pam_limits.so。

五、通过系统调用接口直接读取进程限制值

该方法绕过shell封装,直接从内核暴露的接口提取当前进程的rlimit结构体,结果最权威且不受shell环境干扰。

1、安装调试工具包(如未安装):sudo apt install procps(银河麒麟V10SP1适用)。

2、获取当前shell进程PID:echo $$。

3、查看该PID的资源限制:cat /proc/$(echo $$)/limits,输出字段含 Max open files、Max processes 等原始内核值。

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
c语言中null和NULL的区别
c语言中null和NULL的区别

c语言中null和NULL的区别是:null是C语言中的一个宏定义,通常用来表示一个空指针,可以用于初始化指针变量,或者在条件语句中判断指针是否为空;NULL是C语言中的一个预定义常量,通常用来表示一个空值,用于表示一个空的指针、空的指针数组或者空的结构体指针。

2023.09.22

529

3

java中null的用法
java中null的用法

在Java中,null表示一个引用类型的变量不指向任何对象。可以将null赋值给任何引用类型的变量,包括类、接口、数组、字符串等。想了解更多null的相关内容,可以阅读本专题下面的文章。

2024.03.01

1658

6

session失效的原因
session失效的原因

session失效的原因有会话超时、会话数量限制、会话完整性检查、服务器重启、浏览器或设备问题等等。详细介绍:1、会话超时:服务器为Session设置了一个默认的超时时间,当用户在一段时间内没有与服务器交互时,Session将自动失效;2、会话数量限制:服务器为每个用户的Session数量设置了一个限制,当用户创建的Session数量超过这个限制时,最新的会覆盖最早的等等。

2023.10.17

580

4

session失效解决方法
session失效解决方法

session失效通常是由于 session 的生存时间过期或者服务器关闭导致的。其解决办法:1、延长session的生存时间;2、使用持久化存储;3、使用cookie;4、异步更新session;5、使用会话管理中间件。

2023.10.18

856

5

cookie与session的区别
cookie与session的区别

本专题整合了cookie与session的区别和使用方法等相关内容,阅读专题下面的文章了解更详细的内容。

2025.08.19

1826

14

golang结构体相关大全
golang结构体相关大全

本专题整合了golang结构体相关大全,想了解更多内容,请阅读专题下面的文章。

2025.06.09

4054

18

golang结构体方法
golang结构体方法

本专题整合了golang结构体相关内容,请阅读专题下面的文章了解更多。

2025.07.04

4231

25

硬盘接口类型介绍
硬盘接口类型介绍

硬盘接口类型有IDE、SATA、SCSI、Fibre Channel、USB、eSATA、mSATA、PCIe等等。详细介绍:1、IDE接口是一种并行接口,主要用于连接硬盘和光驱等设备,它主要有两种类型:ATA和ATAPI,IDE接口已经逐渐被SATA接口;2、SATA接口是一种串行接口,相较于IDE接口,它具有更高的传输速度、更低的功耗和更小的体积;3、SCSI接口等等。

2023.10.19

3048

3

PHP接口编写教程
PHP接口编写教程

本专题整合了PHP接口编写教程,阅读专题下面的文章了解更多详细内容。

2025.10.17

4349

12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.3万人学习