A entrada do script Crontab não está funcionando

0

iniciante aqui. Eu tenho um script chamado

updateTf2.sh 

É o conteúdo

#!/bin/bash
/etc/init.d/srcds stop
./steamcmd/sh +login anonymous +force_install_dir ./tf2 +app_update 232250 +quit
/etc/init.d/srcds start

Localizado aqui

~/home/user/updateTf2.sh

Se eu executar o ./updateTf2.sh no terminal, ele pede uma senha, eu o digito e o script é executado com sucesso.

Quando eu coloco no sudo crontab -e assim

10 9 * * * /home/user/updateTf2.sh

Não é executado.

O que estou fazendo de errado? Eu vi bilhetes simulados sobre este tópico aqui, mas não vi uma resposta clara. Obrigado pela ajuda.

    
por vapidit 10.01.2014 / 19:20

2 respostas

2

Os comandos executados pelo cron não possuem uma conexão de terminal, portanto não podem interativamente solicitar respostas de usuários. Se o servidor remoto desejado pedir uma senha com login anônimo, você terá que usar outro mecanismo para autenticar o programa steamcmd.sh , como configurá-lo para usar algum Steam AppID, conforme descrito em Como instalar e usar o SteamCMD .

    
por Fjor 15.08.2018 / 02:25
0

Este é um erro muito comum. Você precisa usar o caminho completo em scripts (em vez do caminho relativo).

o chron corre com sh usando variáveis ambientais mínimas.

    
por Panther 10.01.2014 / 19:54