>Oracle 10g + Redhat5, installed and used everything fine, installed user oracle.
Today I started sqlplus with oracle user normally
[abc@rhel4 admin]$ sqlplus/as sysdba
SQL*Plus: Release 10.2.0.1.0 – Production on Thu Apr 23 12:11:25 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 – Production
With the Partitioning, OLAP and Data Mining options
SQL>
However, when the listener is started, an error is reported.
[abc@rhel4 admin]$ lsnrctl
LSNRCTL for Linux: Version 10.2.0.1.0 – Production on 23-APR-2009 12:13:06
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Welcome to LSNRCTL, type “help” for information.
LSNRCTL> start
Starting /u01/app/oracle/product/10.2.0/bin/tnslsnr: please wait…
TNSLSNR for Linux: Version 10.2.0.1.0 – Production
System parameter file is /u01/app/oracle/product/10.2.0/network/admin/listener.ora
Log messages written to /u01/app/oracle/product/10.2.0/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521)))
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
TNS-12555: TNS:permission denied
TNS-12560: TNS:protocol adapter error
TNS-00525: Insufficient privilege for operation
Linux Error: 1: Operation not permitted
The log error message shows that it has something to do with permissions, and finally we found a hidden message.
The /var/tmp/.oracle directory is special, if oracle does not have permission to operate this directory, oracle users cannot access the /var/tmp/.oracle folder.
The method is simple: chmod 777 /var/tmp/.oracle
and you’re good to go.