Resistência de falha de energia do Ubuntu-core

2

Eu queria perguntar se o ubuntu-core by design está se comportando mais como um sistema operacional baseado em ramdisk? De acordo com esta página :

  

O sistema operacional e os arquivos do aplicativo são mantidos completamente separados, como um conjunto de imagens somente leitura distintas.

que eu entendo como há muito menos operações de gravação feitas para o armazenamento físico - estou pensando em um cartão SD no meu caso particular. Isso resultaria em um armazenamento mais resistente a falhas de energia (claro que não se trata de danificar o próprio cartão SD)?

Para referência - eu não tenho uma experiência muito boa com o rPi e seu cartão SD baseado em FS (não me entenda mal, eu gosto deles, mas eles não se encaixam em todos os meus casos de uso) que acabou corrompido ... Não importa qual classe de cartão SD eu usaria, sempre acabei com um sistema danificado depois de algum tempo. Pelo que eu li isso é normal, pois, por padrão, há muitas gravações feitas por Raspbian e, se ocorrer falha de energia durante a gravação, isso fará com que todo o sistema não seja inicializável.

Como em alguns eventos, nem sempre tenho o luxo de desligar o sistema com um shutdown adequado, portanto, estou procurando um SO mais resistente a isso e o ubuntu-core parece prometer isso. Estou entendendo isso direito?

    
por mog 24.09.2016 / 17:43

1 resposta

2

Esta é uma ótima pergunta.

Snaps (e, portanto, o Ubuntu Core) são realmente projetados para que cada um (o SO é apenas outro snap) seja isolado dos outros. Snaps são imagens squashfs somente leitura, que é o que a citação a que você se refere está discutindo.

No entanto, pelo que entendi, isso não foi feito para se comportar como um SO ramdisk. Foi feito para os outros marcadores na página:

  • As imagens (e aplicativos dentro delas) são mais resistentes a adulterações.
  • O snap é sempre exatamente o que o desenvolvedor liberou, o que facilita a atualização (e a reversão).

E assim por diante. De fato, enquanto os snaps são de fato somente leitura, o Ubuntu Core não se comporta como um SO ramdisk:

  • Os próprios snaps ainda são gravados no disco quando são atualizados.
  • Os registros do sistema operacional ainda vão para /var/log/ .
  • Cada estalo tem sua própria fatia de espaço gravável que pode utilizar como achar melhor.

Todas essas gravações são persistentes, mas o sistema foi projetado para tornar as gravações o mais minimalistas possíveis (a menos que você esteja executando snaps no devmode, o que torna os logs barulhentos ou usando um snap que grava uma tonelada). Quanto a falta de energia, não há nada que impeça uma perda de energia durante uma dessas gravações. No entanto, tanto o Ubuntu Core quanto o Raspbian (acredito) usam o ext4, que normalmente é capaz de se recuperar de tais eventos. Eu iria tão longe como sugerir a corrupção do cartão SD anterior que você encontrou é simplesmente devido ao excesso de gravações. Talvez o seu cartão SD escolhido não tenha uma boa implementação de nivelamento de desgaste?

    
por Kyle 28.09.2016 / 16:29