Existe um risco de corrupção de dados se o laptop suspenso ficar sem bateria?

11

I tendem a apenas colocar meu laptop suspendusando xfce4-power-managere, embora normalmente a bateria esteja suficientemente carregada até a próxima vez (quando eu conectar o carregador), às vezes eu esqueço e depois de uma semana ou assim esvazia bateria para fora e as fecha laptop para baixo (com força).

Nesses casos, existe algum risco de corrupção de dados? Eu diria que não, já que o disco rígido já foi sincronizado e foi desligado suspend.

Além disso, deve-se preferir suspend, hibernateou alguma variante híbrida?

landroni
fonte

Respostas:

8

Suspender implica que os dados com os quais você estava trabalhando estão na memória. Este estado será perdido se você ficar sem energia. Se você estivesse escrevendo uma postagem no fórum, por exemplo, ela será perdida, mas nada mais sério aconteceria. Pense que é menos sério do que desconectar e remover a bateria, pois o computador pode sincronizar antes e até atrasar a suspensão (ao executar uma atualização ou atualização).

Para obter os benefícios de suspender (reinicialização rápida) e hibernar (salvo com segurança no disco, sem consumo de energia), tente pm-suspend-hybrid. Se ficar sem energia, você poderá reiniciar a partir da imagem salva em disco; se não ficar sem energia, poderá reiniciar rapidamente de um estado suspenso para a memória.

Quora Feans
fonte
1
"mas nada mais sério aconteceria." Só para esclarecer, isso significa que nenhuma corrupção nos setores do disco rígido pode ocorrer? Em outras palavras, você perderia tudo o que ainda não salvou no disco (como esperado), mas tudo o que reside no disco é seguro. Corrigir?
landroni
1
@landroni: certo.
Quora Feans 16/02
2

Há duas coisas em que pensar aqui, como sugerido por outras respostas.

O primeiro é a corrupção do sistema de arquivos. Isso se refere às estruturas de metadados que tornam o sistema de arquivos utilizável e é entendido e controlado pelo Kernel.

O segundo é o conteúdo dos arquivos. Quando o conteúdo de um arquivo está corrompido, o kernel não saberá (ou se importará). Sistemas complexos, como bancos de dados, implementam seus próprios recursos de metadados para resolver esse problema, mas para a maioria dos tipos de arquivos em um sistema desktop típico, não existe.

Se você estiver editando um arquivo, uma "alteração" no arquivo poderá consistir em gravações em vários locais. Quando todas essas gravações foram concluídas, o arquivo está em um estado consistente, mas quando apenas algumas dessas gravações são concluídas, o conteúdo do arquivo pode estar corrompido (inconsistente)

O sistema operacional "deve" agrupar gravações relacionadas a uma transação. Portanto, por exemplo, quando um arquivo cresce, os dados devem ser gravados nos blocos pertencentes a esse arquivo e as estruturas do sistema de arquivos devem ser atualizadas para alocar esses novos blocos ao arquivo e possíveis alterações na entrada do diretório (por exemplo, hora da última modificação) ) seja atualizado, tudo como um único grupo. Depois que tudo isso for sincronizado (liberado) no disco, o sistema de arquivos será consistente novamente, mas o conteúdo do arquivo poderá não ser até que todas as gravações relevantes tenham sido enviadas pelo aplicativo e liberadas no disco pelo sistema operacional.

Se o aplicativo estiver no meio de uma alteração complicada e for bloqueado antes de todas as transações terem sido emitidas, por exemplo, você pressionar SALVAR e fechar imediatamente a tampa do laptop, todo o grupo de alterações poderá não estar nas filas de gravação do kernel.

Geralmente, o que estiver nas filas de gravação será liberado para o disco. Os sistemas de arquivos devem, geralmente, ser consistentes. Devido aos diários do sistema de arquivos, isso pode significar que algumas dessas alterações estão temporariamente em um log, embora com segurança no disco.

O conteúdo do arquivo é outra história.

Johan
fonte
1

Corrupção de dados? Provavelmente não. Perda de dados? possivelmente.

Os dados que estariam em risco quando o sistema perder energia durante uma suspensão seriam as únicas coisas em risco. Esses dados são o "instantâneo" da memória do sistema que foi gravado temporariamente no disco quando você coloca o sistema no modo "suspenso". Nenhum dano deve ocorrer no seu HDD ou nos dados presentes no HDD.

Os dados no seu sistema devem estar seguros desde que você tenha selecionado que o sistema "desligue" se a bateria entrar em um estado "criticamente baixo", como visto nesta caixa de diálogo, nas configurações de energia do sistema.

    ss # 1

contra isso:

    ss # 2

slm
fonte
2
Hmm, como isso é possível? Talvez você use hibernate? Porque quando você usa suspend, se o laptop ficar sem suco, ele será desligado e você basicamente fará uma inicialização a frio. (Pelo menos aqui depois suspende uma perda de poder que não retomada a partir da esquerda.)
landroni
@landroni - veja as atualizações.
slm
@landroni - isso explica melhor?
slm