[eside-ghost] Script que no funciona con cron

Jorge García - Bardok bardok en gmail.com
Vie Jul 27 11:02:01 CEST 2012


Buenas!

Parece ser que el tema iba por ahí... el tema es que en ese NAS el
shell por defecto es 'sh', y yo el script lo estaba lanzando con
'bash'. En 'bash' el path no incluye /opt/bin y /opt/sbin, en los que,
casualidad, están incluidos los comandos 'stat' y 'bc', que son los
que ejecuto para asignar los valores a las variables.

Lo que he hecho ha sido editar el .bashrc y meterlos en el path. El
martes que viene se lanza el script, a ver si me borra sólo lo que
tiene más de un mes de antigüedad, que es lo que tiene que hacer  :)

Un abrazo y gracias!

--
Jorge García (aka Bardok)
---
Sending A Message To All
Sending A Message To God
We Must Bring Light To The Darkness
In Time We Will Rise Above
  "Ark - Heal The Waters"


2012/7/25 Jorge García - Bardok <bardok en gmail.com>:
> Gracias a los dos!
>
> Mañana me voy a pasar por el curro (a pesar de tener vacaciones), y
> haré la prueba.
>
> Si funciona comento.
>
> Un abrazo!
>
> --
> Jorge García (aka Bardok)
> ---
> Sending A Message To All
> Sending A Message To God
> We Must Bring Light To The Darkness
> In Time We Will Rise Above
>   "Ark - Heal The Waters"
>
>
> 2012/7/24 Alberto M.S. <nohadonja en hotmail.com>:
>> Cron crea un entorno limpio para ejecutarse, así que tienes dos formas de
>> arreglarlo (que yo haya usado y comprobado que funcionan):
>>
>> - Puedes ejecutar un script con el comando env, con la forma
>> env <variable>=<valor> [<variable>=<valor>...] <comando>
>> En tu caso quedaría como "env PATH=... <ruta del script>
>>
>> - En el script creas una variable PATH con declare -x o directamente
>> asignando (PATH=....).
>>
>> Recuerda que si quieres tener el mismo PATH en Cron que como tu sesión de
>> usuario puedes consultar su valor con el comando env sin parámetros.
>>
>> o/
>>
>> El 24 de julio de 2012 19:04, Jon Valdés <juanval en gmail.com> escribió:
>>
>>> El otro día me pasó algo parecido en un Mac, y era porque el shell que
>>> lanza cron no tenía definido el PATH correctamente, y las llamadas que
>>> hacía a ciertos binarios no las pillaba bien.
>>> Al final tuve que llamar directamente a /usr/local/sbin/<loquesea>, en
>>> lugar de usar el nombre original.
>>>
>>> No sé si será lo mismo en tu caso, pero podría ser...
>>>
>>> 2012/7/24 Jorge García - Bardok <bardok en gmail.com>:
>>> > Buenas!
>>> >
>>> > Tengo un script que ejecuto todas las semanas para borrar copias de
>>> > seguridad antiguas. Si lo ejecuto a mano, funciona, pero si se ejecuta
>>> > desde cron, falla. El trozo de la discordia es:
>>> >
>>> >     # Remove old backups
>>> >     for folder in $DST/*
>>> >     do
>>> >       if [ -d "$folder" ]
>>> >       then
>>> >         let CREATIONSECS=`stat -c %Y $folder`
>>> >         echo "creation: $CREATIONSECS - limit: $LIMITSECS"
>>> >         if [ $LIMITSECS -ge $CREATIONSECS ]
>>> >         then
>>> >           echo "delete $folder"
>>> >           rm -r "$folder"
>>> >         fi
>>> >       fi
>>> >     done
>>> >
>>> > Las variables CREATIONSECS y LIMITSECS están siempre vacías al
>>> > ejecutar el script desde cron, y me borra siempre los backups viejos
>>> > (LIMITSECS se asigna antes del bucle, pero a todos los efectos, es
>>> > algo similar a como se asigna CREATIONSECS).
>>> >
>>> > ¿Alguien tiene alguna idea de qué puede pasar?
>>> >
>>> > Un abrazo y gracias!
>>> >
>>> > --
>>> > Jorge García (aka Bardok)
>>> > ---
>>> > Sending A Message To All
>>> > Sending A Message To God
>>> > We Must Bring Light To The Darkness
>>> > In Time We Will Rise Above
>>> >   "Ark - Heal The Waters"
>>> > _______________________________________________
>>> > eside-ghost mailing list
>>> > eside-ghost en listas.deusto.es
>>> > https://listas.deusto.es/mailman/listinfo/eside-ghost
>>> _______________________________________________
>>> eside-ghost mailing list
>>> eside-ghost en listas.deusto.es
>>> https://listas.deusto.es/mailman/listinfo/eside-ghost
>>>
>>
>>
>> _______________________________________________
>> eside-ghost mailing list
>> eside-ghost en listas.deusto.es
>> https://listas.deusto.es/mailman/listinfo/eside-ghost


Más información sobre la lista de distribución eside-ghost