Por que você não precisa desfragmentar um sistema Linux? Porque está usando o sistema de arquivos ext2 / ext3 ou porque é Linux?
Isso é relevante, pois eu tenho um sistema de inicialização dupla (W7 / Ubuntu) e uma partição comum (NTFS) que pode ser acessada pelos dois sistemas. Se eu estiver usando esta partição com o Linux, ela será fragmentada?
Outra questão são os contêineres Truecrypt. Eu também os acesso com Linux e Windows, e eles são FAT32. Eles ficam fragmentados pelo Linux operando neles?
e4defrag -v .
em uma árvore de diretórios, especialmente se ela contém, por exemplo, arquivos baixados com um cliente de torrent (embora alguns usemfallocate
/posix_fallocate
).Respostas:
Aqui está um artigo sobre How To Geek sobre como o ext2 / ext3 aloca arquivos no disco. E eles também têm um artigo perguntando " Você realmente precisa desfragmentar ?"
Por que o FAT se fragmenta:
"Quando você salva um arquivo em um sistema de arquivos FAT, [o arquivo é salvo] o mais próximo possível do início do disco. Quando você salva um segundo arquivo, [o arquivo é salvo] logo após o primeiro arquivo - e assim Quando os arquivos originais aumentam de tamanho, eles sempre ficam fragmentados. Não há espaço nas proximidades para eles crescerem. "
-Como Fazer Geek
E wikipedia tem mais informações sobre a fragmentação do FAT .
Sobre como EXT2,3,4 aloca arquivos:
"sistemas de arquivos ext2, ext3 e ext4 [...] alocam arquivos de uma maneira mais inteligente. Em vez de colocar vários arquivos próximos um do outro no disco rígido, os sistemas de arquivos Linux espalham arquivos diferentes por todo o disco, deixando uma grande quantidade de espaço livre entre eles ".
-Como Fazer Geek
(E mais informações sobre desfragmentação no ext3, da wikipedia )
"Os modernos sistemas de arquivos Linux mantêm a fragmentação no mínimo, mantendo todos os blocos em um arquivo juntos, mesmo que não possam ser armazenados em setores consecutivos. Alguns sistemas de arquivos, como ext3, alocam efetivamente o bloco livre mais próximo de outro blocos em um arquivo. Portanto, não é necessário se preocupar com a fragmentação em um sistema Linux ".
- TLDP
fonte
A fragmentação é sempre uma preocupação, independentemente do sistema de arquivos. O Ext3 / Ext2, no entanto, minimizou o problema a ponto de a maioria dos administradores simplesmente operar como se não fosse uma preocupação. Isso é minimizado pelo uso de um planejador de E / S competente e pelo sistema de arquivos deixando espaço à direita após cada arquivo para acomodar o crescimento. Além disso, fragmentos adicionais são armazenados mais próximos, mesmo quando há fragmentação, os efeitos são severamente silenciados. A mudança do Ext4 para extensões também teve como objetivo ajudar a mitigar a fragmentação ainda mais.
Ainda existe fragmentação, o ext2 tinha uma ferramenta de desfragmentação offline, o ext4 está obtendo um online e o btrfs (apenas porque está relacionado à pergunta) já possui um desfragmentador online. Se você estiver no ext3, sua única opção real é converter para ext4 (via
tune2fs
) ou tentar ver quanta sorte você tem com as ferramentas de espaço do usuário, comoshake
.Dependendo do tipo de E / S pelo qual seu sistema de arquivos está passando, ainda pode ser uma preocupação, mesmo no nível silencioso, e é por isso que as ferramentas online foram consideradas úteis para começar.
Para a pergunta sobre o FAT32, a fragmentação não ocorre quando você apenas opera em um arquivo, acontece quando você escreve no arquivo. Para responder sua pergunta diretamente, a fragmentação é um aspecto do design do sistema de arquivos; portanto, o sistema de arquivos FAT32 tem potencial para fragmentação sempre que você escrever algo nele.
fonte
Respondendo às suas perguntas, uma por uma:
Como o ext2 / 3/4 tem uma abordagem diferente sobre os arquivos e pastas, eles quase não são fragmentados. Outros já responderam e você pode ler mais detalhes aqui
Sim, pode ficar fragmentado. Não importa se o Windows ou Linux ou qualquer outra coisa está acessando, é como cada sistema de arquivos lida com o tamanho do arquivo, como armazena todos esses blocos, se deixa espaços vazios entre cada arquivo ...
Os contêineres Truecrypt são um arquivo, para todos os assuntos práticos. Ao criar um contêiner usando TrueCrypt, você está criando um arquivo do tamanho que escolher. Para o seu sistema operacional, é como qualquer outro arquivo. Se você fizer cópias, etc., talvez as cópias possam acabar sendo salvas fragmentadas.
Mas lembre-se de que nunca é bom ter várias cópias do mesmo contêiner; isso pode ajudar a reduzir a segurança dele. Sempre faça um novo recipiente.
Quando você salva, exclui, copia, move, etc, arquivos dentro do contêiner, os sistemas operacionais não sabem disso, é o mesmo que abrir, editar e salvar qualquer outro arquivo, sem alterar seu tamanho.
E se você estiver preocupado com a segurança do truecrypt sobre a fragmentação, faça uma pesquisa sobre o uso do truecrypt com SSDs: como o SSD tenta aumentar o desgaste de toda a memória nele, você pode ter o mesmo efeito de copiar o contêiner.
fonte
No final, tudo se resume aos drivers do sistema de arquivos no sistema operacional.
Os sistemas de arquivos ext2 e FAT são os dois métodos para registrar quais blocos no disco pertencem a qual arquivo. Quando nem todos os blocos de um arquivo são contíguos, o arquivo é chamado fragmentado. Mas, como deveria ser óbvio, a fragmentação é causada pela estratégia de alocação de bloco ao gravar um arquivo, não pela maneira como você registra esses blocos.
O que faz a diferença é a distância que os drivers do sistema de arquivos podem ter. Se o driver souber que há mais 10 blocos para escrever, ele poderá selecionar uma área livre contígua e evitar fragmentação futura. Isso depende da arquitetura do driver, que é específica do sistema operacional. Mas a mesma pesquisa de espaço livre exata pode ser feita no FAT e ext2.
De fato, ext2 e FAT não são tão diferentes quanto você imagina. Eu escrevi a parte ext2 de um gerenciador de inicialização em cima do código FAT existente, e isso exigiu menos de 100 linhas extras de código.
fonte