Defragging uma partição ext?

8

Por que o ext2 / 3/4 não precisa ser desfragmentado? Não há fragmentação alguma?

    
por uray 06.09.2010 / 17:09

2 respostas

10

Sistemas de arquivos modernos, particularmente aqueles projetados para serem eficientes em casos de uso multiusuário e / ou multitarefa, fazem um bom trabalho de não fragmentar os dados até que os sistemas de arquivos se tornem quase completos (não existe um número exato para onde near to full "marca é como depende de quão grande é o sistema de arquivos, a distribuição dos tamanhos dos arquivos e seus padrões de acesso - figuras entre 85% e 95% são comumente citadas) ou o padrão de criações e gravações de arquivos é incomum ou o sistema de arquivos é muito antigo, por isso tem visto muita "ação". Isso inclui ext2 / 3/4, reiser, btrfs, NTFS, ZFS e outros.

Atualmente não há uma maneira no nível de kernel / sistema de arquivos para desfragmentar ext3 ou 4 no momento (veja link para um pouco mais de informação), embora o ext4 esteja planejado para ganhar rapidamente a desfragmentação online.

Existem ferramentas de usuário (como link e outras listadas nesse artigo da wikipedia) que tentam desfragmentar arquivos individuais ou conjuntos de arquivos. arquivos copiando / reescrevendo-os - se houver um bloco grande o suficiente de espaço livre, isso geralmente resulta em um bloco contíguo ao arquivo. Isso não garante que os arquivos estejam próximos uns dos outros, portanto, se você executar o shake em um par de arquivos grandes, você encontrará os dois arquivos sendo desfragmentados, mas não próximos um do outro no disco. Em um sistema de arquivos multiusuário, a localidade dos arquivos entre si não é importante (é menos importante que a fragmentação dos arquivos), já que os cabeçotes das unidades estão virando de qualquer lugar para atender às necessidades de usuários diferentes e isso afoga o bônus de latência que a localidade de referência entre arquivos não desfraldados daria, mas em um sistema de usuário geralmente único, pode trazer benefícios mensuráveis.

Se você tiver um sistema de arquivos que se tornou fragmentado ao longo do tempo e atualmente tem uma boa quantidade de espaço livre, executar algo como shake em todos os seus arquivos pode ter o efeito que você está procurando. Outro método seria copiar todos os dados para um novo sistema de arquivos, remover o original e depois copiá-lo novamente. Isso ajuda da mesma maneira que o shake , mas pode ser mais rápido para grandes quantidades de dados.

Para pequenas quantidades de fragmentação, apenas não se preocupe com isso. Eu sei que as pessoas que passam mais tempo sentadas assistindo as barras de progresso de desfragmentação do que elas sempre salvarão (devido ao acesso mais eficiente ao disco) em várias vidas de operação normal!

    
por 06.09.2010 / 18:28
0

Não há muita fragmentação, desde que o disco não esteja cheio demais (por isso, não encha muito o disco se puder evitá-lo).

    
por 06.09.2010 / 17:39