首页 > 其他分享 >ulimit.conf中soft和hard区别及常用配置

ulimit.conf中soft和hard区别及常用配置

时间:2024-03-02 22:22:35浏览次数:21  
标签:限制 ulimit hard 用户 limit conf soft

在Linux中,ulimit命令用于限制用户对shell资源的访问,包括进程数、文件打开数等。这些限制可以分为软限制(soft limit)和硬限制(hard limit)。

软限制(soft limit)是当前系统生效的设置值,可以理解为一种警告的设定。当资源使用超过这个限制时,系统并不会立即阻止,而是会发出警告信息,提示用户已经接近或超过了限制。用户可以在软限制范围内继续使用资源,但应当注意避免超过硬限制。

硬限制(hard limit)是系统中所能设定的最大值,用户不能超过这个限制。只有当程序进程具有root权限时,才有可能突破硬限制。硬限制是确保系统稳定性和安全性的重要手段,可以防止用户过度消耗系统资源导致系统崩溃或其他问题。

总的来说,软限制和硬限制的主要区别在于它们的严格程度和可调整性。软限制更为宽松,允许用户在一定范围内超过限制,而硬限制则更为严格,必须严格遵守。同时,它们也共同构成了Linux系统中对用户资源使用的管理和控制机制。

cat >> /etc/security/limits.conf <<EOF
* soft nofile 65535
* hard nofile 655350
* soft nproc 65535
* hard nproc 655350
* seft memlock unlimited
* hard memlock unlimitedd
EOF

# 参数解释
#
# soft nofile 65535
# soft表示软限制,nofile表示一个进程可打开的最大文件数,默认值为1024。这里的软限制设置为65535,即一个进程可打开的最大文件数为65535。
#
# hard nofile 655350
# hard表示硬限制,即系统设置的最大值。nofile表示一个进程可打开的最大文件数,默认值为4096。这里的硬限制设置为655350,即系统设置的最大文件数为655350。
#
# soft nproc 65535
# soft表示软限制,nproc表示一个用户可创建的最大进程数,默认值为30720。这里的软限制设置为65535,即一个用户可创建的最大进程数为65535。
#
# hard nproc 655350
# hard表示硬限制,即系统设置的最大值。nproc表示一个用户可创建的最大进程数,默认值为4096。这里的硬限制设置为655350,即系统设置的最大进程数为655350。
#
# seft memlock unlimited
# seft表示软限制,memlock表示一个进程可锁定在RAM中的最大内存,默认值为64 KB。这里的软限制设置为unlimited,即一个进程可锁定的最大内存为无限制。
#
# hard memlock unlimited
# hard表示硬限制,即系统设置的最大值。memlock表示一个进程可锁定在RAM中的最大内存,默认值为64 KB。这里的硬限制设置为unlimited,即系统设置的最大内存锁定为无限制。

标签:限制,ulimit,hard,用户,limit,conf,soft
From: https://www.cnblogs.com/ydswin/p/18049375

相关文章

  • Maximum And Queries (hard version)
    首先来介绍一下SOSDP看这篇文章解释一下,最开始的初始化for(inti=0;i<(1<<N);i++)f[i]=w[i];就是0/1背包的的初始化,可以模拟一下想一下为啥然后是DP的过程中,注意f[st^(1<<i)]是肯定不会在这一层被更新的(因为(st^(1<<i))&(1<<i)肯定为\(0\)),所以倒序循环还是正序循环是无所谓的......
  • Centos 上python3 pip3安装报错:WARNING: pip is configured with locations that requ
    pip3安装报错:WARNING:pipisconfiguredwithlocationsthatrequireTLS/SSL,howeverthesslmoduleinPythonisnotavailable.在网上查一下原因是openssl版本不兼容导致,centos默认带的openssl版本太低,要升级openssl版本。openssl  下载地址:https://www.openssl.org/s......
  • 使用ConfuserEx代码混淆工具保护你的.NET应用程序
    .NET反编译相关的文章4款免费且实用的.NET反编译工具.NET反编译神器ILSpy怎么用?ConfuserEx.NET混淆工具安装GitHub开源地址:https://github.com/mkaring/ConfuserEx下载地址:https://github.com/mkaring/ConfuserEx/releases ConfuserEx-GUI.zip包解压即可使用:使......
  • Codeforces 1446D2 Frequency Problem (Hard Version)
    考虑求出全局的众数\(A\)。那么有一个结论,就是答案区间的众数中绝对有\(A\)。考虑反证法,如果没有\(A\),\(A\)在序列中出现的个数一定\(\ge\)区间内众数的出现个数,所以可以一直往外扩展直到\(A\)出现的个数与区间内非\(A\)众数的个数持平,这样肯定更优。于是可以考虑钦......
  • Spring @Configuration 和 @Component 区别
    Spring@Configuration和@Component区别一句话概括就是@Configuration中所有带@Bean注解的方法都会被动态代理,因此调用该方法返回的都是同一个实例。 @Configuration注解:@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Componentpublic@......
  • CF1209G2 Into Blocks (hard version) 题解
    Description给你\(n\),\(q\),\(n\)表示序列长度,\(q\)表示操作次数。我们需要达成这么一个目标状态:如果存在\(x\)这个元素,那么必须满足所有\(x\)元素都必须在序列中连续。然后你可以进行这么一种操作,将所有的\(x\)元素的变为任意你指定的\(y\)元素,并且花费\(cnt[x......
  • 【Spring Framework】IoC容器、依赖注入 + 基于XML && 基于注解 && 基于Java Config配
    概念IoC,InversionofControl,控制反转:将对象的控制权交由第三方统一管理DI,DependencyInjection:依赖注入,使用反射技术,是一种IoC的实现SpringIoC容器:用于统一创建与管理对象依赖XML管理对象(bean):applicationContext.xmlSpring框架使用流程-基于XML配置IoC容器1.导入spring......
  • 【架构师视角系列】QConfig配置中心系列之Client端(二)
    目录声明配置中心系列文章一、架构一、客户端架1、Server职责(1)配置管理(2)配置发布(3)配置读取2、Client职责(1)配置拉取(2)配置注入(3)配置变更监听3、基本交互流程(1)应用启动(2)配置变更通知(3)配置更新(4)配置注入二、架构思考三、源码剖析1、注解初始化1.1、逻辑描述1.2、时序图1.3、代码位置......
  • Kubernetes ConfigMap挂载导致容器目录中的文件被覆盖
    容器的/apps/pero/src/resources/文件夹下有多个文件,如果挂载一个文件进去,会把其他文件都覆盖掉,只剩挂载的文件按如下修改即可volumeMounts:-name:pero-configmountPath:/apps/pero/src/resources/application.propertiessubPath:a......
  • vyos mikrotik openwrt vlan config
    vyosmikrotikopenwrtvlanconfig vyos@vyos:~$showconfigurationallfirewall{all-pingenablebroadcast-pingdisableconfig-trapdisableipv6-receive-redirectsdisableipv6-src-routedisableip-src-routedisablelog-mart......