免责声明:本文档可能包含第三方产品信息。 此信息仅供参考。 AlibabaCloud (阿里巴巴云)不对第三方产品的性能、可靠性和操作可能造成的潜在影响进行任何暗示或其他形式的承诺。
问题的说明
当客户端登录到Linux实例时,在命令行操作期间将显示以下错误:
- bash : fork : retry : resourcetemporarilyunavailable。
PAM_limits(sshd:session ):couldnotsentlimitfor ' nofile ' : operatonnotpermitted。
永久被拒绝。
问题的原因
这通常是因为当前的shell进程处于打开状态,或者文件处于打开状态的数量超过了服务Ulimit系统环境的限制。
解决方案
AlibabaCloud (阿里巴巴云)提醒你:
当实例或数据存在更改、更改等风险时,重要的是注意实例的容错能力、容错能力,确保数据的安全。
如果要配置实例(包括但不限于ECS和RDS )和修改数据,建议您创建快照或打开RDS日志备份等功能。
如果在AlibabaCloud (阿里巴巴云)平台上批准或提交了登录账户、密码等安全信息,建议立即修改。
说明:本文的相关配置和说明将在CentOS 7.6 64位操作系统和CentOS 5 64位操作系统上进行测试。 其他类型和版本的操作系统配置可能不同。 有关详细信息,请参阅相应操作系统的官方文档。
由于上述问题,CentOS系统的版本需要修改limits.conf文件以永久更改Ulimit系统环境的限制。 从CentOS 6发行版开始,添加了X-nproc.conf文件管理Ulimit系统环境的限制。 因此,在此分别对不同的版本进行操作说明,步骤如下。
说明: X-nproc.conf文件的前缀数字因系统版本而异,例如CentOS 6版本中的90-nproc.conf,CentOS 7版本中的20-nproc.conf。 请以现场环境为准。
CentOS 6之前的版本
这里以CentOS 5 64位系统的版本为例。 步骤如下。
从管理终端登录此实例,执行以下命令,查看系统当前的Ulimit系统资源限制信息,并确认是否打开系统资源限制: 另外,还因为打开系统资源限制的值太小。
cat /etc/security/limits.conf
系统显示如下,缺省情况下未设置系统资源限制。
说明:
需要限制的系统用户可以用*替换所有用户。
有soft、hard、-三种参数。
soft是当前系统已启用的值。
hard是指系统中设定的最大值。
软件限制不能高于hard限制。 用-表示同时设置了soft和hard的值。
指定需要限制的使用资源类型。 资源类型参数包括:
核心是指限制内核文件的大小。
rss是指最大持续设置大小。
nofile是指打开的文件的最大数量。
noproc是指进程的最大数量。
如果系统根据现场反馈结果打开并配置了系统资源限制,请编辑limits.conf文件以注释、修改或删除noproc或nofile参数限制的资源类型代码操作
说明:这里以注释noproc为例。
运行以下命令以备份limits.conf文件:
CP-af/etc/security/limits.conf/root/limits.conf _ bak
运行以下命令进入编辑模式:
vim /etc/security/limits.conf
注释受nofile参数限制的资源类型代码。 操作结果如下。
退出编辑模式后,请重新启动Linux实例。
CentOS 6或更高版本
这里以CentOS 7.6 64位版为例。 步骤如下。
从管理终端登录此实例,然后运行以下命令以确定系统的当前Ulimit系统资源限制信息:
cat/etc/security/limits.d/20-nproc.conf
将显示类似以下内容的系统: 下图显示打开系统资源限制,除root用户外的所有用户的最大连接进程数为4096。 请基于站点环境。
使用CentOS 6或更早版本中的步骤修改/etc/security/limits.d/20-nproc.conf文件。
说明:操作前请备份/etc/security/limits.d/20-nproc.conf文件。
以上操作完成并保存配置后,重新启动对应的Linux实例即可。
相关文档
中所述
云服务ECS
如果问题仍然存在,请在AlibabaCloud (阿里巴巴云)社区免费咨询,或者提交工作单并联系AlibabaCloud (阿里巴巴云)技术支持人员。