Recently we faced an issue where the listener wasn’t able to start and was failing with permission issues :
[oracle@Infra001 admin]$ lsnrctl start LISTENERinfra1
LSNRCTL for Linux: Version 12.1.0.2.0 – Production on 23-FEB-2019 07:34:26
Copyright (c) 1991, 2014, Oracle. All rights reserved.
Starting /oracle/Infra1/12102/bin/tnslsnr: please wait…
TNSLSNR for Linux: Version 12.1.0.2.0 – Production
System parameter file is /oracle/Infra1/12102/network/admin/listener.ora
Log messages written to /oracle/Infra1/diag/tnslsnr/Infra001/listenerinfra1/alert/log.xml
Error listening on: (ADDRESS=(PROTOCOL=IPC)(KEY=Infra1.WORLD))
TNS-12555: TNS:permission denied
TNS-12560: TNS:protocol adapter error
TNS-00525: Insufficient privilege for operation
Linux Error: 1: Operation not permitted
Listener failed to start. See the error message(s) above…
There could be various issues due to which we can face this permission related error while starting up the listener. Listing a few in here :
1> The User is not having sufficient privileges to start the listener. But in here we were trying to start the listener with Oracle user itself, from where it was up earlier
2> File systems permissions might have changed after server reboot. Please check the file system permissions.
In this scenario, we had issue with the socket files present under “/var/tmp/.oracle”
[oracle@Infra001 admin]$ ls -ltr /var/tmp/.oracle
total 0
srwxrwxrwx 1 infra1adm apsys 0 Sep 9 2015 sinfra1.WORLD
srwxrwxrwx 1 infra1adm apsys 0 Sep 9 2015 sinfra1
srwxrwxrwx 1 infra1adm apsys 0 Sep 9 2015 s#1343.1
srwxrwxrwx 1 infra1adm apsys 0 Sep 9 2015 s#1342.2
srwxrwxrwx 1 oracle oinstall 0 Nov 29 2015 s#3068.1
srwxrwxrwx 1 oracle oinstall 0 Nov 29 2015 s#3068.2
srwxrwxrwx 1 oracle oinstall 0 Sep 24 2017 s#759.1
srwxrwxrwx 1 oracle oinstall 0 Sep 24 2017 s#759.2[oracle@Infra001 admin]
$ ls -ld /var/tmp/.oracle
drwxrwxrwt 2 infra1adm apsys 4096 Sep 24 2017 /var/tmp/.oracle
As you can see here, the socket files directory ownership was changed to Infra1adm user , where its supposed to be oracle.
This is still not the issue for Listener not getting started, since the directory has full privileges on it.
But Listener services wont start until the the socket files with ownership other Oracle are removed.
Once the socket files other than oracle are removed, the Listener was successfully started.
Please let us know in the comment section if you had confronted this issue and there was some other reason behind the same