Backup ou restauração do Moodle parado em "pendente": como resolver

Você pede o backup de um curso, ou a restauração de um arquivo .mbz, e o Moodle mostra "pendente". Uma hora depois, continua pendente. É uma das reclamações mais comuns de quem administra Moodle, e quase sempre tem a mesma causa.
Por que fica pendente
Nas versões atuais, o Moodle pode fazer backup e restauração de cursos em segundo plano: em vez de travar a tela, ele cria uma tarefa que o cron executa depois. Se o cron não roda, roda raramente ou está travado em outra tarefa, o backup fica esperando para sempre.
Como resolver
- Confira o cron. Em Administração do site > Notificações, o Moodle avisa se o cron não roda há muito tempo. O recomendado é a cada minuto. Veja cron do Moodle não roda.
- Veja as tarefas. Em Administração do site > Servidor > Tarefas, as tarefas pendentes e os registros mostram se a de backup começou e se deu erro.
- Procure o erro real. Falta de espaço em disco, limite de memória do PHP ou tempo de execução estourado aparecem nos registros da tarefa.
- Libere espaço. Backups grandes precisam de espaço temporário além do tamanho final do arquivo.
Cursos grandes
Cursos com muitos vídeos ou arquivos esbarram no limite de upload e na memória do servidor. Nesses casos, o caminho é enviar o .mbz direto ao servidor ou rodar o backup e a restauração pela linha de comando, sem depender do navegador.
Backup de curso não é backup da plataforma
O backup de curso serve para copiar ou mover um curso. Para proteger a plataforma inteira, é preciso backup do banco de dados e da pasta moodledata, testado de verdade. Veja como fazer backup do Moodle, e cuidado para os arquivos não ficarem expostos na área pública.
Perguntas frequentes
Por que o backup do Moodle fica pendente?
Nas versões atuais, backups e restaurações de curso podem rodar em segundo plano, como tarefas processadas pelo cron. Se o cron não está rodando ou está atrasado, o processo fica em "pendente".
Como resolver backup ou restauração pendente no Moodle?
Primeiro, confirme que o cron está rodando a cada minuto. Depois, verifique as tarefas em Administração do site > Servidor > Tarefas e os registros de tarefas para ver se houve erro, por exemplo falta de espaço ou de memória.
O curso é grande demais para restaurar. O que fazer?
Cursos grandes esbarram no limite de upload e de memória do servidor. Dá para enviar o arquivo .mbz pelo servidor ou restaurar pela linha de comando, sem passar pelo navegador.
Quanto tempo leva para resolver?
Quando a causa é o cron ou um limite do servidor, uma hora técnica costuma resolver.