http://www.zago.eti.br/hdparm.txt FAQ com mensagens relacionadas a hdparm e UDMA Use CTRL+F para refinar a pesquisa. Linha de: **************** separa mensagens ou tópicos. ******************************************************** Zago http://www.zago.eti.br/menu.html FAQ e artigos sobre Linux ******************************************************** veja neste diretório (site) - FAQ hd.txt Veja apostila sobre hdparm em: http://www.zago.eti.br/hdparm-apostila.txt ******************************************************* http://brlinux.linuxsecurity.com.br/artigos/dicas_hdparm.htm http://www.piterpunk.hpg.ig.com.br/artigos/hdparm.html http://www.vivaolinux.com.br/dicas/verDica.php?codigo=814 http://linux.oreillynet.com/pub/a/linux/2000/06/29/hdparm.html em inglês. em /etc/sysconfig/ tem um arquivo hdparm sobre configurações do HD. ******************************************************* Como root, digite o comando: hdparm -v /dev/hda (supondo que seu HD seja hda) Isso vai mostrar a configuracao atual. Agora faca hdparm -d 1 /dev/hda Coloca este comando no final do arquivo /etc/rc.d/rc.sysinit. assim carrega em toda inicialização. ******************************************************* CL8 [root@zago /root]# service hdparm status /dev/hda: multcount = 0 (off) I/O support = 1 (32-bit) unmaskirq = 1 (on) using_dma = 0 (off) [root@zago /root]# ******************************************************* hdparm Além de configurações do HD, também fornece diversas informações do HD, com a opçõa "-i" de forma reduzida e de forma mais detalhada com "-I", veja o resultado dos comandos: hdparm -i /dev/hda hdparm -I /dev/hda [root@servsamba root]# hdparm -i /dev/hda /dev/hda: Model=Maxtor 6Y120L0, FwRev=YAR41BW0, SerialNo=Y3M6S9KE ---corta--- Exemplo de resultado no SUSE 10.1 hdparm -i /dev/hda /dev/hda: Model=ST340014A, FwRev=3.06, SerialNo=5JX12L2B Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4 BuffType=unknown, BuffSize=2048kB, MaxMultSect=16, MultSect=16 CurCHS=65535/1/63, CurSects=4128705, LBA=yes, LBAsects=78165360 IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5 AdvancedPM=no WriteCache=enabled Drive conforms to: ATA/ATAPI-6 T13 1410D revision 2: ATA/ATAPI-1 ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 * signifies the current active mode ******************************************************* PARA USAR OU VER ESTATUS DE HD UDMA De uma lida no man hdparm ou hdparm -h: /sbin/hdparm -i /dev/hda (informações) /sbin/hdparm -c /dev/hda (status) /sbin/hdparm -d /dev/hda (status "using_dma" ) /sbin/hdparm -d1 /dev/hda (habilita "using_dma") /sbin/hdparm -d0 /dev/hda (desabilita "using_dma") /sbin/hdparm -T -t /dev/hda (Timing buffer) ******************************************************* Como parar o winchester, deixando de alimentá-lo eletricamente? Para o winchester hda: hdparm -Y /dev/hda ------------- ******************************************************* velocidade do HD execute o comando hdparm -c1 -d1 -k1 -m16 -a128 /dev/hdaX (substitua o "X" pela sua particao linux : 5 para hda5 por exemplo. ******************************************************* ******************************************************* [root@servsamba root]# whereis hdparm hdparm: /sbin/hdparm /usr/share/man/man8/hdparm.8.gz [root@servsamba root]# rpm -qif /sbin/hdparm Name : hdparm Relocations: (not relocatable) --corta-- Description : Este é um utilitário para ajustar parâmetros do disco rígido. Ele é útil para melhorar a performance e para fazer coisas como diminuir a rotação do disco para conservar energia. Páginas do manual: man hdparm ******************************************************* PARA USAR OU VER ESTATUS DE HD UDMA ******************************************************* > Alguém já utilizou o hdparm com partição reiserfs? É necessário? O hdparm não tem nada a ver com o sistema de arquivos usado. Ele é usado para configurar o funcionamento do HD em si. O hdparm normalmente não é necessário, mas pode melhorar o rendimento do HD. Mas pode detoná-lo também, se mal configurado :) ******************************************************* GNU/Linux: Otimização do Acesso a Disco --------------------------------------------------------------------- Colaboração: Marcelo de Gomensoro Malheiros O Marcelo me deu uma dica valiosissima para otimizar o tempo de acesso a disco em meu computador com Conectiva GNU/Linux. Antes da dica porém cumpre lembrar que o comando hdparm deve ser usado com MUITO cuidado, pois algumas opções, se ativadas, podem corromper os dados em seu disco. Na descrição a seguir inclui apenas aqueles parâmetros que podem ser alterados com segurança e ainda assim garantir um ganho de performance substancial, como vocês poderão constatar. Para mais informações sobre o significado dos parâmetros listados, consulte a manpage do comando hdparm com o comando "man hdparm". Segue abaixo a transcrição do que fiz em minha máquina com algumas observações minhas. O comando hdparm invocado tendo como parâmetro apenas a unidade de disco que se deseja otimizar fornece os parâmetros de configuração adotados: [root@paris /root]# hdparm /dev/hda /dev/hda: multcount = 0 (off) I/O support = 0 (default 16-bit) unmaskirq = 0 (off) using_dma = 0 (off) keepsettings = 0 (off) nowerr = 0 (off) readonly = 0 (off) readahead = 8 (on) geometry = 1245/255/63, sectors = 20005650, start = 0 Como se pode ver acima, a maioria das opções de otimização estão desativadas (off). O comando a seguir realiza testes de leitura no disco e nos oferece ao final a taxa de transferência obtida: [root@paris /root]# hdparm -t /dev/hda /dev/hda: Timing buffered disk reads: 64 MB in 16.02 seconds = 4.00 MB/sec A taxa de transferência foi de 4MB/s, correspondente ao default do sistema. Vamos então ativar o parâmetro "I/O support": [root@paris /root]# hdparm -c 1 /dev/hda /dev/hda: setting 32-bit I/O support flag to 1 I/O support = 1 (32-bit) Vejamos então que melhoria a alteração deste parâmetro trouxe ao sistema: [root@paris /root]# hdparm -t /dev/hda /dev/hda: Timing buffered disk reads: 64 MB in 9.50 seconds = 6.74 MB/sec Já obtivemos uma boa melhora, o tempo de acesso a disco caiu quase que pela metade. Alteremos agora o parâmetro "using_dma":] [root@paris /root]# hdparm -d 1 /dev/hda /dev/hda: setting using_dma to 1 (on) using_dma = 1 (on) A nossa configuração fica então como: [root@paris /root]# hdparm /dev/hda /dev/hda: multcount = 0 (off) I/O support = 1 (32-bit) unmaskirq = 0 (off) using_dma = 1 (on) keepsettings = 0 (off) nowerr = 0 (off) readonly = 0 (off) readahead = 8 (on) geometry = 1245/255/63, sectors = 20005650, start = 0 Façamos outro teste para vermos o ganho obtido: [root@paris /root]# hdparm -t /dev/hda /dev/hda: Timing buffered disk reads: 64 MB in 5.19 seconds = 12.33 MB/sec O tempo de acesso a disco passou de 4MB/s para 12.33MB/s, uma melhora substancial. Para ativar o comando hdparm permanentemente, utilize, em sistemas Conectiva Linux e outros derivados do RedHat, o comando ntsysv. Altere antes os parâmetros que se deseja ativar no arquivo /etc/sysconfig/hdparm. Este arquivo, no meu computador, tem a seguinte forma: ### IDE devices ### # /dev/hda - primary master # /dev/hdb - primary slave # /dev/hdc - secondary master # /dev/hdd - secondary slave DEVICE="/dev/hda /dev/hdb /dev/hdc /dev/hdd" ### Status ### # 0 - disable # 1 - enable STATUS="1 0 0 0" ### Multiple sector mode (aka IDE Block Mode) ### # Common values: 0, 2, 4, 8, 16 (fast) MULTCOUNT="-1 -1 -1 -1" ### IDE 32-bit I/O support ### # 0 - 16-bit (default) # 1 - 32-bit (fast) # 2 - 16-bit # 3 - 32-bit w/ special sync (fast/safe) IO_SUPPORT="1 1 1 1" ### Interrupt-unmask ### # -1 - disable # 0 - safe # 1 - fast UNMASKIRQ="-1 -1 -1 -1" ### Using DMA ### # NOTE: only works with a few combinations of drives and interfaces # which support DMA and which are known to the IDE driver # -1 - disable # 0 - safe # 1 - fast USING_DMA="1 1 1 1" --------------------------------------------------------------- As mensagens da lista Dicas-L são veiculadas diariamente para 15087 assinantes. Para sair ou assinar a lista Dicas-L, consulte o documento que se encontra em http://www.Dicas-l.com.br/FAQ.html. A redistribuição desta e outras mensagens da lista Dicas-L pode ser feita livremente, deste que o conteúdo, inclusive esta nota, não sejam modificados. --------------------------------------------------------------- ******************************************************* From: To: Sent: Thursday, April 11, 2002 12:15 PM Subject: Re: (linux-br) Como ativar UDMA no linux Fiquei um pouco desconfiado... -1 desabilitado (OK) 0 seguro (OK) 1 rápido (Mais ou menos OK) Há algum risco em usar o modo fast??? Aquele "safe" me levantou suspeitas sobre o "fast"... no /etc/sysconfig/hdparm ### Interrupt-unmask ### # -1 - disable # 0 - safe # 1 - fast UNMASKIRQ="-1 -1 -1 -1" Ps. Alguém sabe qual é o script que processa esse arquivo???? Edite o arquivo /etc/rc.d/init.d/hdparm ou Edite o arquivo /etc/sysconfig/hdparm Ele é auto-explicativo. ******************************************************* De: Arnaldo Carvalho de Melo Para: Piter Punk Cc: Adriano Palmieri , LINUX Assunto: Re: (linux-br) hdparm... Data: 14 Feb 2003 00:41:35 -0200 Em Thu, Feb 13, 2003 at 04:55:50PM -0200, Piter Punk escreveu: > Adriano Palmieri wrote: > >Minha pergunta é: Toda distribuição de linux vem com o DMA desabilitado? > >Nenhuma distribuição detecta os parametros do H.D e se auto-configura? > > Mais ou menos... todas tentam. Mas muitas vezes é preciso um pouco de A afirmação não está incorreta, mas não está clara: quem habilita ou não, e não é uma questão de tentativa, mas de white list/black list de combinações de controladoras ATA com discos, é o kernel. > ginástica para deixar as coisas de acordo. Se bem que a maior parte das > máquinas que instalei esses tempos o DMA foi ativado "por default". > > Deixando por minha conta coisas como unmasking irq, multcount, readahead, > etc... um pouco de tweak manual não mata ninguém -;) :-) E compensa, ativar por default dma na distribuição é algo _bem_ arriscado, por isto não tentamos, mas o Conectiva Linux facilita um pouco, fornecendo um serviço, a ser ativado com: chkconfig --add hdparm e tem o arquivo /etc/sysconfig/hdparm, para, em conjunto com o comando acima, que precisa ser executado somente uma vez, tornar a ativação de DMA e dos outros parâmetros do hdparm permanente, i.e. sempre será feita durante o processo de inicialização da máquina (o "boot"). - Arnaldo ******************************************************* De:  2a. Vara Federal de Caxias do Sul Para:  Valdemir Ap. Gherth , linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)ultra dma Data:  Mon, 4 Aug 2003 13:21:12 -0300 Em Seg 04 Ago 2003 10:24, parece que Valdemir Ap. Gherth escreveu: >   Como posso ativar ultra DMA no meu disco # hdparm -d 1 /dev/hda Para conferir, digite # hdparm /dev/hda Para deixar habilitado como padrao, voce precisa editar o arquivo /etc/syconfig/hdparm Altere as secoes como no exemplo abaixo: ### IDE devices ### #  /dev/hda - primary master #  /dev/hdb - primary slave #  /dev/hdc - secondary master #  /dev/hdd - secondary slave #  /dev/hde - tertiary master #  /dev/hdf - tertiary slave #  /dev/hdg - quaternary master #  /dev/hdh - quaternary slave DEVICE="/dev/hda /dev/hdb /dev/hdc /dev/hdd /dev/hde /dev/hdf /dev/hdg /dev/hdh" ### Status ### #  0 - disable #  1 - enable STATUS="1 0 0 0 0 0 0 0" Capicci? O "1" vai habilitar o hdparm para o device "/dev/hda". Voce tem que adaptar isso 'as tuas necessidades. Agora, para habilitar o DMA, altere a seguinte secao: ### Using DMA ### # NOTE: only works with a few combinations of drives and interfaces # which support DMA and which are known to the IDE driver # -1 - disable #  0 - safe #  1 - fast USING_DMA="1 -1 -1 -1 -1 -1 -1 -1" Urubuserve que na minha configuracao, apenas o primeiro "1" habilita o DMA para a primeira unidade, a "/dev/hda". Isso serve tambem para os outros ajustes que voce vai encontrar nesse mesmo arquivo. Agora so' falta configurar o inicio automatico do servico hdparm. Voce faz isso com o comando: # chkconfig --level 35 hdparm on Ou simplesmente abrindo o ntsysv e marcando a opcao hdparm. Era isso, eu acho! Regis -- 2a. Vara Federal de Caxias do Sul rscax02@jfrs.gov.br (54) 218-3226 ******************************************************* De:  Gustavo Vasconcelos Para:  Severino Guilherme Cc:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Erro de aceso a disco Data:  Fri, 22 Aug 2003 12:51:34 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Talvez você esteja com o DMA habilitado (o RedHat faz isso por padrão), mas esteja usando um cabo IDE antigo (sem ser o de 80 vias). Desligue o DMA usando hdparm -d 0 /dev/hda0 Também será necessário ceditar o /etc/sysconfig/harddisks e adicionar a linha: USE_DMA=0 []'s Gustavo Severino Guilherme wrote on 21-08-2003 16:59: | Senhores, | | | Alguem sabe o porque ocorre e o que quer dizer a mensagem de erro abaixo | qdo. rodando em RedHat com dois discos, IDE0 e IDE1. So' ocorre na IDE1. - -- ******************************************************* De:  zgrp unknow Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Erro de aceso a disco Data:  Fri, 22 Aug 2003 18:32:11 -0300 (ART) Opa, Vc mecheu no hdparm !? Ou essa isntalação é recente ? hehehehe Tente desabilitar o DMA do kernel, ou coloque o seguinte parametro no grub.conf: ide=nodma Na inicialização da maquina pra teste vc tmb pode passar o parametro "ide=nodma" fazer o teste. :) T+ ******************************************************* De:  Claudio Polegato Junior Para:  Fabio F. Silveira Cc:  Lista de Linux Assunto:  (linux-br)Re: Multitarefa Preemptiva e Gerenciamento de Energia: desconfianças... Data:  Wed, 4 Aug 2004 17:04:17 -0300 (BRT) Olá   Veriricando esta linha >   BuffType=unknown, BuffSize=0kB, MaxMultSect=16, MultSect=off habilite o buffer do HD e leitura de setores multiplos, que mostra todos desabilitados. >   unmaskirq    =  0 (off) Habilitar unmaskirq também melhora o desempenho. Veja ainda as opções -M, -B e -S, isso pode ajudar. Para saber mais, leia man hdparm. Do mais, ajuste também os parâmetros para o CD-ROM, tem alguns específicos, mas não me lembro de cabeça. Sei que o Kurumin tenta automaticamente ajustar os melhores, mas como eu disse, tenta... []'s Claudo ******************************************************* De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Fita dat Data:  Tue, 10 Aug 2004 20:01:36 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Edilson Santos wrote: >Caros, > >Uso uma fita dat travan e ela usa o device hdf. >Digitei dmesg no console e vi a seguinte mensagem: >hdf: DMA disabled > >Como faço para abilitar a dma? hdparm -d 1 /dev/hdf Isto é, se DMA for suportado para esse dispositivo. - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info     ICQ UIN: 1967141   PGP/GPG: 0x6EF45358; fingerprint: ******************************************************* De: alexmota@globo.com Para: Edmarcos Antonio de Souza Cc: linux-br@bazar2.conectiva.com.br Assunto: Re: (linux-br)Software para auditoria de hardware Data: Wed, 27 Apr 2005 15:55:30 -0300 Sim, já tentei e já peguei várias informações, mas ele não dá informações completas, como por exemplo o HD sendo usado, BIOS da placa mãe, etc. Eu já usei os seguintes comandos: lspci para obter informações das interfaces; cat /proc/cpuinfo para obter informações do processador; hdparm -i -I /dev/hda para obter informações sobre o HD (nem sei se vai dar para usar depois em um HD scsi); rpm -qa para obter todos os programas instalados por RPM; Eu preciso agora saber qual é a BIOS da placa-mãe, a marca da placa-mãe, o modelo da placa-mãe, etc. Alguém sabe de algo para isso? '>'já tentou lspci -vv ? ******************************************************* De: Djames Suhanko Para: linux-br@bazar2.conectiva.com.br Assunto: Re: (linux-br)Verificando que o HD realmente usa DMA. Data: Thu, 14 Jul 2005 14:03:37 -0300 Olá ! Isso deve lhe ajudar. Esse comando deve ser executado como root. #hdparm -d /dev/hda Deve retornar algo como: /dev/hda: using_dma = 1 (on) Para mais: hdparm --help Abraços ! Em Qui 14 Jul 2005 12:34, Miguel Da Silva escreveu: > ...Pretendo reiniciar o computador com um CD do KNoppix e então verificar se o > HD está recalmente usando DMA ou não. > Sugestões? ******************************************************* De: Alceu R. de Freitas Jr. Para: Linux BR Assunto: Re: (linux-br)Verificando que o HD realmente usa DMA. Data: Thu, 14 Jul 2005 13:56:55 -0300 (ART) --- Miguel Da Silva escreveu: > Senhores, estou com o seguinte problema... necessito > saber se um HD está > realmente fazendo uso do recurso DMA. O HD é um > Samsung SV2044D e > supostamente ele aceita Ultra DMA. Habilitei essa > opção no SETUP da máquina, > porém o infeliz do Windows (que só server para > atrapalhar) me diz que o modo > de transferência que está sendo usado é o PIO. Acho que o sistema operacional deve fazer uso do recurso... não basta habilitar na BIOS. > Pretendo reiniciar o computador com um CD do KNoppix > e então verificar se o > HD está recalmente usando DMA ou não. > > Sugestões? Sim. Use o programa hdparm e use-o para forçar uso de DMA. É bem simples fazer isso, aqui tem um tutorial: http://www.geocities.com/glasswalk3r/linux/hdparm.html []'s Alceu Rodrigues de Freitas Junior -------------------------------------- glasswalk3r@yahoo.com.br http://www.imortais.cjb.net ----------------------------------------------------------------------- A well-used door needs no oil on its hinges. A swift-flowing stream does not grow stagnant. Neither sound nor thoughts can travel through a vacuum. Software rots if not used. These are great mysteries -- The Tao Of Programming, 5.1 ******************************************************* De: Regis Ubiratam Candeia Para: linux-br@bazar2.conectiva.com.br Assunto: Re: (linux-br)Verificando que o HD realmente usa DMA. Data: Fri, 15 Jul 2005 10:02:52 -0300 Historiadores acreditam que em Qui 14 Jul 2005 12:34, Miguel Da Silva escreveu: > Senhores, estou com o seguinte problema... necessito saber se um HD está > realmente fazendo uso do recurso DMA. O HD é um Samsung SV2044D e > supostamente ele aceita Ultra DMA. Habilitei essa opção no SETUP da > máquina, porém o infeliz do Windows (que só server para atrapalhar) me diz > que o modo de transferência que está sendo usado é o PIO. > > Pretendo reiniciar o computador com um CD do KNoppix e então verificar se o > HD está recalmente usando DMA ou não. > > Sugestões? > Habilita o hdparm # hdparm -d 0 /dev/hda Depois faz o seguinte comando # hdparm -tT /dev/hda Vai te mostrar a taxa de transferência Depois desabilita o DMA # hdparm -d 0 /dev/hda E repete o comando para verificar a taxa de transferencia # hdparm -tT /dev/hda Mude o "/dev/hda" para a unidade que quer conferir, se você possui mais que uma -- Regis Ubiratam Candeia Diretor de Secretaria Vara Federal de Caxias do Sul *******************************************************