Início
» Como fazer
»
Quando o SLES Btrfs entra em modo somente leitura: faça um diagnóstico antes de remontar.
Quando o SLES Btrfs entra em modo somente leitura: faça um diagnóstico antes de remontar.
Se um sistema de arquivos Btrfs do SUSE Linux Enterprise reportar "Sistema de arquivos somente leitura", primeiro verifique se ele foi montado intencionalmente em modo somente leitura ou se passou para esse modo após um erro. Verifique as opções de montagem, o espaço livre e o log do kernel antes de tentar remontá-lo. Use o Snapper para reverter e obter um snapshot inicializável do sistema; se o Btrfs registrou erros de E/S ou de metadados, proteja os dados e diagnostique o caminho de armazenamento antes de gravar novamente no sistema de arquivos.
O exemplo verifica as opções de montagem e identifica o dispositivo Btrfs que suporta /data.
1. Diferencie uma montagem intencional somente leitura de um erro do sistema de arquivos.
Substitua /datapelo ponto de montagem afetado ou, /para raiz, pelo nome do ponto de montagem.
findmnt -T /data -o SOURCE,FSTYPE,OPTIONS
sudo btrfs filesystem show /data
No primeiro comando, procure por ` --read-only` roou rw`--read-only` nas opções. Um snapshot do Snapper em modo somente leitura deve rejeitar gravações. Uma montagem configurada com `--read- roonly` /etc/fstabtambém pode ser intencional. O Btrfs também pode alternar para o modo somente leitura após erros graves de transação, metadados ou dispositivo. Nesse caso, executar `--read-only` repetidamente mount -o remount,rwnão corrige a causa e pode falhar imediatamente.
Se o sistema de arquivos foi montado deliberadamente em modo somente leitura, o dispositivo está íntegro e o log do kernel não apresenta erros de Btrfs ou de E/S, uma montagem de dados normal pode ser remontada em modo leitura/gravação:
sudo mount -o remount,rw /data
findmnt -T /data -o TARGET,OPTIONS
Não utilize esse comando para recuperação de um snapshot somente leitura inicializado ou de um sistema de arquivos somente leitura forçado por erro. Uma remontagem bem-sucedida confirma a capacidade de gravação, não a integridade do sistema de arquivos.
2. Verifique se a pressão no espaço é o problema real.
Compare o espaço livre do sistema de arquivos com os detalhes de alocação do Btrfs; os valores de exemplo são ilustrativos.
O Btrfs pode ficar sem espaço alocável mesmo quando uma visualização básica do disco parece surpreendente, porque a alocação de dados e metadados é rastreada separadamente. Verifique tanto o espaço livre comum quanto o uso do Btrfs:
df -hT /data
sudo btrfs filesystem usage -T /data
Se o sistema reportar No space left on devicefalhas de dispositivo ou erros estruturais no log do kernel, verifique o uso do Snapper antes de remover qualquer componente:
sudo snapper list
Exclua apenas os snapshots que sua política de retenção permite perder, usando sudo snapper delete SNAPSHOT_IDum valor para cada ID selecionado. Mantenha um snapshot válido anterior à atualização caso precise de uma opção de reversão; excluir snapshots recupera espaço, mas remove os pontos de recuperação. A limpeza pode não liberar espaço imediatamente e os snapshots não corrigem erros de E/S. Não execute um balanceamento para forçar um sistema de arquivos somente leitura a se tornar gravável; ele move dados e destina-se a problemas de alocação diagnosticados em um sistema de arquivos íntegro e gravável.
3. Leia o log do kernel antes de escolher uma opção de reparo.
As mensagens do kernel podem distinguir a pressão de espaço de erros de leitura, de checksum ou de dispositivo; as linhas mostradas são exemplos.
Procure pelo primeiro erro relacionado ao Btrfs, dispositivo de bloco, controlador ou transporte, e não apenas pela mensagem final informando que o sistema de arquivos se tornou somente leitura:
Mensagens sobre falhas de leitura, incompatibilidades de checksum, dispositivos ausentes ou erros de E/S apontam para uma solução diferente de uma simples roopção de montagem. Verifique as informações de integridade do disco, controlador, RAID/HBA, SAN ou disco virtual relatadas, bem como as informações do fornecedor. Corrija primeiro problemas de hardware ou conectividade instáveis. Se os dados forem importantes, minimize as gravações e providencie um backup ou uma imagem em nível de bloco com um administrador antes de tentar reparar o sistema de arquivos.
4. Escolha a recuperação menos arriscada que corresponda às evidências.
O que você encontrou
Próxima ação
Troca
roestá configurado ou a montagem foi intencionalmente definida como somente leitura; nenhum erro relevante do kernel.
Corrija a configuração de montagem se ela não for intencional ou remonte um subvolume gravável normal após confirmar que o dispositivo está íntegro.
Rápido, mas a remontagem não consegue limpar um estado somente leitura forçado por erro nem tornar um instantâneo somente leitura gravável.
Um snapshot inicializável da raiz funciona e o problema surgiu após uma alteração no sistema.
Inicialize o sistema e teste o snapshot, depois execute o comando sudo snapper rollbacke reinicie para a entrada padrão.
Restaura o subvolume raiz ao estado do snapshot. Os dados em subvolumes excluídos ou separados não são revertidos. O SLES 15 SP7 suporta essa reversão apenas com seu layout padrão de subvolume raiz e um sistema de arquivos raiz de dispositivo único.
O log do kernel contém erros de E/S de armazenamento ou erros estruturais do Btrfs.
Estabilize o armazenamento e preserve os dados; utilize um ambiente de recuperação e acione o suporte técnico para recuperação específica do sistema de arquivos.
Mais lento, mas evita ocultar um problema de hardware não resolvido com uma remontagem gravável.
Apenas o esgotamento do espaço foi relatado; erros de armazenamento estão ausentes.
Analise o período de retenção do Snapper e libere os snapshots ou dados permitidos e, em seguida, verifique novamente o uso do Btrfs.
Libera capacidade à custa de pontos de recuperação ou arquivos selecionados.
Selecione um snapshot anterior à falha, verifique a inicialização de teste em modo somente leitura e, em seguida, execute o rollback do Snapper se isso resolver o problema.
No SLES, os snapshots inicializáveis usam a configuração raiz padrão do Snapper. A raiz deve ser Btrfs em um dispositivo, o carregador de inicialização deve suportá-la e somente o subvolume raiz é revertido. Verifique um candidato antes de confirmar; se inadequado, reinicie para o sistema atual ou para o ambiente de recuperação. Consulte o procedimento de reversão do Snapper no SLES 15 SP7 .
Quando verificações offline ou uma limpeza completa são apropriadas
Se o sistema de arquivos não montar ou se as mensagens do kernel sugerirem danos estruturais, inicialize o sistema de recuperação do SLES ou outro ambiente de recuperação adequado, identifique o dispositivo correto e certifique-se de que ele esteja desmontado antes de executar a verificação padrão somente leitura:
sudo btrfs check /dev/DEVICE
Use o dispositivo de bloco Btrfs real, não um ponto de montagem fictício. Uma verificação pode levar tempo e memória e relata descobertas estruturais; ela não garante o reparo. Não adicione essa opção --repaircomo uma próxima etapa de rotina. A documentação do Btrfs alerta que o reparo pode piorar a situação e deve ser usado somente com orientação especializada após a aceitação do risco para os dados. Consulte o suporte da SUSE ou um especialista em Btrfs quando a verificação relatar erros ou o dispositivo apresentar falhas de E/S.
Para reverter um snapshot raiz, reinicie o sistema primeiro e confirme se o sistema padrão inicia normalmente. Em seguida, revise o novo log do kernel em busca de erros recorrentes do Btrfs ou do dispositivo. Um sinalizador de leitura/gravação por si só não garante a integridade do sistema: se os erros persistirem, interrompa as gravações e retorne ao diagnóstico do armazenamento.