Anda di halaman 1dari 6

1:6

Sumrio
Conhecendo o novo Ext4......................................................................................................................1 Introduo...................................................................................................................................1 As novidades do novo ext4.........................................................................................................2 Compilando o Kernel para ativao do ext4...............................................................................3 Configurando o novo Kernel.......................................................................................................5 Ativando e usando o ext4............................................................................................................5 Concluso....................................................................................................................................6

Conhecendo o novo Ext4


Introduo
O ext4 a evoluo do conhecido ext3, hoje o file-system padro do GNU/Linux. O Linux oferece suporte a uma infinidade de file-systens e em uma instalao normal do sistema, os file-systens mais famosos so o reiserfs e o ext3. Ambos tem suas qualidades e deficincias que fazem com que um seja superior ao outro em alguns aspectos e vice-versa; situao que divide a opinio de muitos usurios. Na prtica, podemos resumir (muuuito resumidamente), que o reiserfs tem mais eficincia com arquivos de tamanho grande enquanto que o ext3 mais rpido que o reiserfs na manipulao de arquivos pequenos. Tanto o reiserfs quanto o ext3 contam com o Journaling, um setor do filesystem onde feita a reportagem (journaling) de todas as aes feitas no hd antes de se escrever diretamente no file-system. Assim, em casos de sinistros, como um desligamento inadequado ou

2:6 uma queda de energia, basta que o filesystem consulte a seo de journaling e restaure tudo o que foi perdido sem a necessidade de uma checagem completa. Nesse aspecto, ext3 e reiserfs se comportam de formas diferentes. Enquanto o reiserfs privilegia a restaurao imediata, o ext3 se preocupa em restaurar tudo na ntegra, o que resulta em consulta e restaurao mais lenta, porm mais exata. O problema que por ser mais lento, pode ocorrer um novo desligamento inadequado no momento exato em que o journaling est sendo atualizado :-(. Atualmente ambos os file-systens esto em fase de evoluo, mas o reiserfs vem encontrando vrios problemas, principalmente de ordem administrativa, como a priso de Hans Reiser, seu desenvolvedor, enquanto que o ext3 evolui a passos largos para o ext4. No atual momento em que este artigo escrito, o ext4 j totalmente suportado pelas novas verses do kernel e j possvel us-lo em nossos computadores e em servidores para testes.

As novidades do novo ext4


Com o passar dos tempos, muitos eventos foraram a equipe de desenvolvimento do extfs (o nome da familia de file-system, compostas pelo ext2, ext3 e o futuro ext4) a desenvolver essa nova verso, at por que, o ext4 est mais para uma atualizao do ext3 (em outros lugares, chamam isso de Service Pack :-P ) do que para uma verso nova. Isso por que nesse perodo de tempo, os desenvolvedores do extfs inflaram o ext3 com uma srie de recursos complexos que, apesar de teis, geraram alguns problemas como: Alguns recursos novos encontraram problemas de incompatibilidade; O cdigo ficou altamente complexo e dificlimo para se manter; As mudanas que deveriam causar alta disponibilidade estavam o tornando indisponvel. Por esses motivos, os desenvolvedores decidiram fazer um fork (nome dado a um programa que surge a partir do cdigo do outro, com algumas modificaes) do ext3, implementando novos recursos e que foi batizado de ext4. O ext4 j era suportado desde a verso 2.6.19 do Kernel, porm, como ele vinha marcado como alpha, a maioria dos administradores no davam muita bola para ele. Esse quadro mudou a partir da verso 2.6.24.4 do kernel, que passou a dar suporte integral ao ext4 e todos os novos recursos, agora plenamente suportados. Dentre alguns desses recursos, podemos citar: File system Gigante: O ext3 conseguia fazer uma partio de, no mximo, 32 TB (terabytes) e manipular arquivos de at 2 TB de tamanho. Isso o que diz a teoria (e a documentao) por que na prtica, esses nmeros variam muito de acordo com a configurao do sistema e da arquitetura usada, a mdia seria algo como 2 TB para um file-system e 16GB para um arquivo. O ext4, no entanto, tem uma margem real bem maior que essa: 1024 PB (petabytes) ou 1EB (exabyte) para parties e 16TB por arquivo. Isso ainda no importante para servidores simples ou desktops, mas com certeza vai se tornar til para servidores grandes, configurados em Raid e de alta disponibilidade. Melhorias na pr-alocao: As vezes, um programa vai usar um espao do hd mas no na hora, ento ele reserva o espao que vai usar, fazendo uma pr-alocao, ou seja, ele guarda aquele espao pra ele e ningum mais pode usar, como se fosse uma reserva. Para essa ao, a maioria dos file-systens enchem de zeros os Inodes que eles vo reservar. Quando essa ao executada

3:6 milhares de vezes, como em um banco de dados, esse tempo de escritas de zeros geram um delay de tempo desnecessrio. O ext4 vai permitir pr-alocao de arquivos sem fazer isso, o que vai garantir uma melhoria na performance, principalmente nas rotinas de bancos de dados e em ferramentas multimidia. Tempo de alocao extendido: O ext4 vai conseguir manter a alocao do espao em disco at o ltimo momento, o que pode trazer mais performance. Maior nmeros de subdiretrios: O ext3 colocava um limite de subdiretrios por pastas de 32000 pastas, se voc achava isso um incmodo, boas notcias: no haver limites para o ext4. Checksum para o Journaling: Lembra-se daquele probleminha do journaling no ext3 que eu havia comentado no incio desse artigo? Ento.. resolvido. Haver checagem no Journaling, garantindo uma restaurao mais rpida e a prova de falhas. Desfragmentao On-Line: Sim.. parece mentira mas o ext3 deixava os arquivos com um pouquinho, mas bem pouquinho de fragmentao. Agora no deixa mais. O ext4 vai desfragmentando enquanto os arquivos vo sendo alocados. Undelete: Undelete uma ferramenta disponvel no ext4 que impede que um arquivo seja apagado. Isso pode ser muito til para arquivos e pastas que no podem ser apagados e, por estarem direto no file-system, encontram-se acima do bem e do mal, at mesmo sobre a autoridade do root, anulando em definitivo a possibilidade de um apagamento acidental do arquivo. Checagem rpida do file-system: O fsck est mais rpido por que a nova estrutura de organizao de blocos permite que partes no usadas do hd sejam puladas, o que economiza tempo numa eventual checagem. Como o ext4 ainda est em fase de desenvolvimento, alguns recursos listados podem no trabalhar como se espera ou podem no estar totalmente implementados e o uso de outros pode causar incompatibilidades com o ext3 (Um file sistem ext3 pode ser montado como ext4, mas o inverso ainda no possvel).

Compilando o Kernel para ativao do ext4


At o momento em que este arquivo escrito, o kernel atual da famlia Ubuntu, Debian, Kurumin e Slackware no oferecem o suporte nativo ao ext4. Isso quer dizer que para us-lo, teremos que compilar uma nova verso do kernel em nosso computador. Mas calma.. Isso no uma tarefa terrvel, vamos fazer passo a passo e tudo dar certo, se voc nunca compilou um kernel antes essa ser a melhor hora para aprender ;-). Em primeiro lugar, como vamos fazer a compilao do kernel, aproveite para pegar a verso mais atual, para ter tudo atualizadssimo no seu computador. Dependendo de como o kernel for configurado em sua mquina, voc vai sentir uma diferena sensvel na performance... Para melhor claro! Baixe o kernel a partir de http://kernel.org. No momento em que este artigo escrito, a verso mais nova a 2.6.25.4. Baixe a verso "full" do kernel, pelo link que indicado pelo F, e em seguinda, descompacte o kernel na pasta /usr/src/: # tar -xjvf linux-2.6.25.4.tar.bz2 -C /usr/src

