Linux e Unix Test Disk I / O Performance With dd Command

como posso usar o comando dd em um Linux para testar o desempenho I/O da minha unidade de disco rígido? Como posso verificar o desempenho de um disco rígido, incluindo a velocidade de leitura e escrita em um sistema operacional Linux? Como posso usar o comando dd no Linux I / O performance test?
pode utilizar os seguintes comandos num sistema semelhante ao Linux ou ao Unix para um teste de desempenho sequencial simples de E/S:

  • comando dd : Ele é usado para monitorar o desempenho de escrita de um dispositivo de disco em um sistema Linux e Unix-like.
    Tutorial detalhes
    Dificuldade Intermediário (rss)
    privilégios de Root Sim
    Requisitos dd
    Tempo 15m
  • hdparm de comando : é utilizado para obter e definir os parâmetros de disco rígido, incluindo o teste de leitura e o desempenho do cache de um dispositivo de disco em um sistema baseado em Linux.

neste tutorial irá aprender a usar o comando dd para testar o desempenho do disco I. O.

Use o comando dd para monitorizar o desempenho de leitura e escrita de um dispositivo de disco:

o comando dd é útil para descobrir o desempenho sequencial de E/S.

Understanding dd command options

In this example, i’m using RAID-10 (Adaptec 5405Z with SAS SSD) array running on a Ubuntu Linux 14.04 LTS server. A sintaxe básica é a seguinte para descobrir a transferência do servidor:

saída de amostras:

Fig.01: Ubuntu Linux Server with RAID10 and testing server throughput with dd

Please note that one gigabyte was written for the test and 135 MB / s was server throughput for this test. Em que,

  • se = /dev / zero (se=/dev/input.ficheiro): o nome do ficheiro de entrada em que deseja ler o dd.
  • of= / tmp / teste1.img (of=/path/to/output.ficheiro): o nome do ficheiro de saída que deseja que o dd escreva a entrada.para.
  • bs=1g (bs=Tamanho do bloco) : Defina o tamanho do bloco que deseja que o dd use. 1 gigabyte foi escrito para o teste. Por favor, note que o Linux vai precisar de 1GB de espaço livre na RAM. Se o seu sistema de teste não tiver RAM suficiente disponível, use um parâmetro menor para bs (como 128MB ou 64MB e assim por diante).
  • contagem=1 (contagem=número de blocos): o número de blocos que deseja que o dd leia.
  • oflag=dsync ( oflag=dsync): Use I/O sincronizado para os dados. Não salte esta opção. Esta opção livra-se do caching e dá-lhe resultados bons e precisos
  • conv=fdatasyn: mais uma vez, Isto diz ao dd para necessitar de uma “sincronização” completa uma vez, mesmo antes de sair. Esta opção é equivalente a oflag=dsync.

Localizar o servidor de tempo de latência

neste exemplo, 512 bytes foram escritos mil vezes para obter RAID10 servidor de tempo de latência:

dd if=/dev/zero of=/tmp/test2.img bs=512 count=1000 oflag=dsync

exemplos de saídas:

1000+0 records in1000+0 records out512000 bytes (512 kB) copied, 0.60362 s, 848 kB/s

Por favor, note que a taxa de transferência do servidor e tempo de latência depende do server/aplicação de carga também. Então eu recomendo que você execute estes testes em um servidor recém reiniciado, bem como o tempo de pico para ter uma ideia melhor sobre a sua carga de trabalho. Agora você pode comparar esses números com todos os seus dispositivos.

mas por que o débito e o tempo de latência do servidor são tão baixos?Valores baixos não significa que esteja a usar hardware lento. O valor pode ser baixo por causa do cache do controlador RAID10 de HARDWARE.

Use o comando hdparm para ver buffer e cache em disco velocidade de leitura

eu sugiro que você execute os seguintes comandos 2 ou 3 vezes Realizar intervalos de dispositivo lê para fins de comparação e referência:

### Buffered disk read test for /dev/sda ##hdparm -t /dev/sda1## OR ##hdparm -t /dev/sda

Para executar intervalos de cache lê para referência e fins de comparação, novamente, execute o seguinte comando 2-3 vezes (note a opção-T):

## Cache read benchmark for /dev/sda ###hdparm -T /dev/sda1## OR ##hdparm -T /dev/sda

OU combinar ambos os testes:

hdparm -Tt /dev/sda

exemplos de saídas:

Fig.02: O comando Linux hdparm para testar a leitura e o desempenho do disco de cache

novamente note que, devido ao cache dos sistemas de ficheiros nas operações de ficheiros, irá ver sempre taxas de leitura elevadas.

Use o comando dd no Linux para teste de velocidade de leitura

Para obter precisas teste de leitura de dados, primeiro descartar caches antes de testar executando os seguintes comandos:

