fsck na partição raiz na placa personalizada baseada em BBB

1

Temos o Embedded Linux Board personalizado baseado no Black BeagleBone. Ele tem Linux-3.12, 256MB de RAM e eMMC de 4GB com o sistema de arquivos ext4 .

Às vezes nos deparamos com erros do sistema de arquivos (raros, mas não impossíveis). Portanto, queremos verificar os erros do sistema de arquivos e corrigi-los na inicialização.
Obviamente, não queremos que o fsck ou qualquer outro utilitário destrua quaisquer dados no sistema de arquivos.

Temos busybox SysVinit assim /forcefsck não funciona :( Então, usei /etc/fstab (definindo o quinto campo para 1) e, em seguida, executando fsck -p do script rcS .

Essa combinação funciona para partições diferentes de rootfs partition. Eu tenho algumas perguntas sobre isso.

  1. Existe alguma maneira de executar fsck na partição rootfs ?
  2. O fsck -p pode destruir dados na partição?
  3. Existe alguma maneira melhor de lidar com essa situação? Quero dizer, qualquer serviço que verifique e corrija o erro do sistema de arquivos?
por AnkurTank 18.10.2016 / 13:56

1 resposta

1

O caminho normal para distribuições Linux de desktop baseadas em SysVinit é pedir uma senha de root durante a inicialização quando detecta erros no sistema de arquivos raiz. Você pode usar isso para executar fsck na raiz fs. Não sei se sua distro incorporada faz isso, mas é definitivamente possível configurá-lo dessa maneira.

Se não houver erros detectados durante a inicialização, outra opção é fazer o login como root, parar tudo que não é realmente necessário, remontar o sistema de arquivos raiz somente leitura e depois executar fsck nele.

Trata-se do sistema de arquivos raiz do seu armazenamento em bloco, não do rootfs . Rootfs é um sistema de arquivos mínimo baseado em RAM que é usado durante a inicialização, e não pode estar corrompido (a menos que sua imagem do kernel de boot esteja corrompida, ou sua RAM esteja ruim).

Em princípio, fsck -p destina-se a fazer apenas reparos "seguros", mas se você realmente quiser garantir que nada de ruim aconteça, execute-o manualmente para que você seja solicitado para cada ação. Se por algum motivo houver dados valiosos no sistema de arquivos raiz (não deveria acontecer, mas talvez você faça), faça um backup usando dd primeiro.

    
por 19.10.2016 / 09:06