4:6 Em seguida v at a pasta /usr/src/ e refaa o link linux dessa pasta; se no houver, faa o link apontando para a pasta que contm o seu novo kernel: # rm -rf linux # ln -sf /usr/src/linux-2.6.25.4 linux # cd linux Agora chegou a hora de configurar o novo kernel. H duas formas de se fazer isso: A primeira configurando todos os recursos do kernel, um por um e outra copiando uma configurao genrica. Vamos aproveitar o artigo para explicar essa parte de configurao do kernel. Imagine se voc tivesse todos os Cds de drivers para windows do mundo copiados no seu computador. No importa em que computador voc estivesse instalando o seu windows, sempre haveria um driver disponvel para usar. isso que acontece com o kernel do linux, s que de forma bem mais rpida e mais leve. O kernel mantm suporte para todos os itens de hardware do computador a diferena que no linux no chamamos de drivers, mas sim de mdulos. Os mdulos ficam "dormindo" no computador para no deixar o sistema pesado; quando um item de hardware detectado, o mdulo correspondente "acordado" e carregado na memria, fazendo com que o item funcione corretamente. Os drivers podem ser organizados como mdulos ou podem ser compilados diretamente junto com o kernel, ou seja, voc pode configurar o kernel para que os itens de hardware de seu computaodor sejam compilados junto com ele. Isso vai gerar mais performance por que no ser necessrio que o sistema carregue os mdulos correspondentes do seu computador. Outra ao que faz muita diferena na performance do sistema o processador. Por padro, um kernel genrico normal deve suportar todos os processadores, mas compilar um kernel para o processador de seu computador faz toda a diferena. Bem, voltando ao ext4, as instrues a seguir so para fazer uma instalao genrica do kernel. Na pasta /boot costuma haver um arquivo de configurao do kernel atual, que geralmente nomeado como config-verso_do_kernel (ex.: config-kanottix-2.6.18.8.shl). Copie esse arquivo para a pasta de seu kernel atual com o nome de .config. Esse um arquivo de configurao lido pelo kernel que evita que configuremos cada item, tarefa que apesar de gerar um resultado eficiente, toma horas do nosso tempo. # cp -a /boot/config-versao_do_kernel /usr/src/linux/.config Agora que a configurao est feita, vamos ativar o suporte ao ext4 na configurao do kernel. Para abrirmos a tela de configurao do kernel, precisamos ter o programa libncurses5-dev instalado e usar o terminal maximizado. # apt-get install libncurses5-dev e depois do ncurses instalado, a configurao: # make menuconfig Com a tela de configurao do kernel aberta, v em File System e marque a opo Ext4dev/ext4 extended fs support development (EXPERIMENTAL). Se preferir, marque tambm as opes de suporte ao ext4 que surgem logo abaixo, assim que o ext4 marcado. Escolha exit at sair da tela de configurao do kernel e no esquea de salvar. Agora hora de compilar o kernel, basta usar o make e depois instalar os mdulos com o comando make modules_install. O make demora mesmo e se ele perguntar algo, responda a opo padro para tudo:

