Como evitar a perda de alterações no sistema de arquivos raiz ao atualizar o kernel?

3

No Solaris e variantes, ele faz um clone zfs do atual sistema de arquivos / e instala o novo kernel lá. Ao reiniciar, você obtém o novo / .

No meu caso eu tenho um diretório /scripts , então se eu precisar voltar a um kernel anterior, então meu /scripts também será revertido, o que para mim deve ser independente do kernel em que estou.

Pergunta

Como posso evitar que perca as alterações feitas no sistema de arquivos a partir do momento que a atualização do kernel é concluída até que o host seja reinicializado?

Existe um procedimento que não conheço, pois mesmo se você for muito rápido para reiniciar após a atualização do kernel, as entradas de log poderiam facilmente ter sido feitas, o que você nunca veria.

    
por Jasmine Lognnes 15.04.2016 / 14:23

1 resposta

2

O que você descreveu é o Ambientes de inicialização (BE), que será criado automaticamente nas atualizações do sistema ou manualmente com o comando beadm .

Você pode ter vários BEs independentes, embora apenas um único possa estar ativo ao mesmo tempo. Você também pode atualizar / modificar cada BE separadamente. Normalmente, você faria isso para testar versões de software específicas ou uma atualização completa do sistema, mas não está restrito a isso.

De Vantagens da manutenção de vários ambientes de inicialização :

Although only one boot environment can be active at a time, you can mount an inactive boot environment by using the beadm mount command. Then, you could use the pkg command with the alternate root (-R) option to install or update specific packages on that environment.

Eu apenas tentei, beadm mount BeName montará BeName em um diretório temporário sob /tmp , que é gravável. Você pode escrever um script simples para sincronizar / copiar seus arquivos novos ou alterados para o BE antigo ou vice-versa.

A documentação também afirma que os instantâneos em BEs são possíveis (com beadm create BeName@snapshotNamedescription ), o que pode ser útil se você quiser rastrear diferenças que ocorreram entre dois pontos no tempo (com zfs diff ).

    
por 18.04.2016 / 13:54