Recria automaticamente a partição se estiver corrompida

4

Vou incorporar o Ubuntu em um dispositivo incorporado. Eu estou usando uma combinação de aufs e um root somente leitura para garantir que meu root fs não seja corrompido. No entanto, eu quero ser capaz de armazenar logs, por isso estou fazendo uma partição rw especial para /var/log . O dispositivo sofrerá centenas de eventos de falha de energia.

No caso de a partição ficar corrompida devido a uma falha de energia, quero que o sistema funcione corretamente de qualquer maneira. Eu gostaria que a partição fosse automaticamente reformatada em caso de corrupção. Existe uma maneira fácil de configurar isso?

    
por David Pfeffer 05.05.2011 / 19:44

2 respostas

4

Execute fsck com um conjunto de opções que não especificam interação com o usuário. Teste seu valor de retorno para ver se ele pode reparar o sistema de arquivos: o valor de retorno será 0 se não houver erros, 1 se houver erros corrigíveis e um valor maior se algo de ruim ocorrer. Por exemplo, com ext [234], execute e2fsck -p .

e2fsck -p /dev/disk/by-label/logs
if [ $? -ge 1 ]; then
  mke2fs -L logs /dev/disk/by-label/logs
fi

Se seu ambiente de execução permitir, considere efetuar o login pela rede (você precisa de conectividade IP). Até o Busybox pode fazer isso:

syslogd -R logserver
klogd

No servidor de log, escute na porta UDP 514. Você pode simplesmente despejar tudo o que entra em um arquivo, ou pode adicionar carimbos de origem e data em cada linha, ou pode executar o syslog localmente.

    
por Gilles 06.05.2011 / 01:43
1

Use apenas um sistema de arquivos que não seja corrompido por falhas de energia, como ext3 ou 4.

    
por psusi 05.05.2011 / 20:33