Sou eu ou não faria mais sentido o crontab -r perguntar sim / não por padrão?
user1446688
4
Eu acho que ter uma solicitação sim / não seria uma ótima idéia. especialmente porque e & r estão próximos um do outro .. e crontab -eé um comando cron muito comum.
11117 JustinP
4
Em 7 anos ou mais de trabalho administrativo, nunca aconteceu isso comigo. Agora estou com medo. Hora de começar a fazer backup dos crontabs regularmente.
Caja
7
Isso já aconteceu comigo duas vezes. É a pior idéia que já tive epara editar e rremover sem absolutamente nenhum aviso !!
DaniG2k
9
Primeira coisa a fazer alias crontab=crontab -i. Mas crontab deve ter feito esse padrão, dado que e & r estão ao lado do outro ...
anishsane
Respostas:
49
crontab -r remove o único arquivo que contém os trabalhos cron.
Portanto, se você não fez um backup, suas únicas opções de recuperação são:
No RedHat / CentOS, se seus trabalhos foram acionados antes, você pode encontrar o cron login /var/log/cron. O arquivo ajudará você a reescrever os trabalhos novamente.
Outra opção é recuperar o arquivo usando uma ferramenta de recuperação de arquivos. Porém, é menos provável que isso seja bem-sucedido, pois a partição do sistema geralmente é ocupada e os setores correspondentes provavelmente já foram substituídos.
No Ubuntu / Debian, se sua tarefa já foi executada antes, tente grep CRON /var/log/syslog
Não pude votar em você, mas essa resposta foi útil para mim. thankx
Teerath Kumar
1
@RajaRassani Você pode marcar a resposta correta com uma marca de seleção. Obrigado pelo feedback!
SkyDan
isso acabou de acontecer comigo :) Que chatice total .. Eu uso servidores virtuais e os faço backup regularmente .. então eu vou girar um backup .. e obter os crontabs excluídos # #
JustinP JustinP
+1 por ser simples:}
namezero 13/04
Você pode tentar a sorte procurando um backup feito pelo editor em /tmp/crontab.wpMhKS (é claro que o nome pode mudar). Pode não ser a versão mais recente, mas no meu caso ajudou muito
Jong Bor
21
Se você não possui um /var/log/cronarquivo, pode recuperar os comandos (mas não os tempos) a partir do syslog.
grep 'CRON.*(yourusername)' /var/log/syslog
você pode descobrir a maioria dos horários observando os carimbos de data.
Isso é pior. Ele edita os arquivos de spool sem notificar cronque o arquivo foi editado. Também não funcionará quando o usuário tiver excluído acidentalmente a sua crontabporque não há arquivo para editar.
roaima
Voto positivo de mim por realmente indicar a localização do crontab. Eu tinha um backup completo do sistema e podia recuperar facilmente meus cronjobs. Obrigado!
crontab -e
é um comando cron muito comum.e
para editar er
remover sem absolutamente nenhum aviso !!alias crontab=crontab -i
. Mas crontab deve ter feito esse padrão, dado que e & r estão ao lado do outro ...Respostas:
crontab -r
remove o único arquivo que contém os trabalhos cron.Portanto, se você não fez um backup, suas únicas opções de recuperação são:
/var/log/cron
. O arquivo ajudará você a reescrever os trabalhos novamente.grep CRON /var/log/syslog
fonte
Se você não possui um
/var/log/cron
arquivo, pode recuperar os comandos (mas não os tempos) a partir dosyslog
.você pode descobrir a maioria dos horários observando os carimbos de data.
fonte
/var/log/syslog
.grep 'CRON.*(yourusername)' /var/log/syslog
vi /var/spool/cron/*user*
ou se você é oroot
usuário entãovi /var/spool/cron/root
fonte
cron
que o arquivo foi editado. Também não funcionará quando o usuário tiver excluído acidentalmente a suacrontab
porque não há arquivo para editar.