You are on page 1of 21

Tunando o ext4 para o Desempenho! - Revisto, ampliado e ainda mais rpido e seguro!

Autor: Marcelo A. S. Pugliesi o galactus do Frum Ubuntu Brasil Pois bem pessoal, aqui estou eu novamente com mais novidades para vocs! Como procuro no ficar parado, continuei meus estudos e venho aqui com vocs dividir o que aprendi! No tutorial anterior vocs aprenderam como tunar o Ext4 para desempenho, mas sem segurana de seus dados! Agora mostrarei a vocs novas opes de desempenho com ou sem segurana! Lembrando que este tema est longe de ser esgotado! Existem muitas outras modificaes que podem ser feitas, mas coloquei aqui as que julgo serem mais teis para usurios desktop! Fique a vontade para acrescentar mais alguma dica ou indicar qualquer erro! Decidi dividir este tutorial em trs partes! A primeira uma pequena introduo, a segunda parte composta das alteraes que voc pode realizar desde a formatao e instalao do sistema. Na terceira parte mostro o que voc pode fazer depois de j ter realizado uma instalao padro ou no do Ubuntu! Procurei deixar clara as dicas que deixam o seu sistema mais seguro e as que deixam o seu sistema mais inseguro, fica ao seu critrio o que usar! No me responsabilizo por perda de dados e corrompimentos do sistema! Faa backup dos seus dados e na dvida treine numa mquina virtual antes de tentar na vida real! Este tutorial faz ainda mais uso do terminal/consola do que o anterior! Portanto, se voc no gosta de usar o terminal, por favor, pare por aqui! Se voc gostaria de ter um sistema muito mais rpido que sua instalao padro e no se importa em usar o terminal, fique a vontade e tire bom proveito das dicas a seguir! As dicas a seguir no so exclusividade do Ubuntu, elas podem ser aplicadas a qualquer distribuio moderna que tenha o seu kernel suportando o ext4 e use verses mais recentes dos comandos listados neste tutorial! Este tutorial no voltado ao usurio leigo ou iniciante! Assumo que voc sabe o que est fazendo! Entretanto um novato com pacincia e um pouco de leitura poder realizar os mesmos passos! Por favor, leia todo o tutorial antes de realizar quaisquer mudanas!

Introduo Entendo o Journal!


O ext4 por padro vem preparado para segurana dos dados em detrimento do desempenho. Tanto o ext3 quanto o ext4 so sistemas de arquivos com journal. Journaling o processo de registro de mudanas no sistema de arquivos por meio de um journal (um arquivo de registro (log) dedicado em uma regio adjacente do disco). As alteraes reais no armazenamento fsico so ento efetuadas a partir do arquivo de registro (log), que pode implement-las com mais confiabilidade e garantir a consistncia, mesmo se houver travamento do sistema ou faltar energia durante a operao. O resultado que se reduzem as chances de que o sistema de arquivos seja corrompido. O ext3 e o ext4 oferecem suporte a vrios modos de journaling, dependendo das necessidades do usurio. So eles: * Ordered (padro): Somente os metadados dos arquivos so escritos na rea de journal, porm fora a escrita do contedo do arquivo no sistema de arquivos principal logo aps os metadados terem sido gravados no journal. Este o que oferece a melhor relao confiabilidade VS desempenho. * Writeback: Somente os metadados so escritos na rea de journal, porm o kernel ir definir quando o contedo do arquivo ser escrito no sistema de arquivos principal (sync ou pdflush). O writeback oferece o melhor desempenho, porm em caso de queda do sistema, os dados podem ser reescritos fora de ordem os corrompendo. Segundo o Tio Linus, o Writeback modo dos idiotas! * Journal: metadados e dados do arquivo (contedo do arquivo) so escritos na rea de journal e depois escritos no sistema de arquivos principal, aumentando a confiabilidade, porm oferecendo menos desempenho. O Journal do sistema de arquivos a parte mais acessada do seu disco rgido. Seja l o que for que voc faa o Journal acessado, ou seja, tanto nas operaes de leitura como de escrita! Como vocs sabem o disco rgido uma das partes mais lentas do seu PC! Ento como poderemos melhorar isso? Apenas em relao ao Journal existem trs maneiras principais! Primeiro alterando a forma de gravao do Journal (explicado logo acima), segundo alterando o seu tamanho e terceiro mudando a sua localizao! Por padro o ext4 procura calcular, de acordo com o tamanho do sistema de arquivos, o melhor tamanho do journal! Contudo isso tambm pode acabar gerando perda de desempenho, isso porque o journal pode ficar pequeno em relao quantidade de dados guardados em seu sistema de arquivos. No geral o Journal criado tem cerca de 128MB! Esse tamanho pode ser duplicado (256MB) e at mesmo triplicado (400MB) se mantido dentro do mesmo sistema de arquivos! Se colocado fora do mesmo sistema de arquivos, ele pode ser maior que 1GB! Quanto localizao, ele pode ser colocado fora do mesmo sistema de arquivos, mas dentro do mesmo disco rgido, e pode ser colocado fora do disco rgido onde est o seu sistema de arquivos! Como voc pode estar imaginando, o Journal grande e colocado em outro disco rgido que no o do seu sistema de arquivos a opo mais rpida! E essa tcnica no nova! muito utilizada em servidores, mas devido a sua complexidade ela evitada no mundo desktop! Alm das alteraes no Journal, podemos inserir novos parmetros na hora da formatao para acelerar as coisas em nosso sistema de arquivos! Na hora de formatar possvel criar um ndice dos diretrios e usar extent nos blocos! A criao de um ndice de diretrio acelera a leitura dos mesmos! O uso de extents na hora de guardar as informaes dos blocos nos inodes acelera e muito o acesso ao sistema de arquivos! Mesmo aps a formatao podemos alterar as opes na hora da montagem do sistema de arquivos, fazendo com que a leitura e gravao dos dados possam ficar ainda mais rpidas mas ao custo de segurana dos dados! Ento vamos deixar dos entre tantos e partir logo para os finalmentes! :)

