Sistema de arquivos reiserfs

Este é um sistema de arquivos alternativo ao ext2/3/4 que também possui suporte a journaling. Entre suas principais características, estão que ele possui tamanho de blocos variáveis, suporte a arquivos maiores que 2 Gigabytes e o acesso mhash a árvore de diretórios é um pouco mais rápida que o ext3.

Para utilizar reiserfs, tenha certeza que seu kernel possui o suporta habilitado (na seção File Systems) e instale o pacote reiserfsprogs que contém utilitários para formatar, verificar este tipo de partição.

Criando um sistema de arquivos reiserfs em uma partição

Para criar uma partição reiserfs, primeiro instale o pacote (apt-get install reiserfsprogs).

Para criar uma partição reiserfs, primeiro crie uma partição ext2 normal, e então use o comando:

mkreiserfs /dev/sda?

Onde a "?" em sda? significa o número da partição que será formatada com o sistema de arquivos reiserfs. A identificação da partição é mostrada durante o particionamento do disco, anote se for o caso. sda é o primeiro disco rígido SATA, sdb é o segundo disco rígido SATA. Discos IDE são identificados por hda?, hdb?, etc. Para detalhes sobre a identificação de discos, veja “Identificação de discos e partições em sistemas Linux”.

Algumas opções são úteis ao mkreiserfs:

  • -s [num] - Especifica o tamanho do arquivo de journal em blocos. O valor mínimo é 513 e o máximo 32749 Kb. O valor padrão é 8193.

  • -l [NOME] - Coloca um nome (label) no sistema de arquivos.

  • -f - Força a execução do mkreiserfs.

  • -d - Ativa a depuração durante a execução do mkreiserfs.

Agora para acessar a partição deverá ser usado o comando: mount /dev/sda? /mnt -t reiserfs

Para mais detalhes veja “Montando (acessando) uma partição de disco”.

Note que é possível criar um sistema de arquivos no disco rígido sem criar uma partição usando /dev/sda, /dev/sdb, etc. usando a opção -f EVITE FAZER ISSO! Como não estará criando uma partição, o disco estará preparado para uso de maneira incorreta, você não poderá apagar o sistema de arquivos completamente do disco caso precise (lembre-se que você não criou uma partição), e a partição possui uma assinatura apropriada que identifica o sistema de arquivos.

Criando um sistema de arquivos reiserfs em um arquivo

O sistema de arquivos reiserfs também poderá ser criado em um arquivo, usando os mesmos benefícios descritos em “Criando um sistema de arquivos EXT2 em um arquivo”. Para fazer isso execute os seguintes passos em seqüência:

  1. Use o comando dd if=/dev/zero of=/tmp/arquivo-reiserfs bs=1024 count=33000 para criar um arquivo arquivo-reiserfs vazio de 33Mb de tamanho em /tmp. Você pode modificar os parâmetros de of para escolher onde o arquivo será criado, o tamanho do arquivo poderá ser modificado através de count. Note que o tamanho mínimo do arquivo deve ser de 32Mb, devido aos requerimentos do reiserfs.

  2. Formate o arquivo com mkreiserfs -f /tmp/arquivo-reiserfs. Ele primeiro dirá que o arquivo arquivo-reiserfs não é um dispositivo de bloco especial (uma partição de disco) e perguntará se deve continuar, responda com y.

    O sistema de arquivos ReiserFS será criado em /tmp/arquivo-reiserfs e estará pronto para ser usado.

  3. Monte o arquivo arquivo-reiserfs com o comando: mount /tmp/arquivo-reiserfs /mnt -t reiserfs -o loop=/dev/loop1. Note que foi usado o parâmetro -o loop para dizer ao comando mount para usar os recursos de loop do kernel para montar o sistema de arquivos. O parâmetro -t reiserfs poderá ser omitido, se desejar.

  4. Confira se o sistema de arquivos ReiserFS em arquivo-reiserfs foi realmente montado no sistema de arquivos digitando df -T. Para detalhes, veja “df”.

Pronto! o que você gravar para /mnt será gravado dentro do arquivo /tmp/arquivo-reiserfs. Você poderá usar todos os recursos de um sistema de arquivos reiserfs como permissões de arquivos e diretórios, links simbólicos, etc.

O uso da opção loop=/dev/loop1 permite que o dispositivo /dev/loop1 seja associado ao arquivo /arquivo-reiserfs e assim permitir sua montagem e uso no sistema.

  • Você poderá usar apenas -o loop com o comando mount, assim o kernel gerenciará automaticamente os dispositivos de loop.

  • Caso faça isto manualmente, lembre-se de usar dispositivos /dev/loop? diferentes para cada arquivo que montar no sistema. Pois cada um faz referência a um único arquivo.