Discussion:
ultra newbie
(demasiado antiguo para responder)
scarce
2008-12-09 21:40:48 UTC
Permalink
Señores,

Una consulta que me tiene loko....

Estoy comenzado a meterme en el mundo Linux y necesito ejecutar un archivo
de proceso por lotes, segun lo que he conseguido "aprender", se llama al
archivo con bash.

Distro: RedHat Enterprise

La situacion es la siguiente:

Si ejecuto el bash nombrearchivo.sh desde la consola, realiza sin
problemas las tareas que tiene escritas.

Pero no consigo que ejecute las tareas al setear lo mismo dentro del
crontab especificamente, no ejecuta un comando de respaldo Oracle (ext
...)

Alguien sabe porque, como, cuando, que hacer, etc?

Como dato adicional, el comando de Oracle sólo se puede ejecutar logueado
con el usuario "oracle" pero según el Cron, al crear una entrada se genera
con el usuario con que se ejecutará.

Espero ayuda please. GRACIAS.
Pablo Jimenez
2008-12-10 00:32:03 UTC
Permalink
Post by scarce
Señores,
Una consulta que me tiene loko....
Estoy comenzado a meterme en el mundo Linux y necesito ejecutar un archivo
de proceso por lotes, segun lo que he conseguido "aprender", se llama al
archivo con bash.
Distro: RedHat Enterprise
Si ejecuto el bash nombrearchivo.sh desde la consola, realiza sin
problemas las tareas que tiene escritas.
Pero no consigo que ejecute las tareas al setear lo mismo dentro del
crontab especificamente, no ejecuta un comando de respaldo Oracle (ext
...)
Alguien sabe porque, como, cuando, que hacer, etc?
Como dato adicional, el comando de Oracle sólo se puede ejecutar logueado
con el usuario "oracle" pero según el Cron, al crear una entrada se genera
con el usuario con que se ejecutará.
Espero ayuda please. GRACIAS.
Probablemente los problemas se deban a que no están definidas las
variables de entorno de Oracle en la ejecución por crontab.

Saludos.
--
Pablo Jiménez
Daniel
2008-12-10 03:03:13 UTC
Permalink
si usas cron, tienes que cargar el profile de la cuenta.

0 21 * * 0 (. /opt/oracle/.bash_profile; /opt/local/script.sh)

todo en una linea. Notar que se debe dejar un espacio despues del primer
punto.

saludos
Post by scarce
Señores,
Una consulta que me tiene loko....
Estoy comenzado a meterme en el mundo Linux y necesito ejecutar un archivo
de proceso por lotes, segun lo que he conseguido "aprender", se llama al
archivo con bash.
Distro: RedHat Enterprise
Si ejecuto el bash nombrearchivo.sh desde la consola, realiza sin
problemas las tareas que tiene escritas.
Pero no consigo que ejecute las tareas al setear lo mismo dentro del
crontab especificamente, no ejecuta un comando de respaldo Oracle (ext
...)
Alguien sabe porque, como, cuando, que hacer, etc?
Como dato adicional, el comando de Oracle sólo se puede ejecutar logueado
con el usuario "oracle" pero según el Cron, al crear una entrada se genera
con el usuario con que se ejecutará.
Espero ayuda please. GRACIAS.
Carlos A. Sepulveda M.
2008-12-10 12:43:31 UTC
Permalink
Post by scarce
Señores,
Una consulta que me tiene loko....
Estoy comenzado a meterme en el mundo Linux y necesito ejecutar un archivo
de proceso por lotes, segun lo que he conseguido "aprender", se llama al
archivo con bash.
Distro: RedHat Enterprise
Si ejecuto el bash nombrearchivo.sh desde la consola, realiza sin
problemas las tareas que tiene escritas.
Pero no consigo que ejecute las tareas al setear lo mismo dentro del
crontab especificamente, no ejecuta un comando de respaldo Oracle (ext
...)
Alguien sabe porque, como, cuando, que hacer, etc?
Como dato adicional, el comando de Oracle sólo se puede ejecutar logueado
con el usuario "oracle" pero según el Cron, al crear una entrada se genera
con el usuario con que se ejecutará.
Espero ayuda please. GRACIAS.
Holas:
2 posibles probelmas.
1- path incompleta, cron necesita la path compelta de el/los scripts/
programas
2- falta de variables de entorno, ORacle requiere un par de variables
para operar, es posible que root no las tenga seteadas, lo que puedes
hacer es ejecutarlas como oracle (man cron, puedes ejecutar procesos a
nombre de otro usuario) o setear las variables requeridas en la cuenta
root.

Saludos
scarce
2008-12-11 14:20:56 UTC
Permalink
Señores,

Efectivamente era el tema de variables de entorno de Oracle.
agregué algunas lineas adicionales al script.sh con la info que necesita
Oracle
y funcionó OK.

Nuevamente, MUCHAS GRACIAS.

Loading...