Twitter

Arquivos mensais

Categorias

Desfragmentação de arquivos

Todos os sistemas de arquivos acabam sofrendo de fragmentação. Quando se diz que um arquivo está fragmentado, isso geralmente significa que partes dele estão espalhadas pelo disco, ou seja, seus dados não estão totalmente unidos. Isto ocorre principalmente quando trabalhamos com arquivos grandes e o sistema de arquivos não encontra espaço livre contínuo suficiente para alocar todo o arquivo. O efeito mais desagradável da fragmentação, nos discos-rígidos, é a necessidade da cabeça de leitura fisicamente ter que pular de lá pra cá e daqui pra lá enquanto lê um arquivo, o que tende a causar maior atraso no acesso aos dados e maior estresse ao equipamento.

Portanto, mais cedo ou mais tarde, será interessante fazer uma desfragmentação dos arquivos. Isto é muito comum nos sistemas de arquivos de Redmond. Para essa plataforma, desde os confins da década de 1980 felizmente foi desenvolvida a ferramenta Norton Speed Disk, que muitos anos depois (1993, MS-DOS 6) foi licenciada por Redmond como Defrag.

E nos sistemas de arquivos dos unix-like, como fica a fragmentação? Há um mito que diz que no Linux, por exemplo, não haveria fragmentação. Ela realmente é suficientemente minimizada nos principais sistemas de arquivos do Linux como EXT3, ReiserFS, XFS, etc., ao ponto de não ser preocupação para os usuários mais comuns. Porém, a verdade é que existe fragmentação em qualquer sistema de arquivos. É por isso que uma tarefa interessante muito realizada em servidores é definir o agendamento periódico da desfragmentação, que pode inclusive ser feita em segundo plano, enquanto o sistema continua trabalhando normalmente. Não é a forma ideal, mas funciona, embora o mais eficiente mesmo seja desfragmentar um sistema de arquivos desmontado.

Como trata-se de assunto com pouca relevância para leigos, a seguir daremos algumas instruções sem grande aprofundamento de como executar tarefas básicas.

Meu arquivo está fragmentado?

Para descobrir se determinado arquivo está fragmentado, independentemente do sistema de arquivos, use, como superusuário, o comando filefrag nome_do_arquivo. Ele já vem instalado no Ubuntu. O resultado é o número de pedaços (“extents”). Quanto menor, melhor. Se houver fragmentação, ele indica o número que seria perfeito.

Shake

Se você não administra um servidor, mas ainda acredita que se beneficiará da desfragmentação, saiba que não é difícil. Existe uma ferramenta chamada shake que infelizmente ainda não está nos repositórios oficiais da distribuição mais utilizada (Ubuntu), contudo é facilmente instalável. Obtenha um arquivo de instalação genérico, para qualquer distribuição, dê permissão de execução e o execute como superusuário. Ou então, se você utiliza Ubuntu ou qualquer outra distribuição que utiliza o sistema de empacotamento do Debian, há instruções no site do shake de como adicionar o repositório. A partir daí, será possível utilizar o apt pela linha de comando ou pelo Gerenciador de Pacotes Synaptic para instalar o pacote shake.

A forma mais fácil de usar o shake para defragmentar um diretório qualquer é assim:

sudo shake caminho

Onde caminho é o diretório desejado.

Um exemplo, para defragmentar completamente seu diretório de usuário:

sudo shake --old 0 --bigsize 0 ~

No caso, utilizamos os parâmetros --old 0 --bigsize 0 para forçar a desfragmentação de todos os arquivos, independentemente do tamanho e da idade.

xfs_fsr

Para quem tem partições com o sistema de arquivos XFS, é mais fácil: existe o xfs_fsr (XFS FileSystem Reorganizer). No Ubuntu, essa ferramente é instalada pelo pacote xfsdump, presente nos repositórios oficiais da distribuição. Instale esse pacote através do Gerenciador de Pacotes Synaptic ou do próprio terminal:

sudo apt-get install xfsdump

A partir de então, será possível, como superusuário, usar o xfs_fsr, sem qualquer parâmetro, para reorganizar tudo em até duas horas (pode ser continuado depois). Ou então, indicando como parâmetro, arquivos específicos.


4 comments to Desfragmentação de arquivos

  • Utilizando WordPress WordPress 2.3.2

    Desfragmentação de arquivos…

    Todos os sistemas de arquivos acabam sofrendo de fragmentação. Quando se diz que um arquivo está fragmentado, isso geralmente significa que partes dele estão espalhadas pelo disco, ou seja, seus dados não estão totalmente unidos. Isto ocorre prin…

  • Hamacker
    Utilizando Mozilla Firefox Mozilla Firefox 3.0.3 em Ubuntu Linux Ubuntu Linux

    Não tem como compilar um deb para Ubuntu 8.04 e divulgar no fórum Ubuntu-PT?

  • Utilizando WordPress WordPress 2.6

    [...] Fragmentação de sistemas de arquivos [...]

  • Utilizando Mozilla Firefox Mozilla Firefox 3.0.3 em Ubuntu Linux Ubuntu Linux

    Hamacker: o próprio autor do Shake mantém um repositório APT com pacotes deb. Eis as instruções: http://vleu.net/apt/

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>