Como agendar tarefas usando o comando no linux
- 1218
- 142
- Ms. Travis Schumm
Aprendendo como agendar e gerenciar tarefas usando o programa AT
Requisitos
- Permissões de raiz para iniciar o daemon ATD
- Tendo o programa AT instalado
Dificuldade
FÁCIL
Convenções
- # - requer que os comandos Linux sejam executados com privilégios de raiz também
diretamente como usuário root ou por uso desudo
comando - $ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular
Introdução
Durante a administração de um sistema, poder agendar uma tarefa para uma execução posterior, é uma habilidade crucial: executar um backup de um banco de dados, por exemplo, ou talvez para executar um script de manutenção. Menos conhecido do que Cron
ou Anacron
, o no
Programa Vamos fazer isso de uma maneira muito fácil: neste tutorial, aprenderemos a usá -lo e como é diferente dos programas mencionados acima.
O que está em?
Ao contrário de Cron, que vamos executar uma tarefa regularmente, no
nos dá a capacidade de executar um comando ou um script em uma data e hora especificadas, ou após um determinado intervalo de tempo. Minutos, horas, dias ou semanas podem ser usados como unidades. É até possível usar certas "palavras -chave" como meia-noite
ou hora do chá
(que corresponde às 16h).
Instalando em
Se não estiver instalado por padrão, no
deve estar disponível em repositórios de quase todas as distribuições.
Para instalá -lo no Fedora, basta executar:
# dnf instalar em
Em Rhel ou Centos Yum ainda é o gerenciador de pacotes padrão:
# yum instalar em
No Debian ou Ubuntu:
# instalação apt-get
No Archlinux:
# Pacman -s em
Começando o daemon
Uma vez que ele está instalado, devemos iniciar o ATD
Daemon e, eventualmente. Vou aqui assumir o uso do Systemd como o sistema init. O comando deve ser executado com privilégios root:
# SystemCtl Ativar -agora ATD.serviço
Agendar um emprego do prompt de at
Com tudo no lugar, agora podemos usar no
. Vamos supor que queremos executar um comando de 1 minuto a partir de agora. A sintaxe correta seria:
$ agora + 1 minuto
Para executar o mesmo comando às 16:00, daqui a três dias, em vez disso, executamos:
$ às 16:00 + 3 dias
Uma vez executado a linha acima, o no
O prompt aparecerá, aguardando que o comando seja executado após o intervalo de tempo especificado:
$ agora + 1 minutos em> echo "hello world"> teste.txt em> Jó 4 em Ter 19 de dezembro 11:29:00 2017
Para sair do no
Prompt, devemos pressionar o Ctrl+d
Combinação de chaves. Neste ponto, apresentaremos um resumo da tarefa programada, que nos mostrará o ID de trabalho
(4 neste caso) e a data em que será executada.
Apenas como exemplo, entramos em um comando trivial para mostrar como no
funciona. A partir de agora, a string "Hello World" será gravada no teste de arquivo.txt, que será criado automaticamente se ainda não existir.
Agendar a execução de um script
Em vez de especificar o comando a ser executado, interativamente, a partir do prompt, podemos instruir no
para executar um script ou programa existente simplesmente passando -o como um argumento para o -f
bandeira ou, alternativamente, usando o <
operador de redirecionamento. Portanto, assumindo que queremos executar um script que esteja presente em nosso diretório de trabalho atual, nós executaríamos:
# Usando o sinalizador -f dedicado $ no agora + 1 minuto -f script.sh
# Usando o < redirection operator $ at now + 1 minute < script.sh
Gerenciar trabalhos programados
Para fazer fila, examinar ou excluir trabalhos agendados com AT, podemos usar comandos dedicados como ATRM
e atq
ou correr no
com bandeiras específicas, este último é apenas aliases para o primeiro. Por exemplo, digamos que queremos obter uma lista de todos os trabalhos pendentes agendados pelo nosso usuário:
$ ATQ 4 Ter 19 de dezembro 11:29:00 2017 Um Egdoc
O comando acima, se lançado como root, exibirá a tarefa agendada por todos os usuários no sistema.
Para excluir um trabalho na fila, poderíamos usar ATRM
ou correr no
com as bandeiras equivalentes: -r
ou -d
. O trabalho a ser excluído deve ser referenciado por seu número. No caso acima, nós funcionaríamos: portanto:
$ ATRM 4
Conclusões
Embora mais simples que Cron
ou Anacron
, o no
o programa pode ser muito útil em determinadas situações: executar um programa com um atraso específico ou quando você sabe exatamente o tempo em que a tarefa deve ser executada. Faça referência ao manual para obter mais informações e adicione esta pequena ferramenta à sua caixa de ferramentas, certamente será útil.
Tutoriais do Linux relacionados:
- Coisas para instalar no Ubuntu 20.04
- Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
- Uma introdução à automação, ferramentas e técnicas do Linux
- Comandos Linux: os 20 comandos mais importantes que você precisa para…
- Comandos básicos do Linux
- Tutorial do SQLite Linux para iniciantes
- Ubuntu 22.04 Backup e restauração do sistema
- Como imprimir a árvore do diretório usando o Linux
- Arquivos de configuração do Linux: os 30 primeiros mais importantes
- Linux pode obter vírus? Explorando a vulnerabilidade do Linux…
- « Tutorial sobre como escrever regras básicas da UDEV no Linux
- Guia básico para criptografar partições Linux com Luks »