首页 > 系统相关 >ulimit命令-限制linux内核的资源大小-(用户级,系统级2种限制)

ulimit命令-限制linux内核的资源大小-(用户级,系统级2种限制)

时间:2023-10-12 10:33:46浏览次数:40  
标签:文件 限制 ulimit 句柄 nofile linux 打开

ulimit命令-限制linux内核的资源大小

ulimit -n查看linux系统的最大文件打开数

设置最大文件打开数的大小:

临时设置:ulimit -SHn  65535

-S表示软限制

-H表示硬限制

永久生效:文件:/etc/security/limits.conf

添加2行:

*   soft  nofile 65535

*  hard    nofile 65535

上面的*代表所有用户,对所有用户生效

 

liunx中文件句柄有两个限制
一种是用户级的,一种是系统级的(也叫内核级)

Linux最大打开文件句柄数,即打开文件数最大限制,就是规定的单个进程能够打开的最大文件句柄数量(Socket连接也算在里面,默认大小1024)

系统级的最大限制:
cat /proc/sys/fs/file-max

用户级的最大限制
ulimit -n(默认是1024,向阿里云华为云这种云主机一般是65535)

查看某个进程的最大打开文件数和当前打开文件数
/proc/[pid]/limits 显示当前进程的资源限制
/proc/[pid]/fd 是一个目录,包含进程打开文件的情况
/proc/[pid]/task 查看某个进程的线程的详细信息

修改最大限制
用户级
用户级修改临时生效方法:(重启后失效)
ulimit -SHn 10000

ulimit 命令分软限制和硬限制,加-H就是硬限制,加-S就是软限制。默认显示的是软限制,如果运行ulimit 命令修改时没有加上-H或-S,就是两个参数一起改变。硬限制就是实际的限制,而软限制是警告限制,它只会给出警告

用户级修改永久有效方式:
vi /etc/security/limits.conf

修改配置文件/etc/security/limits.conf,加入:

soft nofile 65535
hard nofile 65535
echo “* soft nofile 65535” >> /etc/security/limits.conf
echo “* hard nofile 65535” >> /etc/security/limits.conf
表示所用的用户,但有的系统不认, 需要具体的用户名, 比如:
root soft nofile 65535
root hard nofile 65535
重新登录验证,或者reboot后验证。
系统级
其实上面的修改都是对一个进程打开的文件句柄数量的限制,我们还需要设置系统的总限制才可以。
假如,我们设置进程打开的文件句柄数是1024 ,但是系统总限制才500,所以所有进程最多能打开文件句柄数量500。从这里我们可以看出只设置进程的打开文件句柄的数量是不行的。所以需要修改系统的总限制才可以

系统级修改临时生效方式:
echo 655350 > /proc/sys/fs/file-max

系统级修改永久生效方式:
vi /etc/sysctl.conf
加入
#系统允许打开最大文件数
fs.file-max=655350
#进程允许打开最大文件数,这里注意nr_open要比nofile大,否则会出现登录不上
fs.nr_open=60000

sysctl -p
查看是否生效,如果不行,reboot即可。

标签:文件,限制,ulimit,句柄,nofile,linux,打开
From: https://www.cnblogs.com/cherishthepresent/p/17758907.html

相关文章

  • [扫盲]在linux上查询gpu占用
    参考资料:how-to-measure-gpu-usage按显卡厂家来区分:NvidiaGPU:nvidia-smi或者gpustatIntelGPU:intel-gpu-toolsAmdGPU:aticonfig--odgc--odgt......
  • linux 中 awk直接引入外部变量
     001、[root@pc1test1]#lsa.txt[root@pc1test1]#a=4[root@pc1test1]#cata.txt1[root@pc1test1]#awk'{for(i=1;i<="'$a'";i++)print"xx"}'a.txtxxxxxxxx 。 ......
  • linux 中实现将 不连续的一列数字间隔补充为0或者指定任意字符
     001、[root@pc1test2]#lsindex.txt[root@pc1test2]#catindex.txt##测试的一列数字2348911[root@pc1test2]#awk'{if(NR==1){a=$0-0-1;for(i=1;i<=a;i++){print"0"};print$0;tmp=$0}elseif($0-tmp!=1){a=......
  • Linux终端使用技巧
    Linux终端使用技巧1.命令提示符显示提示符格式[root@centos8~]#echo$PS1\[\e[1;35m\][\u@\h\W]\$\[\e[0m\]修改提示符格式范例PS1="\[\e[1;5;41;33m\][\u@\h\W]\\$\[\e[0m\]"PS1="\[\e[1;32m\][\t\[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m......
  • Linux p4 Vim使用
    【学习课程】:【【小白入门通俗易懂】2021韩顺平一周学会Linux】https://www.bilibili.com/video/BV1Sv411r7vd/?p=14&share_source=copy_web&vd_source=2c07d62293f5003c919b2df9b2e0549eVim快速入门vi和vim的基本介绍Linux系统会内置vi文本编辑器Vim具有程序编辑的能力,可......
  • Linux第六周技术博客
    今天我们学习文件的权限操作在Windows系统里文件的属性包括文件的创建者、创建时间、创建的位置和大小,在Linux系统中文件的属性同样包含这些。我们在/home/swxy中创建一个文件file01,用ll命令来查看文件的各种属性。llfile01-rw-r--r--.1rootroot010月1115:53file01在......
  • linux 中实现批量抽取指定的行
     001、测试数据[root@pc1test1]#lsa.txtindex.txt[root@pc1test1]#cata.txt##测试文件010210304205063070840910511126131471516817189192010212211232412252613[root@pc1test1]#catindex.txt##抽取......
  • linux文件权限
    基本权限UGO:U:所有者G:属组O:其他用户设置属性与权限chown:修改文件属性属组 例如:chownu1file1修改file1的所有者为u1,chownu1.g1file1修改file1的所有者为u1,所属组为g1chgrp:修改文件属组 例如:chgrplinux1file1修改所属组为linux1......
  • oracle11g linux环境安装
    【0】需求在centos7上安装oracle11G1204,有7个文件。【1】环境配置(1.1)修改主机名【1】hostnamenew_hostname#直接修改本地主机名 hostnamectlset-hostnamenew_hostname  【2】vi /etc/sysconfig/network#修改网......
  • linux socket地址
    socket地址://socket地址其实是一个结构体,封装端口号和IP等信息。后面的socket相关的API需要使用到这个socket地址。//客户端  -->  服务器(IP  、Port)通用socket地址:socket网络编程接口中表示socket地址是结构体sockaddr,其定义如下:(IPv4......