oracle用户登录报错-bash: ulimit: open files: cannot modify limit: Operation not permitted

问题现象

使用ssh连接oracle用户时提示错误
-bash: ulimit: open files: cannot modify limit: Operation not permitted
操作系统版本:
cat /etc/SuSE-release
SUSE Linux Enterprise Server 11 (x86_64)
VERSION = 11
PATCHLEVEL = 1

问题原因

因为pam已经从limits.conf中设置了上限,而oracle用户登陆的时候尝试修改文件句柄的值,这个值大于了上限
那oracle用户在什么地方尝试修改的呢?
打开/etc/profile.local,可以看到

if [ $USER = oracle ]; then  
        if [ $SHELL = /bin/ksh ]; then  
                ulimit -p 16384  
                ulimit -n 65536  
        else  
                ulimit -u 16384 -n 65536  
        fi  
fi  

解决方法

修改/etc/security/limits.conf,将里面修改到大于oracle尝试修改的值即可

你可能感兴趣的:(面试&&经历)