5:6 # make # make modules_install Ok.. Kernel compilado com suporte ext4.

Configurando o novo Kernel


Os mdulos j esto instalados no sistema mas preciso atualizar o kernel tambm para que os mdulos instalados funcionem, para isso necessrio bootar com o novo kernel que, at agora, est dentro da pasta /usr/src/linux/arch/i386/boot/bzImage. Copie esse arquivo para a pasta /boot com o nome vmlinuz-2.6.25.4: # cp -a /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.25.4 Em seguida, crie um novo initrd para o novo kernel com o comando: # update-initramfs -c -k 2.6.25.4 Agora vamos configurar o grub para bootar a partir do novo kernel e initram. Use o comando update-grub: # update-grub Ok.. O grub est configurado, reinicie o computador e, na tela de escolha do sistema operacional, escolha o seu novo kernel para dar boot.

Ativando e usando o ext4


Antes de formatar ou montar uma partio ext4, voc precisa que as ferramentas de manuteno do file-system dem suporte ao novo ext4, j que no faria o menor sentido estar com o file-system novo e no usar nenhum dos seus recursos. O truque est em atualizar o e2fsprogs. Por enquanto, o apt-get NO dispe da verso com suporte a ext4 e por isso ser necessrio baixar o e2fsprogs pelo git onde encontramos a verso para desenvolvimento e compilar no computador. # apt-get install git-svn # git clone git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git # cd e2fsprogs # git checkout -b pu (Switched to a new branch "pu") # git branch ( master * pu) # git pull git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git pu # ./configure # make # make install

6:6 Se tudo correu bem at aqui ento agora s usar o novo ext4. Para usar o novo ext4 em uma nova partio, basta que voc formate ela com o comando mkfs.ext4. No exemplo abaixo, vamos considerar que a partio /dev/hda6 vai ser formatada para usar o novo file-system. # mkfs.ext4 /dev/hda6 Para usar o ext4 numa partio que j existe e que foi formatada previamente com o ext3, basta que ela seja montada usando o ext4dev no tipo do file-system conforme o comando abaixo: $ mount -t ext4dev /dev/hda1 /mnt/hda1 No exemplo acima, a partio hda1 ser montada em /mnt/hda1 com o formato de arquivos ext4. Enquanto o ext4 ainda for uma verso em desenvolvimento, o tipo do file-system a ser passado de parmetro para o mount ext4dev, depois que ele for oficial ser ext4 apenas. Para montar a partio raiz do sistema pode-se editar o arquivo /etc/fstab e mudar o tipo de filesystem para ext4dev no lugar de ext3 na linha que monta o diretrio / conforme o exemplo abaixo: /etc/fstab (...) /dev/hda1 / ext4dev defaults 0 0 (...) Na prxima reinicializao o sistema j vir montado como ext4. Ateno!! Seja cauteloso com o uso do ext4 em parties que foram criadas com ext3 anteriormente. Se algum novo recurso for usado no ser possvel voltar para o ext3, portanto use na partio / apenas se souber o que est fazendo ou se quiser arriscar mesmo.

Concluso
De uma forma geral, no h grandes diferenas para usurio finais em usar ou testar o novo ext4. A menos que voc tenha mais do que 32 mil subpastas ou tenha arquivos maiores que 16 Gigas em seu computador :-P. Em computadores de produo, sente-se uma grande diferena no trfego de dados e testes j podem ser feitos em servidores de arquivos ou servidores web. Esse file-system ainda est voltado para administradores de sistema, mas mesmo assim, vale a pena o teste e o trabalho para se habituar ao novo sistema de arquivos e suas ferramentas. Outra diferena grande pode ser percebida ao se rodar o fsck.ext4 ou quando um desligamento repentino acontece. Tudo estar (ficou melhor) rodando mais rpido. Bem, analisando tudo... est aprovado, viva o novo!! ;-).

Anda mungkin juga menyukai