flushecho 3 | sudo tee /proc/sys/vm/drop_cachestime dd if=/path/to/bigfile of=/dev/null bs=8k

Linux Laptop exemplo

Execute o seguinte comando:

Apple OS X, Unix (Macbook pro) exemplo

GNU dd tem muito mais opções, mas OS X/BSD e Unix-like comando dd precisa para ser executado da seguinte maneira para testar real e/S de disco e não de memória adicionar opção de sincronização da seguinte forma:

## Run command 2-3 times to get good results ###time sh -c "dd if=/dev/zero of=/tmp/testfile bs=100k count=1k && sync"

exemplos de saídas:

1024+0 records in1024+0 records out104857600 bytes transferred in 0.165040 secs (635346520 bytes/sec) real0m0.241suser0m0.004ssys0m0.113s

Então, eu estou ficando 635346520 bytes (635.347 MB/s) velocidade de gravação no meu MBP.

não é fã das ferramentas da linha de comando…?

pode usar o utilitário de disco (GNOME-disk-utility) num sistema baseado em Linux ou Unix para obter a mesma informação. A imagem seguinte é tirada do meu ecrã Fedora Linux v22 VM e Ubuntu 20.04:

método gráfico

carregue nas “actividades” ou carregue na chave “Super” para mudar entre a visão geral das actividades e a área de trabalho. Discos Do Tipo “”

Fig.03: iniciar o utilitário de disco Gnome

Seleccione o seu disco rígido na área esquerda e carregue no botão Configurar e carregue em “partição de referência””:

Fig.04: O disco/partição de referência

finalmente, carregue no botão “Iniciar a Referência…” (poderá ser promovido para o nome de utilizador e senha do administrador):

Fig.05: resultado final do parâmetro de referência

Ferramenta de discos em execução no Ubuntu 20.04 LTS:

  1. primeiro, discos abertos da visão geral das atividades.
  2. em seguida, escolha o disco da lista na área esquerda.
  3. Seleccione o botão do menu e seleccione o disco de referência… do menu.
  4. Click Start Benchmark … and adjust the Transfer Rate and Access Time parameters as desired.
  5. finalmente clique no Benchmarking para testar a rapidez com que os dados podem ser lidos a partir do disco. Podem ser necessários privilégios administrativos. Indique a sua senha ou a senha para a conta de administrador de Sistema solicitada.

testar o desempenho do seu disco rígido usando ‘discos’

que método e comando recomenda usar para testar o desempenho do disco I/O?

  • eu recomendo o comando dd em todos os sistemas Unix-like (tempo sh -c “dd if=/dev/zero of=/tmp/testfile bs=100 k count=1 k && sync”))
  • Se você estiver usando o GNU/Linux use o comando dd (dd if=/dev/zero of=/tmp/testALT.img bs = 1g count=1 conv=fdatasync)
  • certifique-se de ajustar a contagem e os argumentos bs de acordo com a sua configuração para obter um bom conjunto de resultados.
  • o método GUI é recomendado apenas para usuários de laptops Linux/Unix rodando Gnome 2 ou 3 desktop.
  • para uma análise comparativa detalhada de desempenho de I/O, use o comando do fio
  • usamos a Iozona. É uma ferramenta de referência do sistema de arquivos. A benchmark gera e mede uma variedade de operações de arquivo.

conclusão

aprendeu a usar o dd em Linux ou Unix para testar medições de desempenho simples e sequenciais. Para o benchmarking de desempenho detalhado de I/O tente o teste flexível de I/O (FIO) para Unix ou Linux. Veja como Linux verificar a velocidade de transferência de disco rígido IDE / SATA e páginas man: hdparm (1) para mais informações.

🐧 por favor, apoiem o meu trabalho em Patreon ou com uma doação.
🐧 obter os tutoriais mais recentes no Linux, Open Source & DevOps via RSS feed ou Weekly email newsletter.
14 14 comentários até agora… adicionar um ↓
Categoria Lista de comandos Unix e Linux
Gestão de ficheiros cat
Firewall Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04
Network Utilities dig * host * ip * nmap
OpenVPN Centos 7 * CentOS 8 * Debian 10 * Debian 8/9 * Ubuntu 18.04 * Ubuntu 20.04
o Gerenciador de Pacotes apk • o apt
Gestão de Processos bg • chroot • cron • renegar • fg • empregos • killall • matar • pidof • pstree • pwdx • tempo
a Pesquisa grep • whereis • que
Informações do Usuário grupos • id • lastcomm • última • tampa/libuser-tampa • logname • membros • usuários • whoami • quem • w
WireGuard VPN Alpino • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04

You might also like

Deixe uma resposta

O seu endereço de email não será publicado.