Error «clientSupportedOSCheck» al instalar Oracle en Red Hat 8

He instalado múltiples bases de datos en Red Hat 7, en Oracle Linux 7, incluso en CentOS 7 para mis laboratorios y pruebas.

Tengo documentados todos los pasos, ficheros de respuesta y todo bastante automatizado para ir rápido con esta tarea repetitiva, que a veces, se convierte ya en aburrida y un poco pesada.

Los que ya habéis leído alguna entrada de este blog, veréis que soy de la vieja escuela, de hacerlo todo por comando, y no me gustan los asistentes gráficos. En este caso podría usar DBCA, pero prefiero hacerlo en modo silencioso, mucho más rápido.

En Junio de 2024 ha finalizado el período de mantenimiento de Red Hat 7, y como no, en el mundo empresarial, hay que actualizar a RHEL8 y todo lo nuevo, ya debe estar en ese sistema, como mínimo.

Esta vez me toca instalar un clusterware entre dos servidores, con sus discos en ASM para los voting disk y OCR, lo habitual, como siempre.

Iluso de mi. Tengo todo preparado, ficheros de respuesta modificados, todo a punto. Lanzo el instalador para que se vaya creando e instalando todo mientras desayuno, y 💣 ¡BOOM! 💣

Vuelvo de desayunar, y no ha hecho nada.

Me encuentro este error en pantalla:

WARNING: [WARNING] [INS-08101] Unexpected error while executing the action at state: 'clientSupportedOSCheck'
CAUSE: No additional information available.
ACTION: Contact Oracle Support Services or refer to the software manual.
SUMMARY:
- java.lang.NullPointerException.

Me digo a mi mismo: «Seguro que si lanzo el instalador gráfico, este error no aparece».

¡Bofetón a mano abierta! 👋🏼👤

Tratando de entender el error, parece que el sistema operativo no está soportado para esta versión de Oracle.

Me voy a Oracle Support y consulto esto para asegurarme.

Como se puede observar en la imagen, RHEL8 está certificado con Oracle 19c.

Estando en MOS, lo más sensato era consultar las notas oficiales. Y aquí estaba:

Oracle Database/client Installation fails with Error:[INS-08101] Unexpected error while executing the action at state:’clientSupportedOSCheck’ (Doc ID 2584365.1)

De las tres posibles causas que indica Oracle, yo cumplía dos de ellas:

  1. Instalar Oracle 19c en un sistema certificado OL8 / RHEL8 donde el fichero cvu_prereq.xml no ha sido actualizado con la información de la plataforma.
  2. Instalar Oracle 19c en un sistema certificado que tiene el volumen /tmp montado con la opción ‘noexec’.

El fichero cvu_prereq.xml lo puedes consultar en $ORACLE_HOME/cv/cvdata/cvu_prereq.xml

El estado del volumen tmp puedes consultarlo así:

[oracle@servidor1 tmp]$ findmnt -l | grep tmp
/tmp  /dev/mapper/vg_sistema-lv_tmp    ext4 rw,nosuid,nodev,noexec,relatime,seclabel,stripe=256

He visto varias soluciones, pero a mi me ha funcionado la más sencilla.

Lanza el siguiente comando antes de ejecutar el instalador, y al menos, habrás solventado este error. Con esto harás creer al instalador que vas a instalar Oracle 19c en Oracle Linux 7 / RHEL7.

[oracle@servidor1 ~]$ export CV_ASSUME_DISTID=OL7
[oracle@servidor1 ~]$ ./gridSetup.sh -silent -responseFile /home/oracle/grid_install.rsp

Como decía más arriba, vi otras soluciones, que eran lanzar el instalador ejecutando ya la aplicación de un parche que soluciona esto, pero no he llegado a probarlo.
En mi caso, no tenía opatch ni podía aplicar parches, porque solo necesitaba instalar el motor de grid infrastructure.

Mi camino en la instalación de Oracle 19c en RHEL8 ha sido bastante duro, por diferentes errores y situaciones que fueron saliendo conforme fui avanzando en la instalación.

Iré desgranando más detalles en otros artículos.

Espero que sea de utilidad 😉

¿Sabías qué? Truco para editar consultas en SQL*Plus
Error de Perl: warning: Setting locale failed al ejecutar ASMCMD

Comments

Deja un comentario