- Primeira parte - Aes realizadas antes da instalao!

* Opo 1 Journal externo em outro disco rgido! Voc realizar uma instalao nova do seu Ubuntu (ou de uma de suas variantes) e deseja aperfeioar o seu sistema de arquivos desde o incio! Essa a melhor opo! De posse de um Live-CD do Ubuntu ou do CD do Parted Magic iremos realizar uma formatao em modo texto! , isso mesmo, voc leu corretamente, em modo texto! Assim temos muito mais opes no que alterar! Agora a hora de voc planejar como vai deixar a sua tabela de parties! Vai criar uma instalao simples com duas parties (raiz mais Swap) ou vai criar mais de duas parties, separando tambm o Home? Isso fica ao seu critrio! O que interessa neste tutorial que voc precisar primeiro criar sua tabela de parties para posteriormente inserir as novas opes que faro toda a diferena durante a formatao! Voc tem duas maneiras de fazer isso! Voc pode utilizar o cfdisk em modo texto (eu sei, eu sei, os que nadam ou j nadaram em guas do Slakware e do Arch Linux agora abriram o maior sorriso), ou usar o gparted mesmo em modo grfico! A vantagem desse processo que voc deixa tudo pronto no disco rgido em questo e depois apenas aponta para o particionador da instalao onde vai montar o sistema de arquivos e qual o tipo dele! Voc no manda formatar tudo outra vez! Tambm timo se voc quiser usar um Alternate Install CD ou a instalao mnima do Ubuntu!

Usando o cfdisk!
Use o comando fdisk -l como root para descobrir a atual situao de sua tabela de parties! importante saber se o disco rgido que voc vai alterar o dispositivo sda/sdb/sdc e etc. . No exemplo a seguir eu vou usar dois discos rgidos vazios de uma mquina virtual! Um com 8GB e outro com 1GB!Como usurio root faa:

#cfdisk /dev/sd?
Altere a interrogao conforme a letra da unidade do disco rgido a ser modificada! No caso da mquina virtual, o primeiro disco rgido era o /dev/sda! Voc ser brindado com a seguinte tela:

