Por padrão, Crontab agenda trabalhos para o usuário atual. No entanto, há momentos em que, como administrador, pode ser necessário agendar empregos para outros usuários. A boa notícia é que Crontab permite, quando você adiciona o -você opção seguida pelo usuário que você deseja agendar os empregos para. Além disso, você pode precisar de permissão do administrador antes de agendar trabalhos para outros usuários.
A postagem de hoje cobre como agendar vários trabalhos para diferentes usuários como administrador.
Como agendar empregos no Linux
O Linux oferece o utilitário Cron, que permite aos usuários agendar trabalhos abrindo o arquivo Crontab usando um editor. O comando abaixo abre um arquivo crontab para o usuário atual. Se você precisar agendar um trabalho, adicionar o trabalho Cron na parte inferior do arquivo.
Crontab -e
A sintaxe para agendar um trabalho é:
Min Hour Day-of Month Mês do dia da semana [Command/Script]
0-59 0-23 1-31 1-12 0-6
Por exemplo, o comando seria como mostrado abaixo se você precisar agendar um trabalho de cron que imprime a data e a hora atuais para o usuário registrado e o armazenar em um arquivo em uma determinada data e hora.
25 19 * 7 * Data>/Home/Kyle/Data.TXT
O trabalho programado trabalhou para o usuário atualmente registrado.
Você deve usar o -você formato para agendar um trabalho para um usuário específico. A sintaxe para isso seria:
Sudo Crontab -e -u Nome de usuário
Para o nosso caso, usaremos um usuário nomeado Linuxhint1.
O comando será mostrado abaixo para abrir um arquivo crontab para o usuário. Observe que você deve selecionar qual editor usar para o arquivo Crontab. Vamos usar um Editor de Nano para o nosso exemplo.
Depois que nosso arquivo crontab para o usuário específico abrir, podemos agendar um trabalho criando -o na parte inferior do arquivo. Nesse caso, estamos criando um trabalho de cron que executa um script nomeado usuário1.sh Todo primeiro dia de cada mês às 18:30, como mostrado abaixo.
Salve o arquivo e saia. Você deve receber uma mensagem como a abaixo, confirmando que o novo Crontab foi instalado para o novo usuário.
Para listar o trabalho programado de um usuário específico, use o comando abaixo. Substitua o nome de usuário para corresponder ao de seu alvo.
sudo crontab -l -u linuxhint1
Na saída acima, podemos observar o trabalho Cron que criamos para o nosso usuário específico. Se você não especificar o usuário, obterá os trabalhos programados para o usuário atual.
Da mesma forma, você pode remover os trabalhos programados de outro usuário.
O comando para remover trabalhos agendados é:
Crontab -r
No entanto, isso remove para o usuário atual. Você deve adicionar o nome de usuário do usuário -alvo, como mostrado abaixo.
sudo crontab -r -u linuxhint1
Se listarmos os trabalhos programados para o nosso usuário, Linuxhint1, Vemos que não temos nenhum. Assim, conseguimos remover o trabalho programado.
sudo crontab -l -u linuxhint1
Como administrador, você tem o poder de agendar trabalhos para qualquer usuário do sistema. Especifique o nome de usuário e o arquivo crontab deles abrirão para você criar um trabalho. Em seguida, especifique a data e a hora que deve executar.
Conclusão
Linux, Unix e MacOS facilitam a agenda de trabalhos usando o utilitário Cron. Este guia abordou como criar empregos para um usuário específico. Discutimos como você poderia criar um trabalho para outro usuário, visualizar os trabalhos programados e excluir os empregos, desde que você seja um administrador.