Qual é a diferença entre cron e crond? Aprenda os segredos de diferentes funções em 1 minuto

você está aí Linux Configura tarefas agendadas no sistema, mas está confuso entre “cron” e “crond”?

Sim, muitas pessoas vão se perguntar:“Qual é a diferença entre os dois?” Embora pareçam gêmeos, após uma inspeção mais detalhada, existem diferenças sutis, mas cruciais, entre eles.

Este artigo irá aprofundar seus recursos exclusivos e princípios de funcionamento.

O que é cron?

vamos começar com cron Em primeiro lugar, este nome deve ser familiar para você.

cron é na verdade um conjunto completo de Sistema de agendamento de tarefas agendadas, cujo nome vem da raiz grega "chronos”, significando tempo.

sistema cronÉ um agendador de tarefas agendadas para sistemas Linux, usado para executar automaticamente tarefas específicas em momentos específicos.

Por exemplo, você pode agendar scripts de backup para serem executados todas as manhãs, verificar o status do sistema a cada hora, etc.

Qual é a diferença entre cron e crond? Aprenda os segredos de diferentes funções em 1 minuto

funcionalidade principal do cron

A função principal do cron é automatizar o gerenciamento e a execução de tarefas do sistema. Essas tarefas são frequentemente chamadas de ".tarefas agendadas”Ou“Tarefa agendada”.

O sistema cron irá ler crontab 文件(tabela cron), esses arquivos contêm agendas de tarefas e listas de comandos, e o cron executará automaticamente essas tarefas em horários agendados com base nas configurações do arquivo crontab.

Pode-se dizer,cron é o “planejador” para agendamento de tarefas agendadas, responsável por estabelecer cronogramas para todas as tarefas.

Usar o comando crontab

Em sistemas Linux, o sistema cron consiste em crontab comando para gerenciar. passar crontab Comandos, você pode adicionar, editar e excluir tarefas agendadas.

使用 crontab -e Comando para entrar no modo de edição, você pode adicionar as tarefas que deseja realizar na tabela cron, o formato é o seguinte:

* * * * * /path/to/command

Cada símbolo “*” representa uma unidade de tempo diferente, como minutos, horas, dias, meses e semanas. Com essas configurações de tempo, você pode controlar quando as tarefas são executadas.

O que é um crond?

Agora que entendemos o conceito de cron, vamos dar uma olhada cron. Este é o "herói nos bastidores" do sistema cron.

crond é para o sistema cron daemon, é um programa que roda continuamente em segundo plano e é responsável por monitorar a hora do sistema e executar tarefas definidas pelo sistema cron.

responsabilidades do Crond

O processo crond será iniciado automaticamente quando o sistema for iniciado e sempre será executado em segundo plano. Sua única tarefa é executar as tarefas no arquivo crontab no horário especificado.

Pode-se dizer,crond é o "executor" do sistema cron.

Sem o processo crond, o sistema cron perderá a capacidade de executar tarefas agendadas.

Em sistemas Linux, você pode usar o seguinte comando para verificar se o processo crond está em execução:

ps -ef | grep crond

Se o processo crond não estiver em execução, todas as tarefas agendadas não serão executadas. Portanto, é fundamental manter o processo crond funcionando normalmente.

A relação entre cron e crond: serviços e executores

Para entender melhor a relação entre cron e crond, podemos usar umVidaexemplo em .

Imagine isto: você tem uma pessoa chamada "Pequeno livro vermelho”aplicativo, que é um vasto sistema que permite aos usuários visualizar e publicar conteúdo em horários específicos;

Por trás deste aplicativo, existe um programa chamado “Xiaohong Guardian”, que é responsável por publicar conteúdo automaticamente em segundo plano.

cron é como "livrinho vermelho" e crond é "pequeno guardião vermelho".

Para resumir as diferenças entre cron e crond:

  • cron: Responsável por formular e gerenciar cronogramas de tarefas, e é o “cérebro” do agendamento de tarefas agendadas.
  • cron: Processo daemon em segundo plano, que é o "executor" das tarefas agendadas e executa tarefas de acordo com o agendamento na tabela cron.