Use as setas do teclado para navegar nas opes do utilitrio e do disco rgido! Selecione o disco rgido desejado e tecle Enter para criar a nova tabela de partio! Ele vai te perguntar se a nova partio ser primria ou lgica, faa a sua escolha e depois defina o tamanho da partio em MB! Defini como sendo 7500MB ou 7.5GB! Depois ele pergunta se voc vai querer que a partio seja localizada no incio ou no fim do disco. Escolhi no incio! Tecle Enter na opo Iniciali. para tornar essa partio inicializvel se esta for a partio raiz! Depois navegue at a opo Tipo e tecle Enter. A escolha a opo 83, tipo de sistema de arquivos Linux! Se tudo correu bem at aqui, sua tela do cfdisk deve estar igual a essa:

Agora navegue at o espao livre restante e vamos criar a partio Swap! Novamente tecle enter e escolha entre partio primria e lgica! Defina o tamanho, no caso escolhi o mximo e depois o tipo! Dessa vez escolha a opo 82, partio Swap! Agora chegou a hora de gravar suas alteraes no disco! Navegue at a opo Gravar e digite sim seguido da tecla Enter para que as mudanas tomem efeito! Enquanto voc escolhe as alteraes, mas no mandar gravar nada, nada est perdido ou alterado! Feita a primeira parte, saia do cfdisk navegando at a opo Sair e teclando Enter! Sua tela deve estar parecida com isso:

Agora vamos repetir o passo de criar uma partio primria no segundo disco rgido que ser usado como uma partio Journal externa! Atente para o fato que essa partio deve ser primria! Se usar uma partio lgica o sistema no instalar! Execute o comando fdisk -l e veja como est a sua tabela de partio. Ela deve estar parecida com esta:

Ento fazemos como root: cfdisk /dev/sd? Onde novamente a interrogao vai depender da letra da unidade do seu disco rgido. Aqui no meu exemplo foi sdb! Crie uma partio primria com o tamanho de 1GB (1024MB) tipo Linux (83), ela no precisa ser marcada com o inicializar! Grave as alteraes no segundo disco rgido e saia do cfdisk! Observaes: Isso foi apenas um exemplo! Voc pode criar quantas parties julgar necessrio no seu disco rgido em que ficar o seu sistema! Contudo, para cada partio criada voc ter que criar um journal externo para ela se quiser alto desempenho! Quanto ao segundo disco rgido, nada impede de voc usar o restante do mesmo para guardar seus dados! Apenas use o incio dele para servir de Journal! Qual o motivo do 1GB? que com esse tamanho todo ele tem mais velocidade quando lidando com muitos arquivos dentro de muitos diretrios seja em aes de gravao ou de leitura! Se no quiser usar isso tudo, fique com 256MB ou 400MB! J esto de bom tamanho tambm! Porque eu no uso mais de 1GB? Porque no d diferena nenhuma para um usurio Desktop! S se voc tivesse uma grande massa de dados em um nico volume! Tipo um LVM! Em servidores eles podem chegar ou passar dos 8GB de Journal!

Usando o Gparted!
Se estiver usando o CD do Parted Magic, s chamar o particionador! Se estiver com um Live-CD do Ubuntu v at Sistema > Administrao > Gparted! Com o Gparted aberto escolha o disco rgido em que vai ficar o sistema e crie apenas a tabela de partio com os tamanhos definidos de acordo com a sua necessidade! No formate nada! Mas como? Na opo Sistema de arquivo escolha No formatada! Como mostrado na figura a seguir:

Veja essa nova foto como exemplo:

Na hora da partio Swap, voc escolhe que o sistema de arquivos deve ser formatado! Repita o passo da partio raiz para a partio do segundo disco rgido que ser usada como Journal externo! Lembre-se, partio primria! Finalizada a fase de criar as parties chegamos ao momento to aguardado! Vamos formatar as parties! Sempre como usurio root faa os seguintes comandos:

# mke2fs -t ext4 -O dir_index,extent /dev/sda1


Aqui criamos o sistema de arquivos ext4 com ndice de diretrios e extent nos blocos! Altere a letra e o nmero da unidade conforme for o seu caso! Sua tela deve ficar igual a essa:

Agora vamos criar uma partio Journal no segundo disco rgido!

#mke2fs -O journal_dev /dev/sdb1


Sua tela deve ficar parecida com esta:

Agora vamos dizer ao sistema de arquivos recm criado no sda1 que ele no possui mais Journal:

#tune2fs -O ^has_journal /dev/sda1


Em seguida certifique-se que tudo correu bem com o comando:

