[INS-35180] Unable to check for available memory

Linux平台安装Oracle 19c的时候遇到了下面错误“[INS-35180] Unable to check for available memory”,如图所示:

具体的错误信息如下所示:

Additional Information:
Exception details  - PRVG-1901 : failed to setup CVU remote execution framework directory "/tmp/InstallActions2024-09-20_09-18-46AM/CVU_19.0.0.0.0_oracle/" on nodes "orapreftest"
Please select a different work area for the framework
orapreftest : /bin/sh: /tmp/InstallActions2024-09-20_09-18-46AM/CVU_19.0.0.0.0_oracle//exectask.sh: Permission denied
orapreftest : /bin/sh: /tmp/InstallActions2024-09-20_09-18-46AM/CVU_19.0.0.0.0_oracle//exectask.sh: Permission denied

Version of exectask could not be retrieved from node "orapreftest"

其实遇到这个错误的原因有多种,当前这个案例中,明显是因为没有/tmp目录下相关脚本的执行权限。排查下来,发现是因为安全规范设置,系统管理员在rc.local中对/tmp目录进行了限制,如下所示:

# cat /etc/rc.local
#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

touch /var/lock/subsys/local

mount -o remount,nodev,nosuid,noexec /tmp
mount -o remount,nodev,nosuid,noexec /var
mount -o remount,nodev /home
mount -o remount,nodev,nosuid,noexec /dev/shm


su  oracle -lc "/opt/oracle19c/product/19.3.0/db_1/bin/lsnrctl start"
su  oracle -lc  /opt/oracle19c/product/19.3.0/db_1/bin/dbstart
bash /home/oracle/dba_scripts/db_auto_start.sh 2>>&1 /home/oracle/dba_scripts/logs/db_auto_start.log