Solução da comunidade

Executar tarefas agendadas no ZimaOS: temporizadores systemd, dcron, zpkg e o módulo Cron da comunidade

A February 2025 thread that evolved from a request for cron into a long history of systemd timers, official dcron plans, zpkg-based Zima Cron, persistence complaints, and a 2026 community Cron module rewrite with a Scheduler UI.

O suporte a tarefas agendadas do ZimaOS evoluiu várias vezes desde o início deste tópico. Em fevereiro de 2025, os utilizadores criavam temporizadores systemd personalizados porque não existia uma interface cron conveniente. Em março, Zima-Giorgio anunciou que dcron seria adicionado e, mais tarde, afirmou-se que estava incluído na versão beta 1.4.0. Em 2026, a IceWhale publicou um tutorial do Zima Cron utilizando o gestor de pacotes de módulos do ZimaOS, enquanto, mais tarde, programadores da comunidade reescreveram novamente o agendador para melhorar a persistência e adicionar uma interface Web completa.

A lição prática não é “instalar o cron com o apt”. O ZimaOS é um sistema operativo de dispositivo imutável. Escolha um método de agendamento que sobreviva ao ciclo de vida de que realmente precisa — reinício, atualização OTA, reinício do módulo — e teste essa persistência antes de confiar nele para cópias de segurança ou manutenção destrutiva.

Os utilizadores de origem queriam mais do que um tipo de tarefa agendada

Os casos de utilização incluíam:

  • reinício diário;
  • de hora a hora chmod/chown scripts;
  • tarefas em segundo plano e atualizações RSS do Nextcloud;
  • scripts de cópia de segurança agendados;
  • testes S.M.A.R.T.;
  • tarefas noturnas do SnapRAID;
  • ações de arranque que entravam em conflito com o Pi-hole.

Estas opções não são igualmente bem servidas por um único agendador. As dependências de serviços no arranque são frequentemente melhor geridas pelo systemd, enquanto os comandos periódicos do utilizador se adequam ao agendamento ao estilo do cron.

Os temporizadores systemd da comunidade funcionaram e sobreviveram a pelo menos algumas atualizações

WuzzyFeasel criou um temporizador de reinício em /etc/systemd/system/ e mais tarde relatou que temporizadores systemd personalizados sobreviveram a uma atualização do ZimaOS. Isso foi uma validação útil por parte da comunidade.

Zima-Giorgio também recomendou especificamente o systemd para uma tarefa de arranque, quando um utilizador queria que operações relacionadas com o Pi-hole fossem executadas após o arranque.

A IceWhale anunciou o dcron para o ZimaOS 1.4.0

Em 5 de março de 2025, Zima-Giorgio escreveu: “o dcron será adicionado.” Em abril, esclareceu que o dcron estava incluído na versão beta 1.4.0 e seria adicionado à versão estável.

Esta é uma declaração histórica oficial sobre o produto, não uma suposição da comunidade.

A disponibilidade do crontab não garantia a persistência das tarefas do utilizador

Mais tarde, utilizadores da versão 1.5.x relataram que as entradas do crontab desapareciam após o reinício ou que as tarefas do agendador não persistiam de forma fiável. É por isso que ver simplesmente um crontab o comando não prova que as tarefas guardadas pelo utilizador sobrevivem ao ciclo de vida do sistema imutável.

Reinicie sempre uma vez e verifique se a tarefa continua a existir antes de depender dela.

A IceWhale publicou posteriormente um tutorial do módulo Zima Cron

Em janeiro de 2026, 777-Spider publicou um tutorial separado para o Zima Cron utilizando:

zpkg install zima_cron

O tutorial incluía agendamento por intervalos e por expressões cron, além de registos de tarefas. Tratava-se de um agendador ao nível do módulo, e não de um pacote Debian instalado com o APT.

Consulte o fluxo de trabalho do módulo Zima Cron e a discussão posterior antes de assumir que um nome/versão específico do módulo ainda está atualizado.

Uma reescrita comunitária do Cron adicionou uma interface completa de agendamento

Interface escura do Scheduler do ZimaOS que mostra modelos de tarefas, expressão cron, prioridade, etiquetas, dependências e ações de tarefas
Em abril de 2026, o tópico de origem apresentou uma reescrita comunitária do módulo Cron com tarefas persistentes, modelos, registos, notificações, novas tentativas e um agendador Web.

A reescrita v0.2.0 da Lintux anunciava tarefas persistentes, modelos, registos, notificações, novas tentativas, dependências, prioridades e etiquetas. Era distribuída como um cron.raw módulo e podia ser instalado com zpkg.

Este módulo é software comunitário, não é o mesmo que a implementação dcron original da IceWhale.

O ZimaOS 1.6.1 corrigiu um problema de reinício dos serviços dos módulos

As notas de lançamento da IceWhale para a versão 1.6.1 incluem uma correção para um problema em que os módulos mod não iniciavam os serviços de acordo com a política de serviço após um reinício. Isto é relevante para módulos de agendamento que precisam de voltar a iniciar automaticamente após um reinício.

Isso não prova que todos os erros históricos de persistência do Cron tenham desaparecido; estabelece uma correção posterior da plataforma para o comportamento de arranque do serviço do módulo.

Não utilize um agendador não testado como único controlador de cópias de segurança

Uma cópia de segurança agendada só é útil se:

  • a tarefa persiste após um reinício/atualização;
  • o destino está montado;
  • o comando devolve um estado significativo;
  • os registos são mantidos;
  • foi testado um restauro.

Automatizar um script que para todos os contentores também provoca uma interrupção e pode deixar os serviços inativos se o script falhar a meio.

Alterar chmod/chown de hora a hora é normalmente um sintoma, não a melhor solução a longo prazo

O autor da publicação original pretendia alterar os proprietários de hora a hora porque os ficheiros copiados do Windows não eram legíveis pela aplicação multimédia. Uma solução melhor é corrigir as permissões de utilizador/grupo do SMB e as permissões de UID/GID/montagem do contentor, para que os novos ficheiros sejam criados desde o início com acesso utilizável.

Um agendador que aplique repetidamente alterações recursivas de proprietário pode ser lento e danificar as permissões esperadas por outra aplicação.

Que agendador deve utilizar?

  • Dependência do arranque/inicialização: prefira um serviço/temporizador systemd corretamente concebido, quando apropriado.
  • Tarefa periódica simples: utilize um agendador/módulo disponível e suportado na sua versão atual do ZimaOS.
  • Fluxo de trabalho complexo: considere um contentor de automatização dedicado, mas teste a persistência após reinícios e a segurança do socket do Docker.

Perguntas frequentes sobre o Cron do ZimaOS

A IceWhale afirmou oficialmente que o dcron seria adicionado?

Sim. Zima-Giorgio disse que estava incluído na versão beta 1.4.0 e planeado para a versão estável.

Todas as tarefas crontab posteriores persistiam após reinícios?

Não. Vários utilizadores posteriores relataram perda de tarefas ou problemas de persistência do agendador.

A interface escura do Scheduler de 2026 é uma funcionalidade integrada do IceWhale?

Veio de uma reescrita comunitária do módulo Cron e deve ser tratado como software de módulo de terceiros.