#tune2fs -l /dev/sda1
Sua tela deve ficar parecida como a tela a seguir (atente para a linha Filesystem Features, voc no deve ler a opo has_journal se tudo foi executado corretamente, isso indica que o /dev/sda1 no possui mais journal):

O ltimo passo consiste em dizer ao /dev/sda1 que o seu Journal est em outro disco rgido, no caso do exemplo, no /dev/sdb1. Mas no s isso, aqui vai outro pulo do gato! Lembre-se que existem trs tipos de gravao do Journal. No lembram? Relembrando: journal_data (o mais seguro e tambm mais lento), journal_data_ordered (o padro, melhor custo/benefcio entre velocidade e segurana), journal_data_writeback (maior velocidade a custa de segurana dos seus dados). Agora voc pode dizer ao sistema qual deles voc quer usar! Veja que em momento algum eu recomendo que voc use o seu sistema de arquivos sem journal! Se for assim use o ext2! Mesmo usando o writeback, voc no perde o journal! Perde o que voc est fazendo que no foi salvo em uma queda de energia! Por exemplo, com um documento do Writer aberto, o que foi digitado no documento e no foi salvo, perde-se com uma queda de energia! Mesmo escolhendo a opo mais segura journal_data, mas com o journal em outro disco rgido, voc ganhar um aumento em mdia de 30 a 60% nas taxas de gravao e leitura! Ou seja, seu sistema estar mais seguro e ainda mais rpido do que ao usar o writeback dentro do mesmo disco rgido! Escolhendo o writeback esse ganho pode passar da casa da dezena! Fica ao seu critrio o que escolher! Fiz o teste com o journal_data e o writeback e os ganhos so assombrosos em relao utilizao do journal dentro do mesmo disco rgido! E notem que no estou me referindo s mudanas que ainda podemos fazer com o fstab!

Ento se quiser unir maior velocidade com segurana:

#tune2fs -o journal_data -j -J device=/dev/sdb1 /dev/sda1


Se quiser a opo padro do sistema:

#tune2fs -o journal_data_ordered -j -J device=/dev/sdb1 /dev/sda1


Se quiser o mximo de desempenho custa de alguma segurana dos seus dados:

#tune2fs -o journal_data_writeback -j -J device=/dev/sdb1 /dev/sda1


Em seguida certifique-se que tudo correu bem!

#tune2fs -l /dev/sda1
Sua tela deve ficar parecida com essa (note que o has_journal voltou linha do Filesytem features se tudo correu bem):

Pronto! Agora basta clicar no cone do instalar Ubuntu e na hora que ele chamar o particionador, voc escolhe a opo especificar particionamento manual avanado! Da voc escolhe a partio ext4 e clica em Alterar e coloca o usar como em Sistema de arquivos com journaling ext4, NO marque a partio para formatao e escolhe o ponto de montagem de sua escolha! Tudo como na figura abaixo:

A partio Swap voc no muda nada! E na partio que aparece como ext2 do outro disco rgido, voc tambm no mexe em nada! Na hora de instalar o Ubuntu vai reclamar com voc que a partio raiz no foi marcada para formatao, voc ignora essa mensagem e manda bala! Se voc no errou em nada, sua instalao ocorrer normalmente. Voc no deve sentir muita diferena na instalao agora, pois voc est preso a parte mais lenta do seu PC, sua leitora/gravadora de CD/DVD! Mas aguarde at o primeiro boot! : )

* Opo 2 - Journal externo, mas dentro do mesmo disco rgido!


Este o caso se voc no tem outro disco rgido, mas possue muitos dados dentro de muitos diretrios e subdiretrios e quer acelerar um pouco as coisas! Com essa opo voc sentir uma melhora nas taxas de leitura, mas no das de gravao! Eu s usaria essa opo no caso de grande volume de dados dentro de um disco rgido tambm grande! Se esse no for o seu caso, no compensa usar essa opo! Se voc entendeu a opo 1, a opo 2 idntica! Basta apenas apontar a partio dentro do mesmo disco rgido com os comandos listados na opo 1! Ou seja, as letras da unidade continuaro as mesmas, o que vai mudar so os nmeros! Exemplo: sda1/sda2/sda3 e assim por diante! Voc pode criar uma partio para o journal no to grande tambm, de 256MB ou 400MB! Voc decide!

