What can be done to reduce the chance of filesystem corruption and dataloss on a single USB drive?
Sistemas de arquivos comumente usados, como FAT32 ou NTFS não armazena nenhuma informação de validação data (apenas no próprio sistema de arquivos interno). Mantenha backups dos seus dados, valide os dados com checksums (você pode gerar hashes MD5 / SHA1 para seus arquivos apenas para verificar se algum dado tiver corrompido) e / ou armazenar arquivos de recuperação.
E, por último, independentemente do sistema de arquivos , você deve sempre desmontar corretamente a unidade. Isso garante que todas as leituras / gravações de arquivos existentes sejam concluídas e que quaisquer buffers de leitura / gravação tenham sido liberados.
Which filesystem is the most robust?
A robustez tem um preço - compatibilidade. Indiscutivelmente, você desejaria um sistema de arquivos com validação de dados e checksum integrados (ou dados redundantes) como ZFS , mas que não é muito portátil com o Windows / OSX. Se o desempenho for uma preocupação, talvez você queira tentar o exFAT , que parece ser suportado na maioria dos principais sistemas operacionais fora do caixa ou com alguma configuração ligeira.
Which technologies or labels (xyz certified, etc) indicate that USB sticks supporting them are less likely to become corrupted?
Qualquer coisa que mantenha a memória flash viva por mais tempo, principalmente use o nivelamento e sobre provisionamento . Se a unidade suportar o nivelamento de desgaste, uma unidade maior manterá mais setores disponíveis no caso de alguns se desgastarem.
No final do dia, a memória flash não dura para sempre. Toda a memória flash atual tem um número limitado de ciclos de leitura / gravação, o que inerentemente causa perda de dados ao longo do tempo. Você pode reduzir esse risco fazendo backups regulares e validando seus dados com somas de verificação para determinar quando um arquivo foi corrompido.
Também é possível usar um sistema de arquivos com integridade e recuperação de dados integradas, mas elas são incomuns em muitos ambientes não-UNIX no momento em que escrevo isso. Eles também podem ser mais lentos e, na verdade, desgastam a unidade mais rapidamente, devido aos requisitos de armazenamento de checksums adicionais & informações redundantes para cada arquivo.
Para cada caso, há uma solução, você só precisa pesar as considerações de portabilidade / integridade / velocidade.