Solução da comunidade

O modo de suspensão dos discos rígidos no ZimaOS não funciona: descubra o que mantém os discos ativos e compreenda as correções das versões 1.3.2 e 1.6.0

A January 2025 ZimaCube thread where six RAID5 HDDs never entered a configured 20-minute standby state even after Docker apps were stopped. IceWhale acknowledged the issue, documented upcoming 1.3.2 storage-health/cache changes, and provided commands to identify processes accessing the disks. ZimaOS 1.6.0 later fixed another wake source caused by smartd.

Esta fonte é mais sólida do que uma queixa genérica do tipo «os meus discos nunca entram em suspensão», porque a IceWhale respondeu com um plano de correção do produto e um método de diagnóstico. Os seis HDD em RAID5 continuaram ativos mesmo depois de as aplicações Docker terem sido paradas, pelo que a investigação se centrou nos serviços de armazenamento/estado do ZimaOS e numa possível atividade ao nível do kernel.

O ZimaOS 1.3.2 reduziu então as consultas desnecessárias aos discos e melhorou o comportamento de suspensão. Muito mais tarde, o ZimaOS 1.6.0 corrigiu outro problema específico em que o smartd acordava intermitentemente os discos em suspensão. Essas versões resolvem fontes de ativação conhecidas, mas um disco atual que continue ativo pode estar a ser acedido por outra aplicação, cópia de segurança, indexador, tarefa do sistema de ficheiros, ponte USB ou serviço do kernel.

Monitor do sistema do ZimaOS a mostrar contadores contínuos de E/S em vários dispositivos HDD durante a resolução de problemas da suspensão
O utilizador da fonte observou atividade em vários HDD mesmo depois de as cargas de trabalho das aplicações terem sido reduzidas.

A IceWhale alterou a consulta ao armazenamento no ZimaOS 1.3.2

orca-zhang descreveu três otimizações específicas previstas para a versão 1.3.2:

  • lógica de verificação do estado mais simples;
  • atualização da cache dos dados do disco apenas quando é detetada uma alteração no disco;
  • deixar de tentar obter informações como a temperatura ou o tempo de funcionamento de um disco que já se encontra em suspensão.

O motivo é importante: alguns HDD ou controladores não conseguem responder a essas consultas a partir da cache, pelo que solicitar dados de estado pode ativar o disco físico.

As notas de lançamento atuais da versão 1.3.2 resumem este trabalho como uma redução da atividade desnecessária de leitura/escrita e uma melhoria da Suspensão dos discos.

A IceWhale forneceu uma consulta para identificar processos com acesso

A resposta oficial da fonte sugeria identificar os processos que têm atualmente um sistema de ficheiros/dispositivo aberto:

for pid in $(fuser -m <device_path> 2>/dev/null); do
  ps -p $pid -o comm=
done | uniq

Substitua <device_path> pelo caminho real do disco ou do armazenamento montado. Este procedimento é de diagnóstico e não é destrutivo.

A IceWhale também sugeriu parar temporariamente os serviços de armazenamento/ficheiros

Para efeitos de resolução de problemas, a fonte sugeria testar a suspensão depois de parar:

systemctl stop zimaos-local-storage
systemctl stop icewhale-files

A IceWhale avisou que algumas funções de Definições e Ficheiros deixariam de funcionar enquanto estes serviços estivessem parados. Utilize isto apenas como diagnóstico controlado e, em seguida, reinicie os serviços ou o sistema.

O ZimaOS 1.6.0 corrigiu outra fonte de ativação conhecida

O registo de alterações oficial da versão 1.6.0 acrescentou mais tarde uma correção separada: os discos não conseguiam entrar no modo de suspensão normal porque o serviço smartd os acordava intermitentemente.

Consulte a correção oficial da suspensão relacionada com o smartd.

Mover os dados das aplicações para NVMe não garante que os HDD permaneçam inativos

O utilizador da fonte já tinha migrado as bases de dados do Docker para NVMe. Os HDD podem, ainda assim, ser acedidos por análises de multimédia, cópias de segurança, miniaturas, clientes SMB, verificações SMART, tarefas de RAID/paridade, indexação de Ficheiros ou um processo que mantenha um caminho aberto.

Utilize evidências reais de acesso em vez de presumir que «todas as aplicações estão no NVMe» significa que o conjunto não tem qualquer E/S.

O RAID5 pode gerar atividade em segundo plano

As verificações de paridade, reconstruções, varrimentos, atividade de metadados do sistema de ficheiros e monitorização podem aceder legitimamente a todos os membros. Confirme que o RAID não está a executar uma operação de manutenção prolongada antes de diagnosticar a suspensão.

O ZimaOS atual deve ser testado antes de aplicar soluções alternativas antigas relacionadas com serviços

A versão atual do ZimaOS é a 1.7.1 e inclui anos de alterações à gestão do armazenamento posteriores a este relatório de janeiro de 2025. Primeiro, reproduza o problema na versão atual e, em seguida, identifique a fonte de ativação. Não desative permanentemente os serviços de estado/armazenamento apenas para forçar a paragem dos discos.

Perguntas frequentes sobre a suspensão dos discos

A IceWhale reconheceu o problema da suspensão na fonte?

Sim. A equipa afirmou que o problema estava a ser investigado e documentou as otimizações da versão 1.3.2.

A verificação da temperatura/estado da unidade pode acordar alguns discos?

Sim. A IceWhale afirmou especificamente que algumas unidades sem informações em cache podiam ser ativadas quando consultadas.

O smartd foi posteriormente identificado como outra fonte de ativação?

Sim. O ZimaOS 1.6.0 corrigiu explicitamente as ativações intermitentes causadas pelo smartd, que impediam a suspensão normal.