* Opo 3 - Journal dentro do mesmo sistema de arquivos, mas aumentado alm do tamanho padro!
Como eu disse antes, por padro o ext4 calcula o tamanho do Journal automaticamente de acordo com o tamanho do seu sistema de arquivos! Em geral ele fica em torno de 128MB! Mas se voc quiser aumentar as taxas de leitura, voc pode aumentar o tamanho do Journal interno! Contudo, existe um limite! Voc no pode passar dos 400MB! Para a grande maioria dos mortais, 256MB j est bom demais! Um journal maior dentro do mesmo sistema de arquivos sobrecarrega as aes de gravao e o seu processador! Portanto, se no tiver um bom processador eu tambm no recomendo essa alterao! Voc v logo que na hora de instalar programas algo fica diferente! A barrinha de progresso no se move mais como numa instalao padro! Ela demora mais para encher, mas na hora de ler os arquivos fica mais rpido! Vocs viram essa opo nmero trs em ao no tpico do Kernel Ominslash! Foi com o vdeo do meu PC com kernel BFQ do Hqxriven! Ali eu estou usando um journal interno de 400MB para acelerar as taxas de leitura! Isso tudo vale para o ext4! Outros sistemas de arquivos tambm se lanam deste mesmo recurso, o caso do XFS e do JFS! Os ganhos no JFS so notveis e ele no sofre da perda nas taxas de gravao! A primeira parte quanto ao uso do cfdisk ou do gparted so iguais em relao opo 1! Defina a sua tabela de partio normalmente para o seu disco rgido. Na hora da formatao que o comando muda! Como root execute: Se quiser um journal de 256MB:

#mke2fs -t ext4 -J size=256 -O dir_index,extent /dev/sda1


Se quiser um journal de 400MB tamanho mximo permitido para um journal interno:

#mke2fs -t ext4 -J size=400 -O dir_index,extent /dev/sda1


Voc pode estar se perguntando, mas galactus, e o data writeback na opo 3? possvel? Sim possvel. Mas voc tem que formatar primeiro e dizer ao sistema de arquivos que quer mudar a gravao do journal depois! Assim:

#tune2fs -o journal_data_writeback /dev/sda1


Depois tudo igual opo 1 em relao instalao!

* Opo 4 - Deixar as opes padres do Journal mas melhorando o acesso ao sistema de arquivos!
Voc no quer se incomodar com o tamanho e localizao do Journal, mas gostaria de usar as opes que aceleram o acesso ao seu sistema de arquivos! Ento execute o comando:

#mke2fs -t ext4 -O dir_index,extent /dev/sda1


Pronto! Agora s seguir com sua instalao como mostrado na opo 1!

- Desvantagens do Journal Externo! Quais seriam as desvantagens ou problemas ao se utilizar de um Journal externo em outro disco rgido? 1- Se o disco rgido em que est o journal externo for acidentalmente desligado, voc no poder iniciar o seu sistema, mas nenhum dado estar perdido! Nem mesmo com um Live-CD voc ter acesso aos seus dados! Voc precisar do Journal externo para ler os seus dados! Basta ento religar o disco rgido em questo na mesma ordem em que tudo foi configurado que tudo volta ao normal! 2- Se o disco rgido em que est o journal externo sofrer uma pane lgica ou fsica voc tambm no poder acessar os seus dados e o que voc estiver fazendo no momento da pane pode estar perdido! Como ento eu volto a ter acesso aos meus dados? Simples, substitua o disco com defeito (se for este o caso), formate uma nova partio journal, repita os comandos onde voc diz que o disco rgido no possui Journal e em seguida mostre a ele onde est o novo journal externo! Reinicie o sistema normalmente, este primeiro reinicio com o novo journal ser mais demorado, mas ele volta a ligar o sistema com os seus dados j gravados antes da pane intactos! 3- Em alguns casos, ao se colocar um novo disco rgido no sistema, aumentando a capacidade de dados do mesmo ou se voc quiser fazer uma cpia dos dados de outro disco rgido, o seu sistema pode no iniciar! No estou me referindo a um disco rgido externo USB! Isto pode acontecer mais facilmente nos seguintes casos: a) Atente para o fato que voc ter que manter a ordem original do disco em que est o seu sistema e o journal externo! Portanto se colocar um disco rgido a mais alterando a ordem de boot, seu sistema no inicializar! b) Se usar um kernel no oficial no seu Ubuntu como o meu caso onde utilizo o Kernel Omnislash! Neste caso use o Kernel oficial do Ubuntu! c) Ele no inicializa mesmo com o kernel oficial do Ubuntu! Neste caso, voc ter que usar um Live-CD para fazer a cpia dos dados! Ainda no tenho uma soluo realmente satisfatria para este caso! Se algum souber como resolver, por favor nos mostre como! Nota: Independentemente do seu sistema de arquivos e das modificaes que voc possa fazer no seu sistema, sempre faa backup!

