Como desfragmentar um sistema de arquivos ext4

49

Eu não quero nenhuma resposta dizendo que não há necessidade, por favor!

    
por Pedro Diniz 23.11.2012 / 20:52

5 respostas

49

Use e4defrag para desfragmentar seus arquivos

Se o seu sistema de arquivos ext4 for criado com a opção extent (é padrão nas distribuições recentes), você pode usar o utilitário e4defrag para verificar e desfragmentar on-line, ou seja, sem um limite.

Basta verificar o nível de fragmentação com algo assim (você precisa ser root para ver os detalhes):

sudo e4defrag -c /path/to/myfiles

Veja um exemplo da saída que você pode obter:

$ sudo e4defrag -c iso/
<Fragmented files>                             now/best       size/ext
1. /home/gerlos/iso/debian-live-7.5.0-i386-rescue.iso
                                                 7/1         111177 KB
2. /home/gerlos/iso/systemrescuecd-x86-4.4.1.iso
                                                 4/1         100897 KB
3. /home/gerlos/iso/debian-live-7.5.0-amd64-rescue.iso
                                                 6/1         116053 KB
4. /home/gerlos/iso/ubuntu-14.04.2-server-amd64.iso
                                                 8/1          76160 KB
5. /home/gerlos/iso/ubuntu-14.10-desktop-amd64.iso
                                                15/1          75712 KB

 Total/best extents             40/5
 Average size per extent            90577 KB
 Fragmentation score                0
 [0-30 no problem: 31-55 a little bit fragmented: 56- needs defrag]
 This directory (iso/) does not need defragmentation.
 Done.

Como neste exemplo, na maioria das vezes ele dirá que nenhuma desfragmentação é necessária, mas se você quiser fazer isso de qualquer maneira você pode usar (você não precisa usar o sudo para desfragmentar seus próprios arquivos): / p>

e4defrag /path/to/myfiles

Seus usuários podem até executá-lo em seus próprios arquivos, não é necessário ser root, a menos que você queira trabalhar em arquivos de outro usuário ou sistema.

e4defrag está no pacote e2fsprogs , e eu acho que já está instalado no seu sistema Ubuntu.

    
por gerlos 08.05.2015 / 10:55
26

Dê uma olhada no e2fsprogs . Isso também está disponível nos pacotes do Ubuntu. Ele fornece o programa e4defrag.

    
por TIIUNDER 23.11.2012 / 21:13
16

Use o Gparted para desfragmentar seu sistema de arquivos

Se você tem espaço suficiente no seu disco rígido, você pode usar Gparted para desfragmentar sua sistema de arquivos ( ext2, ext 4, nfts, etc. ). Você precisa inicializar a partir de um disco de inicialização de CD / DVD / USB porque a unidade em que você está trabalhando precisa ser desmontada. Você também precisa ter mais espaço não utilizado do que o espaço usado para que isso funcione e isso pode demorar um pouco.

  • Inicialize a partir de um disco de inicialização.
  • Execute gparted e reduza a partição que contém os dados que você deseja desfragmentar para a quantidade de dados.
  • Certifique-se de que a partição que você deseja desfragmentar seja a última partição da unidade, movendo-a para o final (talvez seja necessário criar outra partição em branco na frente dela, se houver apenas uma partição na unidade).

Com a partição que você deseja desfragmentar como a última partição na unidade:

  • aumente a partição para a esquerda até o tamanho máximo. Isso moverá os dados das suas partições para o final da unidade.
  • Quando terminar, reduza a partição para o tamanho anterior.
  • Se você criou uma partição em branco para ter mais de uma no disco, agora poderá excluí-la.
  • Mova suas partições de volta para o pedido original e recrie novamente a partição que você queria que seja desfragmentada.

Agora é desfragmentado.

E eu sei que você não está interessado em por que / porque não desfragmentar o Ubuntu, mas vou postar o link para why-is-defragmentation - desnecessário mesmo assim.

    
por James 23.11.2012 / 22:34
1

O Ubuntu 14.04 LTS coloca (pelo menos a unidade principal) na partição EXT4 quando instalado em uma instalação limpa (não residindo no topo do Win-Junk).

Neste caso, se você acabou de configurar um novo sistema, ou formatado como novo em um sistema antigo e depois fez uma instalação limpa, então por padrão com o 14.04 LTS, você tem uma partição EXT4 em /dev/sda1 .

Agora, basta abrir um Terminal ( CTRL - ALT - T ) e digitar:

sudo e4defrag -c /dev/sda1

e seja paciente até que o "cheque" seja concluído e você receba o relatório de fragmentação de volta.

Se você não está confiante em ter uma partição EXT4 na sua unidade de sistema operacional, simplesmente vá para o HOME e digite df -T . Veja o que suas partições sda * estão configuradas (tente isso em 14.04LTS, e você verá EXT4, a menos que tenha escolhido outro tipo de partição na configuração do disco rígido).

    
por lance 06.03.2016 / 20:52
0

Eu estou adicionando essa resposta para mostrar também como podemos encontrar várias ferramentas internas do Linux para fazer algumas operações comumente feitas. você

Além disso, observe que você precisa fazer como superusuário somente se desejar desfragmentar sem desmontar.

Usando o comando apropos

e4defrag -vc /path #verbose output with count
    
por Sudip Bhandari 21.02.2018 / 06:16

Tags