Definições de Crontab desaparecendo

4

Estou rodando um servidor Debian no EC2, e alguns dias atrás minhas definições de crontab desapareceram de repente. Apenas desapareceu sem provocação!

Alguma idéia do que pode ser responsável por isso? Não suspeito de qualquer acesso não autorizado ao servidor.

    
por mba_fv 14.02.2011 / 16:10

4 respostas

4

Infelizmente, é extremamente fácil perder um usuário crontab (e quase tão fácil quando esse usuário é root).

Aqui estão alguns exemplos de maneiras de esvaziar um:

crontab ''

echo $emptyvar | crontab -

crontab emptyfile

crontab -l | oops | crontab -

Em que oops representa algum comando que deve manipular o conteúdo gerado por crontab -l antes de substituí-los usando crontab . Por algum motivo ("oops") o conteúdo não é passado pelo pipe.

Você deve verificar seus scripts e crontabs em busca de linhas que tentem manipular o crontab do root e se certificar de que não estão fazendo algo errado.

Além disso, para crontabs de usuário, quando você mesmo edita um, use sempre crontab -e .

    
por 19.02.2011 / 16:30
2

Pode ser que a partição onde o / var está localizado esteja cheia.

Se isto está acontecendo e / tmp está localizado em outra partição você pode editar o arquivo temporal com crontab -e mas quando você terminar a edição a nova versão não pode ser copiada para / var / spool / cron / e como resultado você obter um arquivo vazio.

Eu sei que este é um caso estranho, mas o crontab não retorna nenhum erro.

    
por 30.11.2012 / 08:50
1

Lendo sobre questões do EC2 em forums.aws.amazon.com. Não especificamente este problema, mas os dados estáticos desaparecem após as reinicializações. Você pode querer entrar em algumas discussões por lá ou entrar em contato com o suporte do aws. Nesse meio tempo eu escreveria algo para fazer backup dos meus crontabs para o S3 ou algo assim.

    
por 19.02.2011 / 16:48
0

Veja se o arquivo crontab realmente existe em / var / spool / cron / crontab / antes de tentar editá-lo. Está vazio ou está sendo criado naquele momento?

Sua instância do EC2 foi reinicializada?

grep -r crontab /etc/* e veja se há algo tocando neles.

    
por 19.02.2011 / 15:47