- Segunda Parte Alteraes realizadas aps instalao!


Voc j instalou o seu Ubuntu ou qualquer uma das suas variantes e agora quer melhorar ainda mais o desempenho do seu sistema! A boa notcia que ainda podemos realizar algumas alteraes para acelerar o sistema de arquivos que no envolvem formatao! So elas:

1- Adicionar o ndice de diretrios ao seu sistema de arquivos!


Esta dica para quem j tem o seu Ubuntu particionado de maneira tradicional e no colocou essa opo na hora de formatar! De posse de um Live-CD do Ubuntu, de o boot normalmente e dentro do terminal como root faa fdisk -l para descobrir como est a sua tabela de partio. Depois execute o comando com a partio desmontada:

#tune2fs -O dir_index /dev/sdxy


Onde o xy vai depender da ordem encontrada na sua tabela de partio! Lembre-se, o comando tune2fs deve ser executado com a partio desmontada!

2- Usar o Journal Writeback para acelerar o seu sistema de arquivos!


Voc j formatou o seu Ubuntu de maneira padro e no quer formatar tudo novamente, contudo gostaria de usar o modo Writeback do Journal para maior velocidade! Como root faa:

#fdisk -l
Ele vai listar a tabela de partio do seu sistema! Sabendo qual partio alterar execute como root:

#tune2fs -o journal_data_writeback /dev/sdxy


Onde o xy vai depender da sua tabela de partio! Lembre-se, o comando tune2fs deve ser executado com a partio desmontada!

3- Realizar alteraes no seu fstab para montar o sistema de arquivos com maior velocidade!
a) Se usar o Journal externo no h necessidade de alterar nada no fstab por causa do journal. b) J tendo alterado a forma de gravar do journal para writeback com o journal interno, seja na formatao inicial ou depois dela, preciso alterar o seu fstab e o grub2 para que tudo corra bem! Dentro do seu sistema, faa Backup do seu fstab se no estiver seguro do que vai fazer. As dicas a seguir so mais indicadas para sistemas ligados a um No-Break ou Notebooks usados com sua bateria!

Como root use o seu editor de arquivos preferido, como sugesto temos: No Ubuntu

#gedit /etc/fstab
No Kubuntu

#kedit /etc/fstab
Para qualquer variante do Ubuntu

