Sistema de arquivos Linux que registra todos os arquivos, mesmo os excluídos

2

Eu tenho um requisito para dar a um usuário acesso a um compartilhamento NFS no qual eles podem colocar alguns arquivos e, em seguida, exclua os arquivos. Suponha que eles são desonestos e podem tentar realmente apagar os arquivos (não tenho certeza se o shred funciona via NFS, mas o que quer que seja o equivalente). Nós não queremos que eles percebam que o compartilhamento NFS foi alterado (é o diretório home deles).

Sim ... exigência estranha eu sei!

Existe um sistema de arquivos ou configuração no NFS, então parece que o usuário está apagando arquivos enquanto eles estão sendo armazenados? Foi-me dito que este era um sistema de arquivos de revisão, mas não encontrei muitas referências a isso.

Estou ciente de que você pode "desfazer a exclusão" de ext3 e similares usando programas de recuperação, mas gostaríamos de algo mais robusto do que isso, idealmente algo que armazena todas as cópias de arquivos de alguma forma facilmente acessível.

Usando o CentOS 5.8. O usuário não pode excluir seus arquivos porque eles são "desonestos" e não são mais confiáveis (é complicado, e isso é tudo que eu sei).

    
por hellomynameisjoel 11.03.2013 / 09:05

4 respostas

2

Sistema de arquivos de versão

O NILFS faz instantâneos automáticos e contínuos, para que ele possa acompanhar os arquivos modificados e excluídos. A versão 2 (também conhecida como NILFS2) também tem um mecanismo de coleta de lixo puro para evitar que o sistema de arquivos fique cheio com muitos instantâneos! Eu definitivamente olharia para essa solução!

Uma pesquisa na Wikipedia também retornou ext3cow que copia na gravação em nível de bloco e pode manter rastros de arquivo versões.

Ambas as soluções já existem há algum tempo, mas não posso falar pela sua maturidade em um ambiente corporativo, pois não tenho experiência com elas.

Outra abordagem

Pode-se simplesmente usar um sistema de backup incremental, uma espécie de rsync que mantém o compartilhamento NFS em lugares diferentes, mas que também pode restaurar arquivos apagados.

Essa solução não é à prova de balas e requer armazenamento extra, por isso pode não atender aos seus requisitos ou orçamento. Além disso, essa solução seria executada periodicamente, portanto, cada arquivo criado e excluído entre a sessão de backup seria definitivamente perdido.

Se essas limitações ainda atenderem à fatura, consulte o rdiff-backup . É uma ferramenta de linha de comando e fará o trabalho de forma adequada e fácil.

Talvez, ter ambas as abordagens seja mais seguro.

    
por 11.03.2013 / 09:21
1

Eu não sei sobre o NFS, mas você definitivamente pode fazer isso usando o CIFS. Existe um módulo de samba chamado vfs_recycle . Quando está ativo, todos os arquivos excluídos são movidos para o diretório que você indicou em config. Você também pode incluir a diretiva veto files e informar a pasta de reciclagem para que os usuários não possam ver a reciclagem.

    
por 11.03.2013 / 09:13
0

Há sempre a opção de ZFS no Linux e de obter instantâneos periódicos das exportações do sistema de arquivos. Um exemplo de um serviço de instantâneo automático para a variante do Linux do ZFS. As capturas instantâneas ZFS aparecem, por padrão, em um subdiretório do compartilhamento do sistema de arquivos em uma árvore .zfs/snapshot/ (invisível) de uma maneira transparente para o usuário.

    
por 11.03.2013 / 10:17
0

Se você usar o sistema de arquivos ext *, poderá usar atributos para obter o comportamento desejado. Você pode usar o sinalizador imutável (se você ativá-lo, nenhuma ação pode ser feita nesse arquivo) ou sinalizador 'u' (Quando o arquivo é excluído, seu conteúdo é salvo. Isso permite que o usuário peça sua desativação.)

link

    
por 11.03.2013 / 10:23