关于linux报bash: fork: Cannot allocate memory的问题
linux系统报-bash: fork: Cannot allocate memory 错误
内存不足,可先重启看下,如重启后问题依旧,更换内存条排除内存条硬件故障,若仍有问题,检查进程,并将内存占用大的进程结束,改大内存分配,
修改方法:
#查看最大进程数 sysctl kernel.pid_max
sysctl kernel.pid_max
#查看进程数
ps -eLf | wc -l
#确认是进程数满了
#处理方式一
#修改最大进程数后系统恢复
#
echo 1000000 > /proc/sys/kernel/pid_max
#处理方式二
#永久生效
echo "kernel.pid_max=1000000 " >> /etc/sysctl.conf
sysctl -p
#示例:此服务器是hive问题,删除hiveserver2进程后,进程数小了
#修改hiveserver2配置
#配置位置/opt/ben/core/hive/conf/hive-site.yml
<property>
<name>hive.server2.session.check.interval</name>
<value>60000</value>
</property>
<property>
<name>hive.server2.idle.session.timeout</name>
<value>3600000</value>
</property>
或执行下列命令编辑sysctl.conf文件:
vi /etc/sysctl.conf
添加
kernel.pid_max = 65530
sysctl -p
都不行,要考虑是否该程序一直有此问题,如果是那要检查修改代码了
上一条:iptables基础命令详解
下一条:Unix类系统修改密码命令