#nano /etc/fstab
Mas o que voc pode alterar alm do writeback? Temos as seguintes opes entre tantas: noatime - Desativa o registro de tempo de acesso do arquivo, que basicamente uma operao de gravao que deve ser evitada em SSDs. Trocando em midos, lembram quando vocs clicam com o boto direito do mouse para acessar as propriedades de um arquivo, l contm a data de gravao e a data em que o arquivo foi acessado! Com essa opo o sistema no registrar mais quando voc acessou o arquivo, apenas quando voc modificar o mesmo! Essa opo no envolve risco de perda de dados! barrier=0 - Esse assunto complexo e j levou a muita discusso entre os desenvolvedores, mas vou procurar resumir para vocs. O "barrier" certifica-se que tudo esteja em ordem entre o cache do disco rgido e a sincronizao de dados e metadados antes da gravao do journal! Com a opo "0" essa certificao deixa de existir! Barrier=1 atrasa muito o desempenho do disco! No nada seguro voc usar a opo "Barrier=0" no ext4 em um sistema sem No-break ou em Notebooks sem bateria! Por curiosidade, o ext3 usa o barrier=0 por padro! data=writeback - O writeback oferece o melhor desempenho entre as formas de gravao do Journal, mas deixa seu sistema mais vulnervel a perda de dados ou corrupo dos mesmos! nobh (No buffer heads) - Quando um bloco armazenado na memria (por exemplo, aps uma leitura ou uma gravao pendente), ele armazenado em um buffer. Cada buffer associado com exatamente um bloco. O buffer serve como o objeto que representa um bloco de disco na memria. Lembre-se que um bloco composto por um ou mais setores, mas no mais do que uma pgina de tamanho. Portanto, uma nica pgina pode conter um ou mais blocos na memria. Com essa opo ativa no fstab, no existe mais essa associao de pginas e buffers, seu consumo de memria RAM pode inclusive diminuir! A opo nobh implica no uso do Writeback! commit=100 - O ext4 pode ser configurado para sincronizar dados e metadados a cada "n" segundos! O valor padro 5 segundos. Isso significa que se voc sofre uma queda de energia, voc ira perder apenas os ltimos 5 segundos de trabalho (se o seu sistema de arquivos no for danificado, graas ao Journaling). O valor padro ou qualquer valor abaixo dele iro afetar o desempenho para pior, mas isso ser bom para a integridade dos dados. Colocar um valor igual a zero ter o mesmo efeito do valor padro, 5 segundos. Aumentar esse valor melhorar o desempenho! Um valor igual a 60 j est bom o bastante para discos rgidos de pratos magnticos. Valores superiores a esse, como o igual a 100 do exemplo, so mais indicados para discos SSD! nouser_xattr - Vamos logo ao ponto, com essa opo ativa seus dados no tero mais a permisso, data de gravao/criao e acesso registrados nas informaes dele! Ou seja, todas essas aes, que so de aes de gravao no disco, no sero mais realizadas. Isso aumenta o desempenho do sistema e a vida til dos SSDs. Entre eu no aconselho a vocs usarem essa opo! Quando vocs precisarem acessar os seus dados de um Live-CD por exemplo, ou remover o disco rgido para usar em outra mquina, ser surpreendido por um monte de cadeados nos seus dados, negando uma srie de atividades ao seu sistema!

Exemplo de um fstab padro aps instalao do Ubuntu:


[...] UUID=d818ddf9-ff01-e21a-a67d-3ceab43a9e2b / ext4 relatime,errors=remount-ro 0 1 UUID=0d339122-74e0-e0ea-805a-7879b1fa3172 /home ext4 relatime 0 2 [] Vou deixar como exemplo as opes que uso no meu fstab quando uso journal interno no mesmo sistema de arquivos (notem que no h espao entre as opes, apenas vrgulas): [...] UUID=d818ddf9-ff01-e21a-a67d-3ceab43a9e2b noatime,barrier=0,data=writeback,nobh,commit=60 0 1 UUID=0d339122-74e0-e0ea-805a-7879b1fa3172 noatime,barrier=0,data=writeback,nobh,commit=60 0 2 [...] / /home ext4 ext4

A opo do arquivo anterior:errors=remount-ro pode ser removida com segurana pois padro do sistema! Agora chegou o momento de alterar o GRUB2! preciso alterar o Grub para que todos os kerneis instalados rodem com o data=writeback! Isso no caso de voc usar o journal interno! No mude nada se usar o journal externo! Como root dentro do seu sistema mesmo, altere o arquivo /etc/default/grub: - Ubuntu

#gedit /etc/default/grub
- Kubuntu

#kedit /etc/default/grub
- Outras variantes

#nano /etc/default/grub
Ao final do arquivo insira a seguinte linha:

rootflags=data=writeback
Depois rode um:

#update-grub

Nota! Ao realizar uma atualizao do Ubuntu ou qualquer variante dele nos pacotes do grub2, o sistema vai reclamar com voc que o arquivo do grub2 no original e o que voc gostaria de fazer! Mande-o instalar a nova verso sobre a verso alterada e depois da atualizao volte a realizar o procedimento descrito logo acima quanto ao rootflags=data=writeback no grub2! At o momento em uma queda de energia, eu perdi o que havia inserido a mais numa planilha do Calc sem ter salvado o arquivo! No mais no houve corrompimento de dados! Mas seu sistema fica mais inseguro com isso tudo no seu fstab!

4- Otimizar e compactar os diretrios!


