Entendi...

Bem, sei que o cron carrega algumas variáveis de ambiente, então usando meu
usuário executei "crontab -e" e coloquei para executar o comando "env >
/tmp/env.txt". Depois da virada do minuto, li o seguinte em "/tmp/env.txt":

LANGUAGE=pt_BR:pt:en
HOME=/home/junior
LOGNAME=junior
PATH=/usr/bin:/bin
LANG=pt_BR.UTF-8
SHELL=/bin/sh
PWD=/home/junior

Então alterei para executar "echo $LOGNAME $HOME > /tmp/env.txt" e agora li
o seguinte:

junior /home/junior

Então você deve usar $HOME ou $LOGNAME, mas para ter certeza das variáveis
de ambiente do cron execute o "env > /tmp/env.txt" via "crontab -e" de
algum usuário.

[]'s
Junior Polegato



Em 30 de maio de 2013 14:17, Deckardbot <[email protected]> escreveu:

> Ops.
> Ali onde eu disse do /etc/crontab eu quis dizer que precisa informar o
> caminho para
> cada usuário:
> */1 * * * * /home/usuario1/script.sh
> */1 * * * * /home/usuario2/script.sh
> */1 * * * * /home/usuario3/script.sh
>
> Em 30 de maio de 2013 14:14, Deckardbot <[email protected]> escreveu:
>
> Então, cada usuário fez o comando 'crontab -e' e adicionou a linha que
>> informei:
>>
>> */1 * * * * /home/$USER/script.sh
>>
>> O que acontece é que pra funcionar, cada usuário tem que ficar
>> substituindo
>> $USER pelo seu usuário, deixando de ser uma instrução genérica:
>> */1 * * * * /home/usuario1/script.sh
>>
>> Sei que é possível agendar através de /etc/crontab, mas ai teria que
>> igualmente
>> informar o caminho com cada usuário:
>> */1 * * * * /home/usuario1/script.sh
>> */1 * * * * /home/usuario1/script.sh
>> */1 * * * * /home/usuario1/script.sh
>>
>> O que eu gostaria de fazer é encontrar uma forma "genérica" bastando o
>> usuário
>> adcionar a instrução no crontab, sem precisar alterar o caminho...
>>
>> Em 30 de maio de 2013 12:29, Linux Polegato 
>> <[email protected]>escreveu:
>>
>> Olá!
>>>
>>> Se estiver editando o /etc/crontab, o parâmetro antes do comando é o
>>> usuário.
>>>
>>> Agora cada usuário pode rodar o comando "crontab -e" e a linha será sem
>>> esse parâmetro do usuário, contudo o comando será executado pelo usuário
>>> que agendou a tarefa.
>>>
>>> Como está agendando as tarefas?
>>>
>>> []'s
>>> Junior Polegato
>>> Em 30/05/2013 11:20, "Deckardbot" <[email protected]> escreveu:
>>>
>>> Olá,
>>>>
>>>> Alguns usuários do sistema possuem um shell script que deve ser
>>>> executado a cada
>>>> 1 minuto e pra isso utilizei o crontab:
>>>>
>>>> */1 * * * * /home/$USER/script.sh
>>>>
>>>> Porem isso não funciona porque, ao que parece, o crontab não é
>>>> executado por um
>>>> usuário do sistema.
>>>>
>>>> Alguem sabe como posso fazer sem ter que informar explicitamente o
>>>> usuário no
>>>> crontab?
>>>>
>>>> Abs
>>>>
>>>> --
>>>> deckardbot
>>>
>>>
>>
>>
>> --
>> deckardbot
>
>
>
>
> --
> deckardbot

Responder a