Linux en Unix testen schijf I / O prestaties met dd Commando

Hoe kan ik dd commando gebruiken op een Linux om I/O prestaties van mijn harde schijf te testen? Hoe controleer ik de prestaties van een harde schijf inclusief de lees-en schrijfsnelheid op een Linux-besturingssysteem? Hoe kan ik het dd commando gebruiken onder Linux I / O performance test?
u kunt de volgende commando ‘ s gebruiken op een Linux of Unix-achtige systemen voor eenvoudige sequentiële I / O performance test:

  • dd-opdracht : Het wordt gebruikt om de schrijfprestaties van een schijfapparaat op een Linux-en Unix-achtig systeem te controleren.
    Tutorial details
    Moeilijkheden Gemiddeld (rss)
    Root privileges Ja
    Eisen dd
    Tijd 15m
  • hdparm opdracht : Het wordt gebruikt om/instellen van de vaste schijf van de parameters met inbegrip van de test lezen en cache prestaties van een schijf op een Linux-gebaseerd systeem.

In deze handleiding leert u hoe u het dd-commando gebruikt om de I/O-prestaties van de schijf te testen .

gebruik de opdracht dd om de lees-en schrijfprestaties van een schijfapparaat te controleren:

de opdracht dd is nuttig om eenvoudige sequentiële I/O-prestaties te achterhalen.

dd commando opties

in dit voorbeeld gebruik ik RAID-10 (Adaptec 5405Z met SAS SSD) array die draait op een Ubuntu Linux 14.04 LTS server. De basissyntaxis is als volgt om de serverdoorvoer te achterhalen:

Voorbeelduitgangen:

Fig.01: Ubuntu Linux Server met RAID10 en testen server doorvoer met dd

houd er rekening mee dat een gigabyte is geschreven voor de test en 135 MB/s was server doorvoer voor deze test. Waarbij

  • if=/dev/zero (if=/dev/input.bestand): de naam van het invoerbestand dat u wilt dd het lezen van.
  • of = / tmp / test1.img (of = / path / to / output.bestand): de naam van het uitvoerbestand dat u wilt dd schrijf de invoer.dossier aan.
  • bs = 1G ( bs = blokgrootte): Stel de grootte in van het blok dat dd wilt gebruiken. 1 gigabyte werd geschreven voor de test. Houd er rekening mee dat Linux 1 GB vrije ruimte in RAM nodig heeft. Als je testsysteem niet voldoende RAM beschikbaar heeft, gebruik dan een kleinere parameter voor bs (zoals 128MB of 64MB enzovoort).
  • count = 1 (count=number-of-blocks): het aantal blokken dat u dd wilt laten lezen.
  • oflag = dsync ( oflag = dsync): gebruik gesynchroniseerde I/O Voor gegevens. Sla deze optie niet over. Deze optie verwijdert caching en geeft je goede en nauwkeurige resultaten
  • conv = fdatasyn: nogmaals, dit vertelt dd om een volledige “sync” één keer nodig te hebben, vlak voordat het wordt afgesloten. Deze optie is gelijk aan Oflag = dsync.

Vinden server wachttijd

In dit voorbeeld, 512 bytes zijn geschreven duizend keer te krijgen RAID10 server latentie tijd:

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

Voorbeeld uitgangen:

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

Houd er rekening mee dat de server de doorvoer en de wachttijd is afhankelijk van server/applicatie te laden. Dus ik raad u aan deze tests uit te voeren op een nieuw opnieuw opgestart server evenals piek tijd om een beter idee over uw werklast te krijgen. U kunt deze nummers nu vergelijken met al uw apparaten.

maar waarom zijn de doorvoersnelheid en latentietijd van de server zo laag?

lage waarden betekent niet dat u trage hardware gebruikt. De waarde kan laag zijn vanwege de cache van de HARDWARE RAID10 controller.

gebruik de opdracht hdparm om gebufferde en in de cache opgeslagen disk leessnelheid

te zien Ik stel voor dat u de volgende opdrachten 2 of 3 keer uitvoert:

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

uit Te voeren timing van de cache leest voor benchmark en vergelijkingsdoeleinden opnieuw uitvoeren van de volgende opdracht 2-3 keer (let op de -T optie):

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

OF een combinatie van beide tests:

hdparm -Tt /dev/sda

Voorbeeld uitgangen:

Afb.02: Linux hdparm commando om lezen en caching disk performance

te testen merk nogmaals op dat als gevolg van bestandssystemen caching op bestandsbewerkingen, je altijd hoge leessnelheden zult zien.

gebruik dd-commando op Linux om leessnelheid

