Runcluvfy failed with “line 99: /tmp/bootstrap/ouibootstrap.log: Permission denied”
On a 2-node RAC installation process, After the User Equivalence Configuration(of course you can chose either manual method or sshUserSetup.sh method of Oracle) performed pre-checks for cluster services setup check using runcluvfy.sh.
[oracle@CKPT-RAC1 softwares]$ /home/oracle/softwares/runcluvfy.sh stage -pre crsinst -n CKPT-RAC1,CKPT-RAC2 -verbose /bin/rm: cannot remove directory `/tmp/bootstrap': Operation not permitted /home/oracle/softwares/runcluvfy.sh: line 99: /tmp/bootstrap/ouibootstrap.log: Permission denied [oracle@CKPT-RAC1 softwares]$ /home/oracle/softwares/runcluvfy.sh stage -pre crsinst -n CKPT-RAC1,CKPT-RAC2 -fixup -verbose /bin/rm: cannot remove directory `/tmp/bootstrap': Operation not permitted /home/oracle/softwares/runcluvfy.sh: line 99: /tmp/bootstrap/ouibootstrap.log: Permission denied [oracle@CKPT-RAC1 softwares]$
After launching runcluvfy, it is failed with the above error and even used fixup attribute, still no luck. We can see above the log file “ouibootstramp.log” having permission issues, So we will check directory structure and its permissions.
-bash-3.2$ ls -ltr
total 60
drwx------ 2 root root 4096 Oct 22 22:48 keyring-bZP6tV
drwx------ 2 root root 4096 Oct 22 22:48 virtual-root.bGoDXQ
-rw-r--r-- 1 root root 20216 Oct 22 23:00 vboxguest-Module.symvers
drwx------ 2 root root 4096 Oct 28 12:10 ssh-dtitQc3206
drwx------ 2 root root 4096 Oct 28 12:10 keyring-QvRMf3
drwx------ 3 root root 4096 Oct 28 12:10 gconfd-root
drwx------ 2 root root 4096 Oct 28 12:11 virtual-root.1HuTeB
srwxr-xr-x 1 root root 0 Oct 28 12:11 mapping-root
drwx------ 2 root root 4096 Oct 28 12:12 orbit-root
drwxrwxrwx 2 oracle oinstall 4096 Oct 28 12:52 hsperfdata_oracle
drwxr-xr-x 2 root root 4096 Oct 28 12:54 bootstrap
-bash-3.2$ pwd
/tmp
-bash-3.2$ ls -ltr /tmp/bootstrap
total 0
-bash-3.2$ cd /tmp
-bash-3.2$ ls -ltr bootstrap/
total 0
-bash-3.2$
So the bootstrap directory where it tries to write the log files from “oracle” user, so change directory permissions to Oracle user. Now chang permissions of bootstrap director to Oracle, so that it can write the log into those files.
[root@CKPT-RAC1 tmp]# chown oracle:oinstall bootstrap/ [root@CKPT-RAC1 tmp]# ls -ltr total 60 drwx------ 2 root root 4096 Oct 22 22:48 keyring-bZP6tV drwx------ 2 root root 4096 Oct 22 22:48 virtual-root.bGoDXQ -rw-r--r-- 1 root root 20216 Oct 22 23:00 vboxguest-Module.symvers drwx------ 2 root root 4096 Oct 28 12:10 ssh-dtitQc3206 drwx------ 2 root root 4096 Oct 28 12:10 keyring-QvRMf3 drwx------ 3 root root 4096 Oct 28 12:10 gconfd-root drwx------ 2 root root 4096 Oct 28 12:11 virtual-root.1HuTeB srwxr-xr-x 1 root root 0 Oct 28 12:11 mapping-root drwx------ 2 root root 4096 Oct 28 12:12 orbit-root drwxrwxrwx 2 oracle oinstall 4096 Oct 28 12:52 hsperfdata_oracle drwxr-xr-x 2 oracle oinstall 4096 Oct 28 12:54 bootstrap [root@CKPT-RAC1 tmp]#
Again its time to launch runcluvfy to verify and will see whether will it overcome permissions issues.
-bash-3.2$ /home/oracle/softwares/runcluvfy.sh stage -pre crsinst -n CKPT-RAC1,CKPT-RAC2 -verbose Performing pre-checks for cluster services setup Checking node reachability... Check: Node reachability from node "CKPT-RAC1" Destination Node Reachable? ------------------------------------ ------------------------ CKPT-RAC1 yes CKPT-RAC2 yes Result: Node reachability check passed from node "CKPT-RAC1" Checking user equivalence... Check: User equivalence for user "oracle" Node Name Comment ------------------------------------ ------------------------ CKPT-RAC2 passed CKPT-RAC1 passed Result: User equivalence check passed for user "oracle" Checking node connectivity... Checking hosts config file... Node Name Status Comment ------------ ------------------------ ------------------------ CKPT-RAC2 passed CKPT-RAC1 passed
Well now, After changing the permissions on the directory now runcluvfy able to run this check. Of course this article is small but worth to have in repository for beginners.. 🙂
— Happy Reading–