Não elimine um pai de envio Btrfs por parecer antigo. Primeiro, confirme que existe um instantâneo só de leitura mais recente em ambos os lados e que este pode servir de base para o próximo ciclo incremental.
Num NAS doméstico, os instantâneos de origem e de destino têm frequentemente nomes semelhantes, embora os seus papéis na replicação sejam diferentes. A limpeza torna-se arriscada quando um trabalho de rotação considera apenas a idade e não o par que serve de base ao próximo envio. Comece por fazer um inventário só de leitura, identifique o último par de origem para destino concluído com sucesso, teste um filho mais recente com base nesse par e preserve o destino anterior até que outra receção incremental seja concluída.
Faça o Inventário do Par de Pais Atual em Ambos os Sistemas
Liste o subvolume de origem, todos os instantâneos de envio só de leitura e todos os instantâneos de destino recebidos. Registe o caminho, a hora de criação, o estado só de leitura, o ID do subvolume, o UUID, a relação com o pai e a identidade recebida, quando disponível. Associe o último instantâneo de origem concluído com sucesso à cópia que foi efetivamente recebida, não apenas a um diretório com nome semelhante.
Uma sequência funcional de envio e receção Btrfs mantém o instantâneo anterior disponível em ambos os sistemas antes de o utilizar como pai do fluxo incremental seguinte.
Se o par estiver claramente presente e só de leitura, marque-o como protegido. Se apenas os nomes coincidirem, analise a relação de receção e o registo de replicação antes de prosseguir. Se a cópia de destino estiver em falta, interrompa a limpeza e planeie um novo envio completo ou outra base verificada; eliminar o instantâneo de origem não pode reparar o histórico em falta no recetor.
Prove que um Instantâneo Mais Recente Pode Tornar-se o Próximo Pai
Crie o próximo instantâneo de origem só de leitura depois de guardar o inventário. Utilize explicitamente o instantâneo de origem protegido como pai e envie o novo filho para o destino pretendido ou para um caminho de preparação. Registe o estado de saída e o registo e, em seguida, compare uma amostra de ficheiros alterados e inalterados no instantâneo recebido.
Os scripts de replicação incremental devem tornar a dependência visível. Um fluxo de trabalho prático de rotação de instantâneos só funciona quando os instantâneos esperados pela lógica de envio permanecem disponíveis.
Promova o novo par a candidato à limpeza apenas quando a receção for concluída com sucesso e o instantâneo de destino puder ser lido. Um erro de pai não encontrado, um instantâneo de origem gravável, um conjunto de dados incorreto ou um fluxo inesperadamente equivalente a uma cópia completa significa que o teste falhou. Mantenha o par antigo intacto enquanto corrige o caminho ou reconstrói a base.
Faça a Limpeza Apenas Depois de o Papel de Pai Avançar
Atualize o registo de retenção antes de eliminar qualquer coisa. Marque os instantâneos de origem e destino recém-verificados como o par ativo, mantenha o par imediatamente anterior como recurso de contingência de curto prazo e pré-visualize os instantâneos mais antigos que o trabalho de limpeza removeria. A pré-visualização deve conter apenas antecessores que já não sejam necessários para o próximo envio ou plano de restauro.
Uma alteração num ficheiro pode ser transportada para um instantâneo mais recente e enviada a partir de uma base existente, pelo que o histórico incremental futuro depende da preservação das relações entre instantâneos, e não da edição de um instantâneo antigo só de leitura.
Cancele a limpeza se o pai ativo, o par de contingência, o instantâneo recebido mais recente ou um órfão não verificado aparecer no conjunto de eliminação. Remova os instantâneos em grupos pequenos e volte a listar ambos os sistemas após cada grupo. Não permita que trabalhos de rotação separados de origem e destino avancem de forma independente sem partilharem o mesmo registo do par protegido.
Execute o Ciclo Incremental Seguinte Antes de Retirar o Recurso de Contingência
Depois da limpeza, crie uma alteração controlada num ficheiro e um novo instantâneo só de leitura. Execute o próximo envio incremental a partir do pai recém-promovido. Este segundo ciclo prova que o registo de limpeza, o script e o estado do destino estão alinhados; o primeiro envio concluído com sucesso, por si só, não testou o ambiente após a limpeza.
Se não for possível remover um instantâneo por este continuar a ser utilizado, separe a lógica de retenção do caminho de envio Btrfs ativo antes de considerar incorreto o mapa de pais.
A lista de verificação é aprovada quando o segundo filho é recebido com sucesso, os ficheiros esperados estão presentes, o par ativo continua só de leitura e a próxima execução agendada o seleciona automaticamente. Retire o recurso de contingência apenas depois desse resultado. Pare e devolva o par anterior ao estado protegido se o envio seguinte indicar um pai em falta, visar o subvolume errado ou propor uma transferência completa inesperada.
Suporte e Dicas
Mais para Ler

Como agendar tarefas do Restic para criar cópias de segurança, esquecer e eliminar sem conflitos de bloqueio
Um agendamento completo do Restic para vários hosts que separa cópias de segurança frequentes, retenção específica, limpeza física, verificações, novas tentativas e validação do...

Como impedir que as tarefas de limpeza do Restic bloqueiem as cópias de segurança agendadas
Um plano de prevenção para repositórios Restic partilhados que separa as janelas de cópia de segurança da poda e mantém os bloqueios, as tentativas...

Como limpar um bloqueio obsoleto do Restic sem interromper uma cópia de segurança ativa
Um fluxo de desbloqueio do Restic com o mínimo de intervenção, que protege as cópias de segurança ativas, remove apenas o estado obsoleto e...

