Como definir o trabalho cron para o sistema

0

Sou muito novo no Linux e não tenho nenhuma experiência anterior nele. E abri essa conta para fazer essa pergunta.

Eu preciso instalar um trabalho cron

Eu segui o breve guia aqui . Bem, acho que foi instalado com sucesso. Porque, quando eu digito crontab -l , vejo isso no resultado que Putty exibe. Estou usando Putty pelo caminho.

Problema (não tenho certeza se isso é um problema, mas parece ser):

Pedi a outro desenvolvedor / faculdade para fazer o login no servidor, usando o Putty, com suas próprias credenciais. Significa outro usuário. Então eu perguntei o tipo crontab -l . E o resultado é:

no crontab for username.

Então, acho que o cron job só é instalado para mim.

Pergunta (s):

Como posso instalá-lo em todo o sistema? O que quero dizer é, como posso instalá-lo para todos? Se eu instalar o if for everyone, ele funciona tanto quanto o número de usuários quando chegar a hora? Por exemplo, se houver 3 usuários no sistema e eu instalar o cron job system wide, ele será executado 3 vezes (para cada usuário) quando chegar a hora de executar o trabalho agendado? Ou ter o cron job apenas para um nome de usuário específico é suficiente para fazer a operação? Se "não", e se eu precisar instalá-lo em todo o sistema, como fazer isso, em qual etapa de este guia Eu preciso fazer algo diferente?

Pouca informação sobre o trabalho do cron. Existe um banco de dados no sistema / servidor, e a tarefa cron deve atualizar o banco de dados de outro banco de dados remoto, na primeira data de cada mês, às 20h. Eu usei .sh para instalar o cron job, a propósito.

Obrigado a todos por tentarem me ajudar.

    
por Zafar 21.08.2014 / 01:49

2 respostas

3

Cada usuário tem suas próprias tarefas agendadas. Se você escolher seu filho da escola às 4 da tarde todos os dias, seu vizinho também não vai buscar seu filho às 16h.

As tarefas Cron podem ser registradas por cada usuário (nesse caso, elas são executadas com os privilégios desse usuário) ou no nível do sistema (nesse caso, elas são executadas como um usuário escolhido pelo administrador do sistema). Cada trabalho agendado é executado uma vez em cada horário agendado.

Não há recurso para configurar as tarefas que executam o mesmo comando para vários usuários, além de replicar a entrada da tarefa. Não é uma boa ideia programar muitos trabalhos ao mesmo tempo, porque eles usam os mesmos recursos.

Estou confuso sobre o motivo pelo qual você deseja que vários usuários executem o mesmo trabalho. Você tem um banco de dados ou você e seu colega têm seu próprio banco de dados? Se você tem um único banco de dados, ele só precisa ser processado uma vez, você só precisa de um trabalho. Se você quer que você e seu colega tenham acesso à saída do trabalho, gere a saída uma vez e deixe-a legível por ambos. Se houver dois bancos de dados, cada um de vocês deverá executar trabalhos semelhantes, com o endereço do banco de dados e o local do arquivo de saída ajustado para cada trabalho.

    
por 21.08.2014 / 02:00
0

Você pode colocar arquivos em /etc/cron.d as root (ou se tiver sudo ). Você poderia fazer algo assim ...

# cat > /etc/cron.d/mycronjob <<EOT
* * * * * /bin/logger "Hello from cron"
EOT

... então você pode ver seu cron job escrever o log do sistema assim ...

# tail -f /var/log/messages
    
por 21.08.2014 / 02:00