Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Para executar uma atualização no Microsoft Defender para Endpoint no Linux, veja Implementar atualizações para Microsoft Defender para Endpoint no Linux.
Linux e Unix têm uma ferramenta chamada crontab (semelhante ao Programador de Tarefas) para poder executar tarefas agendadas.
Pré-requisitos
Nota
Para obter uma lista de todos os fusos horários, execute o seguinte comando: timedatectl list-timezones
Exemplos de fusos horários:
America/Los_AngelesAmerica/New_YorkAmerica/ChicagoAmerica/Denver
Definir o trabalho cron
Utilize os seguintes comandos:
Entradas do crontab para backup
Use o seguinte comando para fazer backup das entradas crontab atuais antes de fazer alterações:
sudo crontab -l > /var/tmp/cron_backup_201118.dat
Nota
No nosso exemplo, 201118 == YYMMDD.
Sugestão
Faça backup das suas entradas do crontab antes de as editar ou remover.
Para editar o crontab do utilizador root e adicionar um novo trabalho:
sudo crontab -e
Nota
O editor predefinido é VIM.
Poderá ver:
0 * * * * /etc/opt/microsoft/mdatp/logrorate.sh
E
0 2 * * sat /bin/mdatp scan quick>~/mdatp_cron_job.log
Para obter instruções sobre como criar uma tarefa de análise antivírus agendada, consulte Agendar análises com Microsoft Defender para Endpoint (Linux).
Prima "Inserir"
Adicione as seguintes entradas. Utilize a definição CRON_TZ para garantir que as tarefas cron agendadas sejam executadas no fuso horário pretendido:
CRON_TZ=America/Los_Angeles
#! RHEL e variantes (CentOS e Oracle Linux)
0 6 * * sun [ $(date +\%d) -le 15 ] && sudo yum update mdatp -y >> ~/mdatp_cron_job.log
#! SLES e variantes
0 6 * * sun [ $(date +\%d) -le 15 ] && sudo zypper update mdatp >> ~/mdatp_cron_job.log
#! Sistemas Ubuntu e Debian
0 6 * * sun [ $(date +\%d) -le 15 ] && sudo apt-get install --only-upgrade mdatp >> ~/mdatp_cron_job.log
Nota
Nas entradas cron RHEL, SLES, Ubuntu e Debian, 0 6 * * sun especifica 00 minutos, 6h (hora usando o formato 24 horas), qualquer dia do mês, qualquer mês, aos domingos.
[$(date +\%d) -le 15] não é executado a menos que seja igual ou menor que o 15º dia (terceira semana).
A entrada completa do cron significa que o trabalho decorre às 6h todos os domingos, mas apenas se o dia do mês for dia 15 ou antes.
Prima "Esc"
Escreva ":wq" sem aspas duplas.
Nota
w == escrever, q == sair
Para ver as tarefas cron, escreva sudo crontab -l
Para verificar se as tarefas cron relacionadas com o Defender foram executadas, procure entradas mdatp no registo do cron:
sudo grep mdatp /var/log/cron
Para abrir o ficheiro de registo e rever a saída das tarefas agendadas de atualização do Defender:
sudo nano mdatp_cron_job.log
Configurar atualizações agendadas com Ansible, Chef ou Puppet
Utilize os seguintes comandos:
Para definir tarefas cron no Ansible
Use o módulo cron do Ansible para gerir os cron jobs:
cron - Manage cron.d and crontab entries
Veja https://docs.ansible.com/ansible/latest para obter mais informações.
Para configurar tarefas cron no Chef
Use o recurso cron do Chef para gerir trabalhos cron:
cron resource
Veja https://docs.chef.io/resources/cron/ para obter mais informações.
Para definir tarefas cron no Puppet
Tipo de Recurso: cron
Veja https://puppet.com/docs/puppet/5.5/types/cron.html para obter mais informações.
Automatizar com o Puppet: Tarefas cron e tarefas agendadas
Veja https://puppet.com/blog/automating-puppet-cron-jobs-and-scheduled-tasks/ para obter mais informações.
Comandos e exemplos comuns de crontab
Os comandos seguintes cobrem tarefas comuns de crontab, como listagem, backup, edição e remoção de entradas cron.
Para obter ajuda com crontab
Execute o seguinte comando para visualizar a página do manual do crontab:
man crontab
Para obter uma lista do ficheiro crontab do utilizador atual
Execute o seguinte comando para listar as entradas crontab do utilizador atual:
crontab -l
Para obter uma lista do ficheiro crontab de outro utilizador
Execute o seguinte comando para listar as entradas crontab de outro utilizador:
crontab -u username -l
Para fazer uma cópia de segurança das entradas crontab
Use o seguinte comando para fazer backup das entradas crontab atuais:
crontab -l > /var/tmp/cron_backup.dat
Sugestão
Faça isto antes de editar ou remover.
Para restaurar entradas crontab
Execute o seguinte comando para restaurar entradas crontab a partir de um ficheiro de backup:
crontab /var/tmp/cron_backup.dat
Para editar o crontab e adicionar uma nova tarefa como utilizador raiz
Use o seguinte comando para editar o crontab do utilizador root e adicionar um novo trabalho:
sudo crontab -e
Para editar o crontab e adicionar uma nova tarefa
Execute o seguinte comando para editar o crontab do utilizador atual e adicionar um novo trabalho:
crontab -e
Para editar as entradas crontab de outro utilizador
Execute o seguinte comando para editar as entradas crontab de outro utilizador:
crontab -u username -e
Para remover todas as entradas do crontab
Warning
Este comando remove todas as entradas do crontab para o utilizador atual sem necessidade de confirmação. Faz primeiro uma cópia de segurança do teu crontab com crontab -l > /var/tmp/cron_backup.dat, caso precises de o restaurar.
Use o seguinte comando para remover todas as entradas crontab do utilizador atual:
crontab -r
Para remover as entradas crontab de outro utilizador
Warning
Este comando remove permanentemente todas as entradas crontab do utilizador especificado sem necessidade de confirmação. Faça uma cópia de segurança do crontab do utilizador antes de executar este comando.
Use o seguinte comando para remover todas as tarefas agendadas para um utilizador específico, eliminando as entradas crontab desse utilizador:
crontab -u username -r
Referência dos campos de uma expressão cron
O diagrama seguinte explica os campos numa expressão cron:
+—————- minuto (valores: 0 - 59) (carateres especiais: , - * /)
| +————- hora (valores: 0 - 23) (carateres especiais: , - * /)
| | +———- dia do mês (valores: 1 - 31) (carateres especiais: , - * / L W C)
| | | +——- mês (valores: 1 - 12) (carateres especiais: ,- * / )
| | | | +—- dia da semana (valores: 0 - 6) (Domingo=0 ou 7) (carateres especiais: , - * / L W C)
| | | | |*****command to be executed