Se voc um instalador compulsivo de programas ou tem muitos arquivos espalhados em vrios diretrios, voc pode melhorar um pouco mais as coisas no que se refere ao desempenho otimizando os diretrios! Faa isso com o seguinte comando:

#fsck -t ext4 -f -D /dev/sdxy


O comando acima deve ser realizado como root na partio alvo DESMONTADA! Use um Live-CD ou o modo de recuperao do seu sistema para isso! O que ele faz otimizar os diretrios, reindexando e comprimindo os mesmos se possvel! timo de ser usado depois de voc ter finalizado toda a instalao do seu sistema, digo de tudo mesmo, codecs e programas afins que voc usa! Tambm bom de ser feito se voc continuar a inchar o seu sistema com dados em muitos diretrios! Porque alterei o comando em relao verso anterior do tutorial? Simples, descobri que o comando e2fsck -D s realizava a otimizao dos diretrios em sistemas no limpos! Com o fsck -f -D ele obriga a otimizao mesmo em um sistema limpo!

5- Tornar o seu disco rgido mais rpido s requisies do seu sistema!


Antes voc precisa saber sobre as caractersticas tcnicas do seu disco rgido. que vamos habilitar dois parmetros dele que vm desabilitados por padro. A gravao em cache do mesmo e faz-lo funcionar a toda velocidade desde o incio da requisio! Para isso execute o comando como root:

#hdparm -I /dev/sdX
Onde o X vai depender do disco rgido que voc quer tunar! O comando acima faz um relatrio detalhado sobre o seu disco rgido, listando todas as caractersticas tcnicas do mesmo! Procure por duas informaes importantes: Write Cache Enable e o Acoustic Management!

O seu sistema pode estar montado sem problemas. Ento faa como root:

#hdparm -W1 -M254 /dev/sdX


O "W" deve ser maisculo mesmo! NO erre no "W"! O "w" minsculo vai detonar o seu sistema! Ento, o -W1 ativa a gravao no cache do seu disco e o -M254 fazem com que o disco trabalhe mais barulhento (alta rotao inicial), o padro 128, o mais silencioso (baixa rotao inicial)! Se o seu disco rgido no suportar esses comandos ele vai dar erro na sada do comando! Se tudo correr bem ele vai avisar que tudo foi ligado (On)! No se preocupe que no h risco de danos ao disco rgido ou ao seu sistema! Com essas duas mudanas voc pode ganhar em mdia de 2 a 4MB/s a mais nas taxas de leitura do seu disco rgido! s fazer por trs vezes e sem nada sendo usado no sistema o comando e comprovar o que eu digo:

#hdparm -Tt /dev/sdX

Se tudo correu bem, agora voc vai querer colocar esses comandos de forma permanente! Sim, pois s em executar esse comando no terminal no o torna permanente, ele volta ao estado padro a cada reinicializao do sistema! Ento o que fazer? Ta na mo, coloque o comando no arquivo /etc/rc.local antes do exit = 0 (se tiver isso no seu arquivo)!

#gedit /etc/rc.local hdparm -W1 -M254 /dev/sdX


Voc pode colocar quantos discos rgidos voc tiver no seu sistema que suportem esses comandos, cada disco rgido deve ter a sua linha de comando! O comando dado para o disco rgido e no sua partio! No reinventei a roda para escrever este tutorial. Isso tudo fruto de leitura e pesquisa! Referncias para este tuto: http://www.vivaolinux.com.br/dica/Tunando-o-sistema-de-arquivos-entendendo-o-journal-do-EXT3 http://www.ibm.com/developerworks/linux/library/l-anatomy-ext4/index.html http://lwn.net/Articles/203915/ http://lwn.net/Articles/283161/ http://blog.loxal.net/2009/04/tuning-ext4-for-performance-with.html http://ubuntuforums.org/showthread.php?t=1396128 http://linux-kernel-prog.net/Novell.PressLinux.Kernel.Development.Second.Edition/0672327201/ch13lev1sec2.html http://manpages.ubuntu.com/manpages/jaunty/man8/e2fsck.static.8.html http://www.vivaolinux.com.br/artigo/hdparm-Tire-o-maximo-do-seu-HD http://www.vivaolinux.com.br/dica/hdparm-Aumente-a-velocidade-do-HD Espero ter ajudado!

You might also like