Olhando desta forma, cron é o sistema geral e crond é o processo que executa tarefas no sistema.

arquivo crontab: lista de tarefas cron

A base de execução do sistema cron é inseparável de arquivo crontab, que é onde o sistema cron armazena agendas de tarefas.

Cada usuário (incluindo o usuário root) pode ter seu próprio arquivo crontab independente para gerenciar suas próprias tarefas agendadas.

我们可以使用 crontab -l comando para visualizar a lista de tarefas do usuário atual ou usar crontab -e para editar a tarefa.

sintaxe do arquivo crontab

No arquivo crontab, cada linha representa uma tarefa e o formato de cada linha é o seguinte:

分钟 小时 日期 月份 星期 命令

Por exemplo, a tarefa a seguir representa a execução do script de backup às 2h todos os dias:

0 2 * * * /usr/local/bin/backup.sh

Este exemplo simples ilustra os poderosos recursos de automação do sistema cron.

cron e crond: sua colaboração nos bastidores

Na operação real do sistema, cron e crond são inseparáveis. O cron é responsável por criar e gerenciar agendamentos de tarefas, enquanto o crond monitora continuamente o tempo e garante que as tarefas sejam executadas no horário especificado.

Sempre que a hora do sistema atingir a hora predefinida da tarefa, o crond irá “acordar” e executar a tarefa.

Por que precisamos do daemon crond?

A existência do crond garante que as tarefas sejam executadas no prazo. Ele será iniciado automaticamente sempre que o sistema for iniciado e continuará funcionando.

Se o crond parar de ser executado, todas as tarefas no sistema cron não poderão ser executadas. Portanto, a operação normal do daemon crond é crucial para o gerenciamento automatizado do sistema.

Cenários de aplicação no gerenciamento diário do sistema

A combinação de cron e crond é amplamente utilizada no gerenciamento de sistemas, especialmente em ambientes de servidores. A seguir estão alguns cenários típicos de aplicação:

  1. backup automático: Através do cron, você pode agendar o servidor para fazer backup dos dados regularmente todos os dias ou todas as semanas.
  2. Limpeza automática: configure a limpeza regular dos arquivos de log para evitar que o espaço em disco do servidor seja preenchido.
  3. Monitoramento e alarme: execute regularmente verificações de integridade do sistema por meio do cron e envie e-mails de alarme quando forem encontradas anormalidades.

Mal-entendidos entre cron e crond: perguntas e respostas frequentes

Por que a tarefa cron não está sendo executada?

Muitas pessoas descobrirão que as tarefas cron definidas não são executadas conforme o esperado. Os motivos podem incluir o seguinte:

  1. o processo crond não foi iniciado: Por favor, certifique-se de que o crond esteja funcionando normalmente.
  2. Erro de configuração de tarefa: verifique se a sintaxe do arquivo crontab está correta.
  3. problema de caminho: certifique-se de que os caminhos de comando e script especificados estejam corretos.

Como reiniciar o processo crond?

Se o processo crond estiver anormal, você pode usar o seguinte comando para reiniciá-lo:

sudo service crond restart

Este comando irá reiniciar o serviço crond para garantir que todas as tarefas sejam executadas normalmente.

Conclusão: A indispensabilidade do cron e do crond

A cooperação perfeita entre cron e crond permite que o sistema Linux execute tarefas automaticamente sem intervenção humana, melhorando significativamente as capacidades de gerenciamento automatizado do sistema.

cron serve como um sistema de agendamento de tempo para fazer planos, e crond serve como um processo daemon responsável pela execução de tarefas.

Pode-se dizer que os dois se complementam e constroem em conjunto um sistema automatizado de gerenciamento de tarefas poderoso e flexível.

No uso diário, dominar as diferenças e aplicações do cron e do crond pode deixá-lo mais confortável no gerenciamento de servidores e obter operações mais eficientes.

No futuro, você poderá aprender mais sobre o uso avançado do sistema cron para otimizar e automatizar ainda mais o processo de gerenciamento do sistema.

cron e crond são definitivamente bons parceiros que todo administrador Linux deve ter.

发表 评论

Seu endereço de e-mail não será publicado. 必填 项 已 用 * 标注

Voltar ao Topo