Adicionei um novo cronjob com um usuário (SUSE LINUX Enterprise Server 9.4):
# su - XXX
$ crontab -e
e foi isso que adicionei:
* * * * * echo `date` >> /home/XXX/a.txt
mas o a.txt não foi criado... ele será criado SOMENTE quando o root reiniciar o crond...
P:Por que?
ATUALIZAR:
machine:~ # chage -l XXX
Minimum: 1
Maximum: 99999
Warning: 7
Inactive: -1
Last Change: Apr 11, 2011
Password Expires: Never
Password Inactive: Never
Account Expires: Never
machine:~ #
para que o usuário ou sua senha não expire.
ATUALIZAÇÃO: versão cron:
cron-3.0.1-920.18
e tentei adicionar um novo crontab ao usuário root .. é a mesma coisa :D os novos cronjobs root também não estão rodando .. :Dparece que "crontab -e" não recarrega o CROND ou algo assim...
Responder1
Tentei o código acima e funcionou bem no Red Hat Fedora 14.
* * * * * echo `date` >> /home/saml/a.txt
Saída do arquivo:
$ tail -f a.txt
Fri Oct 4 14:38:01 EDT 2013
Fri Oct 4 14:39:01 EDT 2013
Fri Oct 4 14:40:01 EDT 2013
Coisas para tentar
Você pode confirmar se o
crond
serviço está funcionando:$ sudo service --status-all |& grep crond crond (pid 1673) is running...
Confirme a configuração do diretório de spool do cron.
$ rpm -qf $(type -P /usr/sbin/crond) cronie-1.4.8-2.fc14.x86_64 $ rpm -ql cronie | grep '/var' /var/spool/cron
Liste qualquer que seja o seu diretório, estamos verificando a existência e as permissões aqui:
$ sudo ls -ld /var/spool/cron/ drwx------. 2 root root 4096 Oct 4 14:37 /var/spool/cron/ $ sudo ls -l /var/spool/cron/ total 4 -rw------- 1 root root 0 Sep 16 23:47 root -rw------- 1 saml root 42 Oct 4 14:37 saml
SELinux
Os cronjobs têm acesso via SELinux para gravar em seu diretório /home/XXX?
Um teste rápido seria desabilitar temporariamente a aplicação do SELinux para ver se isso resolve o seu problema.
$ getenforce Disabled
Se estiver ativado, desative-o:
$ sudo setenforce 0
Responder2
strace crontab -e
resolvi ... não sei como .. mas funciona agora .. mas tudo que eu queria fazer é verificar as "operações" de baixo nível do crontabs.