4 maneiras de verificar se o cron está a funcionar no Linux
cron é um agendador de tarefas para Linux e sistemas operativos do tipo Unix. Vem pré-instalado em todas as distribuições Linux e é mais adequado para automatizar tarefas repetitivas.
Para que o Cron funcione eficazmente, é importante verificar regularmente se o utilitário está a funcionar corretamente no seu sistema. Existem vários métodos para o fazer, tais como inspecionar o estado do serviço Cron, rever os ficheiros de registo relacionados com o Cron, executar um trabalho Cron simulado e enumerar os processos atualmente activos no sistema.
O que é o cron?
O Cron é um cavalo de batalha furtivo que gere e agenda processos do sistema de forma autónoma. Este agendador de tarefas permite aos utilizadores que supervisionam e mantêm ecossistemas de software organizar actividades recorrentes como instruções de linha de comandos ou programas com scripts numa linha de tempo ou intervalo pré-determinado.
O Cron é um utilitário de agendamento que permite a automatização de tarefas administrativas e de manutenção repetitiva do sistema, que podem ser necessárias numa base frequente para um desempenho ótimo.
Existem várias implementações do Cron para sistemas Linux, com disponibilidade dependendo da distribuição específica. Por exemplo, o amplamente utilizado “Vixie cron” - que leva o nome de seu criador, Paul Vixie - é predominante e serve como opção padrão para distribuições como Debian e Ubuntu. Por outro lado, o sistema operativo Arch opta por utilizar os temporizadores do systemd em vez de uma implementação tradicional do Cron.
O Cronie é uma implementação alternativa do utilitário de agendamento de tempo Vixie cron, que pode ser facilmente obtido através do repositório de pacotes Arch Linux utilizando o gestor de pacotes Pacman. De modo a instalar o Cronie no seu sistema, pode executar o comando “pacman -S cronie” no seu terminal ou ambiente shell.
sudo pacman -S cronie
De seguida, inicie e active-o com:
sudo systemctl start cronie.service
sudo systemctl enable cronie.service
Para determinar a versão do cron atualmente instalada no seu sistema, pode consultar a sua página de manual utilizando o comando “man cron”. Isso fornecerá informações sobre a versão específica e os recursos disponíveis para essa instalação específica do cron.
man cron
Como verificar se o cron está a funcionar em Linux
Para verificar se o utilitário cron está a funcionar corretamente, existem vários métodos de verificação.
Verificar o estado do serviço cron no Linux
Para verificar se o serviço cron está a funcionar corretamente, pode utilizar-se um comando fundamental do Linux a partir do terminal. Para aceder ao terminal, prima “Ctrl \+ Alt \+ T” no seu teclado e, em seguida, utilize o comando “systemctl” para avaliar o estado do cron.
sudo systemctl status cron
Indicativo de uma operação bem sucedida, a presença da saída acima mencionada significa que o utilitário cron está a funcionar corretamente dentro dos limites do seu ambiente informático.
No entanto, o que acontece quando o Cron está num estado inativo, tal como se mostra abaixo?
Pode iniciar o serviço da seguinte forma:
sudo systemctl start cron.service
Para garantir que o serviço cron é iniciado automaticamente após o reinício do sistema, siga estes passos depois de iniciar o seu funcionamento:
sudo systemctl enable cron.service
Verificar os registos do cron no Linux
Um método alternativo para verificar se o daemon cron está a funcionar corretamente envolve a inspeção dos seus ficheiros de registo associados, que se encontram normalmente no diretório /var/log/syslog num sistema Linux.
O Syslog é um protocolo de comunicação padronizado utilizado por sistemas baseados em Linux para consolidar dados de registo de eventos num repositório central. Esta agregação de registos facilita várias operações essenciais de TI, como a realização de auditorias, a implementação de técnicas de monitorização e avaliação de desempenho, a resolução de problemas através de esforços de resolução de problemas, a geração de relatórios e a realização de outras actividades de manutenção relacionadas.
Para aceder ao registo do sistema que contém registos de tarefas cron, pode executar um comando específico da seguinte forma:
grep 'cron' /var/log/syslog
Deverá esperar observar um ecrã idêntico que confirma o funcionamento correto do daemon cron, bem como o facto de os seus registos estarem a ser gravados no ficheiro de registo designado:
Para isolar e analisar os registos específicos do cron dentro dos registos mais abrangentes do sistema armazenados na pasta syslog, pode ser um desafio devido à presença de entradas de registo adicionais não relacionadas com as tarefas cron. Para contornar este problema, uma abordagem que envolva a criação de um ficheiro de registo dedicado que inclua apenas entradas cron extraídas do ficheiro syslog pode ser benéfica para um exame e análise eficazes da informação desejada.
Nesta ilustração, utilizaremos o editor de texto nano como modelo, mas é livre de utilizar qualquer aplicação que considere adequada para os seus objectivos.
Abra o seguinte ficheiro utilizando o nano:
nano /etc/rsyslog.d/50-default.conf
Localize a linha que começa por:
#cron.*
Remova o símbolo “#” da linha seguinte para a descomentar e siga as instruções subsequentes para guardar e sair do ficheiro utilizando os atalhos de teclado especificados.
Para reiniciar o serviço rsyslog, pode executar o seguinte comando no seu terminal ou prompt de comando:csssudo systemctl restart rsyslog.service
sudo service rsyslog restart
Os ficheiros de registo das tarefas agendadas serão armazenados no diretório /var/log
, especificamente no ficheiro cron.log
.
Se a interface de recuperação de registos do seu sistema tiver dificuldade em obter registos de actividades executadas por um utilitário de agendamento conhecido como “cron”, isso pode indicar que este agendador de tarefas específico está atualmente inativo. Para verificar se o cron está a funcionar corretamente, pode utilizar abordagens alternativas para validar o seu funcionamento.
Executar uma tarefa cron no Linux
Uma forma de verificar se a funcionalidade cron do seu sistema está a funcionar eficazmente é criar uma tarefa cron de teste simples e executá-la. Se o trabalho completar com sucesso a tarefa designada, isso indica que a funcionalidade cron está a funcionar como pretendido.
Para executar uma série de comandos em sucessão, é necessário escrever um script Bash, que permite automatizar actividades repetitivas no sistema operativo Linux através de técnicas de programação.
Para gerar um ficheiro de texto que confirme a funcionalidade de uma tarefa agendada sob a forma de um script Bash, vamos iniciar o processo determinando o diretório de trabalho atual através da execução de um comando específico.
pwd
Para criar um novo ficheiro dentro do diretório existente, pode utilizar o comando “touch” seguido da especificação do nome do ficheiro pretendido e sem qualquer argumento. Isto irá gerar um ficheiro vazio com o nome especificado na localização atual.
touch file.txt
Depois disto, recomenda-se a criação de um script Bash utilizando o editor de texto Nano.
nano script.sh
Adicione os seguintes conteúdos ao ficheiro:
#! /usr/bin/bash
echo "my cronjob is working!" >> /home/username/file.txt
Certifique-se de que especifica a posição exacta do ficheiro de texto gerado. Conclua o seu trabalho premindo “Ctrl \+ X”, seguido de “Y” e, posteriormente, premindo a tecla “Enter” no seu teclado.
Dê permissões de execução ao script Bash:
chmod \\+x script.sh
Para estabelecer uma tarefa agendada para a execução do script, é necessário aceder e editar o ficheiro cron job utilizando o seguinte comando no terminal ou na linha de comandos:
crontab -e
Na conclusão deste documento, por favor insira a seguinte declaração.
* * * * * /path/to/script.sh
A data de expiração do item de configuração é representada por cinco asteriscos, sendo que cada asterisco corresponde a diferentes aspectos de sua validade. Especificamente, o primeiro asterisco significa o minuto (variando de 0 a 59), enquanto o segundo asterisco denota a hora (representando um ciclo completo de 24 horas, de modo que 13:00 PM corresponde a 13 e meia-noite começa em 0). O terceiro asterisco simboliza o dia da semana, variando de 0 a 6, em que ambos 0 e 6 representam o domingo. O quarto asterisco refere-se ao mês, variando de 0 a 7, sendo que 0 representa janeiro e 7 representa julho. Por último, o quinto asterisco significa o ano
O ficheiro contém informações sobre o nome do ficheiro e o caminho do diretório correspondente.
Ao concluir a tarefa de guardar e encerrar o documento, é possível perceber uma notificação exibida na sua interface de linha de comando, que diz “cron job instalado”.
Para verificar se a tarefa agendada foi executada com êxito, navegue até ao local onde “file.txt” está armazenado e apresente o seu conteúdo na consola, utilizando o comando ‘cat’.
cat file.txt
Isto indica que o cron está a funcionar bem.
Verificar Processos em Execução no Linux
Um método alternativo para verificar se o daemon cron está a funcionar eficazmente envolve examinar uma lista de processos atualmente activos dentro do sistema operativo. Isso pode ser feito através da utilização do comando “ps”, que exibe informações sobre todos os processos em execução. Em tal enumeração, o daemon cron aparecerá com o nome “crond.
ps aux | grep cron
A verificação acima mencionada comprova o funcionamento do processo cron no seu sistema operativo Linux.
Automatizar e agendar tarefas do sistema com o cron
O cron é um utilitário crucial no sistema operativo Linux, que lhe permite funcionar otimamente. Ocasionalmente, ao resolver problemas do sistema, pode ser necessário verificar se o Cron está operacional.
Para verificar se o serviço cron está a funcionar corretamente, existem vários métodos disponíveis. Uma opção envolve examinar os ficheiros de registo das actividades do cron através da utilização de utilitários de linha de comandos tais como “log” ou “grep”. Adicionalmente, pode-se consultar a lista de processos atualmente activos no seu sistema com ferramentas como o “ps” ou o “top”, que mostrarão informação sobre quaisquer tarefas agendadas que estejam a ser executadas no momento. Além disso, o utilitário conhecido como “systemctl” pode ser utilizado para verificar o estado operacional do cron observando o seu estado atual.Por fim, a tentativa de executar uma tarefa cron de teste pode fornecer informações sobre se ela é funcional e capaz de funcionar como pretendido.
O cron é um utilitário que permite a execução automática de comandos ou scripts em intervalos especificados, facilitando a gestão sem problemas das tarefas diárias do sistema. Muitas dessas tarefas são geradas por instalações de software, simplificando ainda mais os processos administrativos. Ao automatizar e agendar operações de rotina, tanto a eficiência como a estabilidade do sistema podem ser optimizadas, contribuindo para uma melhoria geral do desempenho.