日期:2014-05-16 浏览次数:20646 次
现象:
sqlplus /nolog
sqlplus: error while loading shared libraries: /u01/oracle/lib/libclntsh.so.11.1: cannot restore segment prot after reloc: Permission denied
解决办法:
这个问题是由于SELINUX引起的.
1. 编辑/etc/sysconfig/selinux配置文件, 把SELINUX=enforcing 改为 SELINUX=disabled.
[root@localhost /]# vi /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
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#?????? targeted - Only targeted network daemons are protected.
#?????? strict - Full SELinux protection.
SELINUXTYPE=targeted
2. 使用命令chcon改变文件或者目录的SELinux属性, 语法chcon -t texrel_shlib_t 库名字
[root@localhost /]# chcon -t texrel_shlib_t /u01/oracle/lib/libclntsh.so.11.1
如果运行过程中发现其它的库文件也报类似的错误, 可以使用同样的方法来解决.