segunda-feira, 12 de outubro de 2009

Como adicionar Suporte a XFS no RHEL 5.1

Curiosamente, apesar do sistema de arquivos XFS ser robusto, rápido e confiável (desde que você tenha um bom no-break, é claro), o Red Hat Enterprise Linux não o suporta por padrão. É preciso instalar as ferramentas de nível de usuário e o módulo do kernel para prover esse suporte.

Instalar as ferramentas a nível de usuário é a parte mais simples, basta pegar em qualquer buscador de rpm (http://rpm.pbone.net, por exemplo), e procurar por "xfsprogs". Basta tomar cuidado nas versões do RHEL e se você está utilizando 32 ou 64 bits. No meu exemplo estarei utilizando o RHEL 5.1 64 bits.

Para instalar o módulo do kernel, já é um pouco mais complicado. Caso você tiver a opção de compilar o kernel vanilla, é mais simples, mas muitas vezes o kernel que vem junto com o Red hat deve ser utilizado, devido a dependências de alguns módulos do kernel (se você estiver conectando o servidor a um storage, e o fornecedor do storage só suporta a versão X do kernel, por exemplo). A versão do kernel do RHEL 5.1 é o 2.6.18-53.el5, então basta seguir os seguintes passos:

# uname –r
# mkdir /usr/src/sources
# cd /usr/src/sources
Pegue o RPM fonte de ftp://ftp.redhat.com/pub/redhat/linux/enterprise/[VERSION DIRECTORY]/en/os/SRPMS/kernel-2.6.X.X-EL.src.rpm
# rpm -ivh kernel-2.6.X.X-EL.src.rpm
# cd /usr/src/redhat
# rpmbuild -bp SPECS/kernel-2.6.spec
# cp -r /usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18/fs/xfs/. /lib/modules/$(uname -r)/build/fs/xfs/
# cd /lib/modules/$(uname -r)/build

# make menuconfig
ADICIONE O SUPORTE A XFS AQUI

# cd /lib/modules/$(uname -r)/build
# make SUBDIRS=fs/xfs/ modules
# cd /lib/modules/$(uname -r)
# mkdir kernel/fs/xfs
# cp build/fs/xfs/xfs.ko kernel/fs/xfs/
# chmod 744 kernel/fs/xs/xfs.ko
# depmodPublicar postagem
# modprobe xfs


Pronto, agora poderá utilizar o sistema de arquivos XFS.

Mas não sem usar um bom no-break - Experiência própria.