Eu tenho uma configuração incorporada usando um initramfs para o sistema de arquivos raiz, mas usando uma partição ext3 personalizada montada em uma unidade IDE compacta flash. Como a integridade dos dados diante da perda de energia é o fator mais importante em toda a instalação, usei as seguintes opções para montar (abaixo está a entrada do meu /etc/fstab
arquivo
<file system> <mount pt> <type> <options> <dump><pass>
/dev/sda2 /data ext3 auto,exec,relatime,sync,barrier=1 0 2
Eu vim por essas opções lendo na internet. O que me preocupa é que o conteúdo de /proc/mounts
forneça o seguinte:
/dev/sda2 /data ext3 rw,sync,relatime,errors=continue,user_xattr,acl,
barrier=1,data=writeback 0 0
Pelo que entendi da leitura ao redor, é que eu quero usar a data=journal
opção para minha montagem, pois isso oferece a melhor proteção contra corrupção de dados. No entanto, na página de manual para opções específicas do ext3 mount
, diz o seguinte sobre a opção de write-back:
A ordem dos dados não é preservada - os dados podem ser gravados no sistema de arquivos principal após a confirmação dos metadados no diário.
Dizem que esta é a opção de maior rendimento. Ele garante a integridade interna do sistema de arquivos , mas pode permitir que dados antigos apareçam nos arquivos após uma falha e recuperação do diário.
Estou muito confuso sobre isso - a página de manual parece sugerir que, para a integridade do sistema de arquivos, eu quero especificar a data=writeback
opção, mount
mas a maioria das outras referências que encontrei (incluindo alguns livros publicados sobre o linux incorporado) sugerem que eu deveria estar usando data=journal
. Qual seria a melhor abordagem para eu usar? A velocidade de gravação não é um problema: a integridade dos dados é.
fonte
data=ordered
: pRespostas:
Não se deixe enganar pelo fato de que apenas
writeback
mencionainternal filesystem integrity
.Com
ext3
, se você usajournal
,ordered
ouwriteback
, metadados do sistema de arquivos é sempre apoiado e que meios a integridade do sistema de arquivo interno.Os modos de dados oferecem uma maneira de controlar como os dados comuns são gravados no sistema de arquivos.
No
writeback
modo, as alterações de metadados são primeiro registradas no diário e um bloco de confirmação é gravado. Após a atualização do diário, os metadados e as gravações de dados podem continuar.data=writeback
pode ser um risco grave à segurança: se o sistema travar ao anexar a um arquivo, depois que os metadados forem confirmados (e blocos de dados adicionais alocados), mas antes que os dados sejam gravados (blocos de dados substituídos por novos dados), depois do diário a recuperação desse arquivo pode conter blocos preenchidos com dados de arquivos excluídos anteriormente - de qualquer usuário 1 .Portanto, se a integridade dos dados é sua principal preocupação e a velocidade não é importante,
data=journal
é o caminho a percorrer.fonte
Como você já notou, o ponto principal é que você não pode impedir seu sistema de arquivos de todo tipo de falha.
O que você pode fazer:
No final, as opções de montagem paranóica podem ser assim:
E você também pode garantir a integridade dos dados com um fsck automático a cada inicialização.
fonte
Tente alterar qual parte da página de manual você exibe:
Como don_crissti apontou, os outros modos não têm o "porém".
fonte