sh: clsecho: No such file or directory
Cuando ejecutamos el comando asmcmd podemos obtener el siguiente error
[oracle@prueba]$ asmcmd
Connected to an idle instance.
sh: /oracle/database/product/bin/clsecho: No existe el fichero o el directorio
ASMCMD>
La razón por la que esto sucede es porque no tenemos establecido correctamente el entorno de ASM. Para ello tenemos que exportar las variables ORACLE_HOME y ORACLE_SID correspondiente al entorno.
¿Cómo podemos ver cuales son esas variables?
Muy sencillo, ejecutando el siguiente comando.
cat /etc/oratab | grep ASM
De esta ejecución podremos deducir cual es el ORACLE_HOME y cual es el ORACLE_SID que tendremos que exportar.
Ponemos un ejemplo a continuación
[oracle@prueba]$ cat /etc/oratab | grep ASM
# a database or ASM Configuration Assistant while creating ASM instance.
+ASM1:/oracle/grid11:N # line added by Agent
[oracle@prueba]$
En este caso concreto el ORACLE_HOME será /oracle/grid11 y el ORACLE_SID será +ASM1.
Así que con esta información ya podemos exportar las variables en nuestro entorno
[oracle@prueba]$ export ORACLE_HOME=/oracle/grid11
[oracle@prueba]$ export ORACLE_SID=+ASM1
Una vez realizado esto, ya podemos de nuevo ejecutar el comando asmcmd
[oracle@prueba]$ asmcmd
ASMCMD>
¡Ahora ya funciona correctamente!