报错:failed to execute /bin/bash: Resource temporarily unavailable

  • Post author:
  • Post category:其他


记生产的一次报错:



问题:

[yx_kangxueqiang@hadoop132 ~]$ su - dop 
Password: 
Last login: Wed Jan 19 15:51:58 CST 2022 on pts/6
su: failed to execute /bin/bash: Resource temporarily unavailable



解决问题:

编辑文件

  1. /etc/security/limits.d/20-nproc.conf
 vim /etc/security/limits.d/20-nproc.conf

其他用户修改为:65535

*          soft    nproc     65535
root       soft    nproc     unlimited
  1. /etc/security/ limits.conf
vim /etc/security/ limits.conf
*   soft  nofile  65535
*   hard  nofile  65535
*   soft  noproc  65535
*   hard  noproc  65535

dop soft  nofile  65535
dop hard  nofile  65535
dop soft  noproc  65535
dop hard  noproc  65535

obc_ftp soft  nofile  65535
obc_ftp hard  nofile  65535
obc_ftp soft  noproc  65535
obc_ftp hard  noproc  65535

username|@groupname:设置需要被限制的用户名,组名前面加@和用户名区别。也可以用通配符*来做所有用户的限制。

type:有 soft,hard 和 -,soft 指的是当前系统生效的设置值。hard 表明系统中所能设定的最大值。soft 的最大值不能超过hard的值。用 – 就表明同时设置了 soft 和 hard 的值。

resource:

core – 限制内核文件的大小

date – 最大数据大小

fsize – 最大文件大小

memlock – 最大锁定内存地址空间

nofile – 打开文件的最大数目

rss – 最大持久设置大小

stack – 最大栈大小

cpu – 以分钟为单位的最多 CPU 时间

noproc – 进程的最大数目

as – 地址空间限制

maxlogins – 此用户允许登录的最大数目

要使 limits.conf 文件配置生效,必须要确保 pam_limits.so 文件被加入到启动文件中。查看 /etc/pam.d/login 文件中有:

session required /lib/security/pam_limits.so

ulimit [-acdfHlmnpsStvw] [size]

参数详解:

-H 设置硬件资源限制.

-S 设置软件资源限制.

-a 显示当前所有的资源限制.

-c size:设置core文件的最大值.单位:blocks

-d size:设置数据段的最大值.单位:kbytes

-f size:设置创建文件的最大值.单位:blocks

-l size:设置在内存中锁定进程的最大值.单位:kbytes

-m size:设置可以使用的常驻内存的最大值.单位:kbytes

-n size:设置内核可以同时打开的文件描述符的最大值.单位:n

-p size:设置管道缓冲区的最大值.单位:kbytes

-s size:设置堆栈的最大值.单位:kbytes

-t size:设置CPU使用时间的最大上限.单位:seconds

-v size:设置虚拟内存的最大值.单位:kbytes

在/etc/profile文件末尾加上如ulimit -f 1000,这样每个会话登陆时都会生效。

继续切换应用账户,恢复。



版权声明:本文为qq_39122146原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。