现在的位置: 首页 > 综合 > 正文

由于SElinux设置,导致oracle 11G sqlplus无法启动

2013年10月06日 ⁄ 综合 ⁄ 共 836字 ⁄ 字号 评论关闭

 

sqlplus / as sysdba
sqlplus: error while loading shared libraries: /u01/app/oracle/product/11.1.0/db_1/lib/libnnz11.so: cannot restore segment prot after reloc: Permission denied
这个问题发生在ORACLE ENTERPRISE LINUX R5上,无论是32位还是64位都存在这个问题。
第一次在安装32位的ORACLE 11G for Linux的时候也碰到了,当时没有记录下来,这次特意查询了一下Metalink,Oracle在metalink的文档:Doc ID: Note:454196.1中对于问题进行了详细的描述。
最简单的解决方法莫过于将SElinux设置位PERMISSIVE状态:
[root@enterprice64 ~]# getenforce
Enforcing
[root@enterprice64 ~]# setenforce 0
[root@enterprice64 ~]# getenforce
Permissive

或者运行[root@enterprice64 ~]#setup 进行设置

 

 

 

配置 SELinux是很简单的。同样,一些简单配置可以通过改变配置文件 /etc/sysconfig/selinux 来完成。在配置文件中有三种指令,描述如下:

指令 <-------->描述
SELINUX <-------->SELinux工作状态,可以设置为 enforcing,permissive或disabled。
SELINUXTYPE <-------->指定保护级别。默认是 targeted,仅作用于daemons。另一个选择是 strict 使用 SELinux进行全面保护。
SELOCALDEFS <-------->支持本地 SELinux 策略。默认设置为 0(即关闭)

如果你想改变 SELinux的基本状态,改变 SELinux指令。重启后,改动生效。

抱歉!评论已关闭.