te testen om accurate leestestgegevens te krijgen, verwijder eerst caches voordat u test door de volgende commando ‘ s uit te voeren:

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

Linux Laptop voorbeeld

voer het volgende commando uit:

Apple OS X Unix (Macbook pro) voorbeeld

GNU dd heeft veel meer opties, maar OS X/BSD en Unix-achtige dd commando moet uitvoeren als volgt te werk om te testen echte disk I/O en niet-geheugen toevoegen sync-optie als volgt:

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

Voorbeeld uitgangen:

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

Dus ik ben aan de 635346520 bytes (635.347 MB/s-schrijf snelheid op mijn MBP.

geen fan van de opdrachtregelprogramma ‘ s…?

u kunt Schijfhulpprogramma (gnome-disk-utility) gebruiken op een op Linux of Unix gebaseerd systeem om dezelfde informatie te verkrijgen. Het volgende screenshot is genomen van mijn Fedora Linux v22 VM en Ubuntu 20.04 desktop:

grafische methode

klik op de” activiteiten “of druk op de” Super ” toets om te schakelen tussen het Activiteiten overzicht en desktop. Type “Schijven”

Fig.03: start het Gnome Schijfhulpprogramma

Selecteer uw harde schijf in het linkerdeelvenster en klik op de knop Configureren en klik op “Benchmark partition””:

Fig.04: Benchmark disk / partition

klik tenslotte op de” start Benchmark… ” knop (U kunt worden gepromoot voor de admin gebruikersnaam en wachtwoord):

Fig.05: Final benchmark result

hardlopen Disks tool onder Ubuntu 20.04 LTS:

  1. open eerst schijven uit het activiteitenoverzicht.
  2. kies vervolgens de schijf uit de lijst in het linkerdeelvenster.
  3. Selecteer de menuknop en selecteer Benchmark disk… uit het menu.
  4. klik op Start Benchmark … en pas de parameters voor overdrachtssnelheid en toegangstijd aan zoals gewenst.
  5. Klik ten slotte op Start Benchmarking om te testen hoe snel gegevens van de schijf kunnen worden gelezen. Beheerdersrechten kunnen vereist zijn. Voer uw wachtwoord in, of het wachtwoord voor het aangevraagde systeembeheerder-account.

Test de prestaties van uw harde schijf met behulp van ‘schijven’

welke methode en commando raadt u aan om de I/O-prestaties van de schijf te testen?

  • I recommend dd command on all Unix-like systems (time sh-c “dd if= / dev/zero of=/tmp/testfile bs=100k count=1k && sync”))
  • gebruik de dd command (dd if=/dev/zero of=/tmp/testALT.img bs = 1g count=1 conv = fdatasync)
  • zorg ervoor dat je telling en BS argumenten aanpast volgens je setup om een goede set van resultaat te krijgen.
  • de GUI methode wordt alleen aanbevolen voor Linux / Unix laptop gebruikers die Gnome 2 of 3 desktop draaien.
  • voor gedetailleerde benchmarking van I / O-prestaties Gebruik het Fio-Commando
  • We gebruiken de IOzone. Het is een bestandssysteem benchmark tool. De benchmark genereert en meet een verscheidenheid aan bestandsbewerkingen.

conclusie

u hebt geleerd hoe u de dd onder Linux of Unix kunt gebruiken voor het testen van eenvoudige en sequentiële I/O-prestatiemeting. Voor gedetailleerde benchmarking van I/O-prestaties probeer de “flexibele I / O Tester (FIO)” voor Unix of Linux. Zie hoe Linux IDE / SATA harde schijf overdracht snelheid en man pagina ‘ s te controleren: hdparm(1) voor meer informatie.

🐧 steun mijn werk op Patreon of met een donatie.
Get ontvang de nieuwste tutorials over Linux, Open Source & DevOps via RSS-feed of wekelijkse e-mail nieuwsbrief.
14 14 opmerkingen tot nu toe… toevoegen ↓
Categorie Lijst van Unix-en Linux-commando ‘ s
bestandsbeheer kat
Firewall Alpine Ijlings • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04
netwerk Utilities dig * host * ip * nmap
OpenVPN CentOS 7 * CentOS 8 * Debian 10 • Debian 8/9 • Ubuntu 18.04 * Ubuntu 20.04
Package Manager apk • apt
Processen Management bg • chroot • cron • niet aanvaardt • fg • banen • killall • doden • pidof • pstree • pwdx • tijd
Zoeken grep • whereis • die
Informatie voor de Gebruiker groepen • id • lastcomm • laatste • deksel/libuser-deksel • logboeknaam • leden • gebruikers • whoami • die • w
WireGuard VPN Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04

You might also like

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.