Existe um “ponto de restauração” no Linux (Debian / Ubuntu) como o Windows?

17

Estou trabalhando diretamente em uma máquina virtual Ubuntu (VM). Algumas atualizações (como o kernel) estavam disponíveis no gerenciador de atualização.

Se eu não estivesse usando uma VM, não a atualizaria, já que é um risco quebrar algo. Como é uma VM, você pode criar um instantâneo ou exportar um appliance e restaurá-lo se algo der errado.

Suponha que eu não esteja usando uma VM com uma instalação Debian / Ubuntu. Existe uma abordagem de instalação-restauração que não depende de uma configuração de VM para restaurar seu sistema exatamente antes de uma atualização (como um "ponto de restauração" no Windows), sendo fácil restaurá-la como um dispositivo de VM?

(Eu não estou procurando por "imagens fantasmas" ou algo assim (Norton Ghost, Clonezilla, etc), estou procurando por algo embutido no sistema Linux)

    
por Somebody still uses you MS-DOS 14.07.2010 / 23:02

9 respostas

15

Não há nenhum recurso semelhante em qualquer distribuição Linux que eu conheça. Existem várias razões pelas quais seria muito menos útil do que para o Windows.

  • Principalmente, as distribuições Linux são muito mais sérias que a Microsoft quanto a versões estáveis sendo atualizadas apenas para corrigir erros importantes e com mudanças mínimas. Por exemplo, com o Ubuntu e o Debian, você pode optar por receber apenas atualizações de segurança ( -security ) ou apenas atualizações de segurança e correções de bugs importantes ( -updates ).

  • As atualizações de kernel são as mais arriscadas, devido à chance de que uma mudança aparentemente benéfica cause problemas em uma configuração de hardware específica. É por isso que a maioria das distribuições permite que mais de uma versão do kernel seja instalada ao mesmo tempo; por exemplo, no momento em que estou escrevendo isso, o Ubuntu 10.04 tem três versões de kernel disponíveis: 2.6.32.21.22 da versão original, 2.6.32.22.23 com atualizações de segurança e 2.6.32.23.24 com atualizações não relacionadas à segurança também. Se o ... 24 release causar um problema no seu computador, você pode reinicializar sob ... 23 (e até mesmo marcar o ... 24 como proibido de instalar, pelo menos se você estiver usando o aptitude).

  • Não há registro: todos os dados de configuração estão em arquivos (na hierarquia /etc ), que podem ser facilmente restaurados individualmente se algo der errado. Mesmo assim, as atualizações na versão estável raramente afetam os arquivos em /etc .

  • Se você estiver instalando pacotes de alguma fonte que não seja uma versão estável, talvez queira manter cópias de versões mais antigas de pacotes e manter backups de seus arquivos de configuração. Aqui estão algumas dicas sobre isso no Debian e no Ubuntu.

    • Os pacotes baixados são mantidos em /var/cache/apt/archives . Se você tiver o espaço em disco, não exclua os arquivos antigos do pacote até confirmar que a versão mais recente funciona para você.
    • Muitas fontes mantêm versões mais antigas, portanto você pode fazer o downgrade facilmente (baixando e instalando manualmente uma versão mais antiga ou usando as preferências do apt). Para o Debian, veja snapshot.debian.org .
    • Existe uma maneira muito fácil de configurar o controle de versão sobre /etc : instale o pacote etckeeper e ative-o com o comando etckeeper init . (Eu faço isso, mas não porque eu estou preocupado com as atualizações quebrando alguma coisa, e sim porque estou preocupado com minhas mudanças quebrando alguma coisa.)
por 15.07.2010 / 01:08
5

Não é necessário, pois o gerenciador de pacotes cuida de qual arquivo é de qual pacote e também é capaz de reverter a atualização ou instalação do pacote.

    
por 15.07.2010 / 01:00
5

Você pode tentar usar uma ferramenta como o etckeeper . Essa ferramenta simplesmente mantém os arquivos de configuração em todo o sistema em um repositório de controle de versão e facilita a reversão e a aplicação de qualquer alteração.

Mas, para ser honesto, eu nunca precisei reverter qualquer mudança que veio de atualizações em meus sistemas debian / stable. Eu uso para corrigir erros que cometi manualmente.

    
por 15.07.2010 / 01:08
3

TMK, o recurso de restauração do Windows apenas reverte alterações no registro e em alguns diretórios críticos. Linux não tem isso.

Você pode tentar a abordagem manual com backups. Basta fazer o backup do seu diretório pessoal e da lista de programas do Synaptic e usá-lo como um ponto de restauração.

    
por 15.07.2010 / 01:02
3

Note que o Ubuntu em particular (mas provavelmente também o Debian) não irá remover pacotes antigos do kernel ao instalar as atualizações, e você pode configurar o gerenciador de inicialização para apresentar uma lista de kernels para escolher ao inicializar.

Isto cria automaticamente "pontos de restauração" - somente para o kernel - porque você pode escolher a versão anterior se o mais recente causar problemas. Tanto quanto eu sei, o Windows não tem nada disso para suas atualizações do kernel. (E especialmente para usuários domésticos, eu não gostaria de entender um diagnóstico e consertar um sistema não inicializável devido a uma atualização do kernel.)

    
por 15.07.2010 / 05:38
3

Existe uma ferramenta chamada Timeshift. ( link ) Eu não o usei, mas parece promissor e ouvi coisas boas sobre isso Comercial. Os instantâneos são projetados para evitar a duplicação de dados. E não se assuste com um site obscuro. :)

    
por 09.04.2014 / 13:35
2

Se você usar o Gerenciador de Volume Lógico para gerenciar o conteúdo de seus discos rígidos, você terá esse de graça, até certo ponto, usando instantâneos. Para citar o grande HOWTO : "Um exemplo é tirar um instantâneo de um volume, montar o instantâneo e tentar um programa experimental que altera arquivos naquele volume. Se você não gostar do que ele fez, você pode desmontar o snapshot, removê-lo e montar o sistema de arquivos original em seu lugar. "

    
por 15.07.2010 / 21:05
1

Dependendo da sua tecnologia VM, você pode parar / suspender / pausar a VM, despejar o núcleo e copiar a imagem da VM. Se falhar, restaure o original.

Se você for direto em um volume lógico, poderá criar um instantâneo LVM baseado no LV original. Teste uma atualização e, se funcionar, você a refaz na VM original (consulte lvcreate (8) -s)

Ou usando o tar antigo dourado (1). Você cria uma tarball completa do espaço do usuário, restaura os arquivos e remove os arquivos que não estavam na tar original.

    
por 15.07.2010 / 20:41
1

Neste momento, o Linux não oferece tal recurso, embora seja muito útil.

No entanto, o artigo Unbreakable upgrades, ZFS e Apt descreve o O recurso apt-clone da distribuição de armazenamento Nexenta baseada em Linux sugere ...

There is also a new filesystem being created in part as a response to ZFS, called BTRFS, which will have many of the advantages of ZFS and may be capable of enabling “unbreakable upgrades” for average Linux distributions like Ubuntu in the future as well.

IMHO primeiro precisamos de um sistema de arquivos Copy-On-Write (COW) utilizável para o Linux antes um recurso pode ser implementado em instaladores / atualizadores de sistema de uma maneira sã.

Aviso: Embora o Nexenta seja baseado em Linux, ele não usa o kernel do Linux. Ele usa o kernel do OpenSolaris e o ZFS.

    
por 15.07.2010 / 21:11