Bash Error 255
Sometimes you have to apply a RU when launching Oracle 19c gridSetup.sh to install Oracle Grid Infrastructure or Oracle restart. For example when you install it in its vanilla 19.3 version on Oracle Linux 8. OL8 did not exist when they made 19.3, so some of its specials (like verifying group/user existence) worked differently. Then you usually do:
./gridSetup.sh -applyRU /path/to/unzipped/RU/<patchID>
And sometimes is just comes back with doing nothing:
$ ./gridSetup.sh -applyRU /path/to/unzipped/RU/<patchID> $ echo $? 255
Bash error code 255, without any hint… no entries in cfgtoollogs or elsewhere…
Security hurts sometimes
Why? In some environments, it’s required to mount your /tmp directory with the NOEXEC flag – and this is exactly what breaks your neck here. There are scripts placed in /tmp which the installer tries to execute, and if it can’t, it breaks without logging: The gridSetup.sh -applyRU needs /tmp mounted EXEC. Later, during regular GI operations, /tmp in NOEXEC is not an issue any more.
So change the /tmp mount just temporarily to EXEC, until next reboot:
$ mount -o remount,exec /tmp
The reward is:
$ ./gridSetup.sh -applyRU /path/to/unzipped/RU/<patchID> Preparing the home to patch ... Applying the patch /path/to/unzipped/RU/<patchID> ...
Enjoy the joy of your Oracle Grid Infrastructure or Oracle Restart 19c … 🙂