一、问题描述

Linux 从root用户切换为普通用户时报错:

--从root切换到oracle用户
# su - oracle
Last login: Thu Jun 29 16:1:44 CST 2023 on pts/0
su: failed to execute /bin/bash: Resource temporarily unavailable

或出现如下报错:

# su - oracle
last login: Thu Jun 29 16:13:15 CST 223 on pts/1
bash: fork: retry: No child processes
bash: fork: retry: No child processes
retry: No child processesbash: fork:
bash: fork: retry: No child processes
bash:fork:Resource temporarily unavailable

二、处理方法

1.修改配置文件 vi /etc/security/limits.d/20-nproc.conf

修改前:

# Default limit for number of user's processes to prevent#accidental fork bombs.
# See rhbz #432903 for reasoning.

*      soft   nproc   4096
root   soft   nproc   unlimited

修改后:

# Default limit for number of user's processes to prevent#accidental fork bombs.
# See rhbz #432903 for reasoning.

*      soft   nproc   4096
root   soft   nproc   unlimited

2.修改配置文件 /etc/security/limits.conf

修改前:

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1924
oracle hard nofile 65536
oracle soft stack 1024
0oracle hard stack 32768

修改后:

root soft nofile 65535
root hard nofile 65535
oracle soft nproc 65535
oracle hard nproc 65535
oracle soft nofile 65535
oracle hard nofile 65536
oracle soft stack 10240
0oracle hard stack 32768

配置文件修改完成后,再次尝试切换至普通用户。


参考文章:
https://www.cnblogs.com/hsia2017/p/9173543.html
https://www.cnblogs.com/zhaojingyu/p/10929712.html
https://www.xiongtianqi.cn/thread-312313-1-1.html

Logo

鸿蒙生态一站式服务平台。

更多推荐