Início
» LINUX
»
Como usar snapshots no openSUSE com o Snapper
Como usar snapshots no openSUSE com o Snapper
O Snapper gerencia snapshots do sistema de arquivos no openSUSE. Em uma configuração raiz Btrfs compatível, ele pode comparar alterações, restaurar arquivos de sistema selecionados ou reverter para um snapshot íntegro conhecido. Os snapshots permanecem no mesmo sistema de arquivos, portanto, podem ajudar na recuperação após uma atualização com problemas, mas não são backups externos e podem omitir seu diretório pessoal ou subvolumes separados.
Os exemplos utilizam a rootconfiguração padrão, que abrange apenas o sistema de arquivos raiz.
Verifique se o Snapper está configurado.
Abra um terminal e verifique o sistema de arquivos montado em /, depois liste as configurações do Snapper:
findmnt -no FSTYPE /
sudo snapper list-configs
Comando de exemplo: verificar se a configuração raiz do Snapper está disponível.
Se o primeiro comando retornar um relatório btrfse o segundo listar os arquivos rootnecessários /, você pode continuar com os exemplos abaixo. Se não houver uma configuração raiz existente, não crie uma sem antes verificar. Em um sistema de arquivos raiz Btrfs usando um layout compatível, a documentação do openSUSE descreve como criá-la com o comando `sudo apt-get install btrfs` sudo snapper -c root create-config /. Em seguida, revise a configuração com o sudo snapper -c root get-configcomando `sudo apt-get install btrfs`. Isso não se aplica a um sistema de arquivos raiz Ext4, e o rollback de inicialização depende do layout do Btrfs e do carregador de inicialização do sistema.
Deixe espaço para snapshots no mesmo sistema de arquivos. O Btrfs compartilha blocos inalterados, mas os dados alterados mantêm os blocos mais antigos ativos; os snapshots podem crescer e consumir espaço livre.
Crie um instantâneo manual antes de uma alteração.
Antes de alterar um driver, editar a configuração do sistema ou testar um ajuste arriscado no nível do sistema, crie um único snapshot nomeado:
Comando de exemplo: dê a uma captura de tela manual uma descrição que você reconhecerá mais tarde.
Um único instantâneo marca um ponto específico no tempo. Use uma descrição que explique o motivo da sua criação, como "Antes da alteração do firewall", em vez de um rótulo genérico. Para ver o número atribuído e outros instantâneos, execute:
sudo snapper -c root list
Comando de exemplo: liste os instantâneos e anote o número e a descrição daquele que você possa precisar.
Em configurações típicas, o Snapper cria snapshots emparelhados prepara posttransações do YaST e do Zypper. Para delimitar uma operação manual, execute este comando antes da alteração e anote o ID impresso:
Para comparar o snapshot 42 com o sistema de arquivos raiz atual, use:
sudo snapper -c root status 42..0
Comando de exemplo: listar os caminhos que diferem entre um snapshot e o sistema atual.
Aqui 42está um exemplo de número de snapshot; substitua-o pelo número da sua lista. Nas comparações do Snapper, 0refere-se ao estado atual do sistema de arquivos. Para um par pré/pós, compare os dois números exibidos por list -t pre-post. Para inspecionar a diferença de texto para um arquivo, execute:
sudo snapper -c root diff 42..0 /etc/example.conf
Comando de exemplo: inspecionar um único arquivo antes de restaurá-lo.
Se você deseja restaurar esse arquivo a partir do snapshot 42, use undochangea mesma comparação:
Comando de exemplo: restaurar apenas o arquivo selecionado do snapshot anterior.
Analise primeiro o estado e as diferenças. Os snapshots da raiz podem omitir subvolumes separados ou excluídos; use o procedimento de snapshot inicializável para um rollback completo. O Snapper não se coordena com aplicativos que gravam dados, portanto, proteja os bancos de dados com seu próprio procedimento de backup.
Reverter o sistema a partir de um snapshot inicializável
Use um rollback completo do sistema quando precisar desfazer uma atualização ou alteração abrangente do sistema. Isso requer que snapshots inicializáveis estejam disponíveis para a rootconfiguração; nem todas as configurações do Snapper ou layouts de disco são compatíveis com isso. Salve seu trabalho e reinicie o sistema.
sudo reboot
Comando de exemplo: reinicie o sistema e, em seguida, use a entrada de snapshot do GRUB, caso sua instalação a forneça.
No menu GRUB, selecione Iniciar o carregador de inicialização a partir de um snapshot somente leitura .
Escolha um ponto de restauração (snapshot) com data anterior ao início do problema e inicialize-o.
Verifique se o sistema funciona conforme o esperado. A visualização do instantâneo é somente leitura, portanto, trata-se de uma pré-visualização de recuperação.
Se estiver satisfeito, execute o comando sudo snapper rollback, reinicie o computador e selecione a entrada de inicialização padrão.
Comando de exemplo: confirme o snapshot testado como o novo estado de leitura e gravação do sistema.
Se você optar por não reverter, reinicie o sistema para retornar ao estado atual. Em layouts compatíveis, snapper rollbacko estado anterior à reversão é salvo e um snapshot de leitura e gravação da raiz é criado a partir do estado selecionado; subvolumes separados não são revertidos.
Exclua os instantâneos que você não precisa mais.
Primeiro, liste os instantâneos, confirme o número e a descrição e, em seguida, exclua apenas o instantâneo desejado:
sudo snapper -c root delete 42
Substitua 42pelo número do snapshot que você deseja remover. Excluir um snapshot remove esse ponto de recuperação; não exclui o sistema em execução. O Snapper também pode aplicar políticas de limpeza configuradas, portanto, verifique a coluna de limpeza na lista e mantenha snapshots importantes apenas enquanto precisar deles.