解决 cannot restore segment prot after reloc: Permission denied

 
在power5 Linux上安装oracle10g后,通过命令行方式登录sqlplus时,报错:

error while loading shared libraries: $ORACLE_HOME/lib/libnnz10.so: cannot restore segment prot after reloc: Permission denied

最后的Permission denied
显示,初步认为是系统安全屏蔽了oracle执行某些执行动作。 于是检查系统防火墙iptables,已经关闭,于是想到了Selinux,

[root@localhost ~]# more /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=enforcing
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted

看来是selinux的缘故,关掉selinux试试!

修改SELINUX=disabled,然后重启系统才能生效,或者执行:setenforce 0,立即生效。

果然,关闭selinux后,sqlplus可以正常登陆了。

其实在上面出现Permission denied
时,也可以执行
#chcon -t texrel_shlib_t $ORACLE_HOME/lib/*.so

问题也可以得到解决,至于chcon可以看看selinux方面的命令即可明白了!


转自:http://www.ixdba.net/article/8c/2140.html

你可能感兴趣的:(Permission)