Wie man die Festplattenleistung unter Linux bewertet

Wie man die Festplattenleistung unter Linux bewertet

Ich habe gerade das neueste und beste - und besonders schnellste - SDD gekauft? Oder aktualisierte die microSD -Speicherkarte Ihres Telefons? Bevor Sie mit Ihrer glänzenden neuen Hardware beginnen, möchten Sie möglicherweise eine Leistungsprüfung gegen das Laufwerk durchführen. Ist die Schreib- und Lesengeschwindigkeit für die Spezifikationen des Herstellers? Wie vergleichen sich Ihre Leistung mit der anderer?? Ist das 1 -TB -Flash -Laufwerk, das Sie auf einer Auktionsstelle aus China gekauft haben? Lassen Sie uns herausfinden!

In diesem Tutorial lernen Sie:

  • Welche CLI (Befehlszeilenschnittstelle: Ihre Bash oder andere Terminalumgebung) Datenträgermesswerkzeuge sind verfügbar
  • Welche GUI (grafische Benutzeroberfläche: Ihre Desktop -Umgebung) Datentod -Messwerkzeug, empfehlen wir
  • Wie man die Datenträgerleistung effektiv auf einfache Weise messen
  • Entdecken und lernen Sie mit verschiedenen Beispielen zur Messung von Datenträgern,
  • So erhalten Sie ein Gefühl für die Qualität der Festplatten-/Flash -Hardware, die Sie besitzen
Wie man die Festplattenleistung unter Linux bewertet

Softwareanforderungen und Konventionen verwendet

Softwareanforderungen und Linux -Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder Softwareversion verwendet
System Jeder GNU/Linux
Software N / A
Andere Privilegierter Zugriff auf Ihr Linux -System als Root oder über die sudo Befehl.
Konventionen # - erfordert, dass gegebene Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mit Verwendung von ausgeführt werden können sudo Befehl
$ - Erfordert, dass die angegebenen Linux-Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden können

Wie man die Festplattenleistung unter Linux - CLI -Tools bewertet

Stecken Sie Ihr Laufwerk zu Ihrem Computer an Ihren Computer. Wenn es sich um ein SSD (Solid State -Laufwerk) oder eine Festplatte (Festplattenlaufwerk) handelt, möchten Sie Ihren Computer herunterfahren, das Laufwerk einfügen und das System neu starten. Für SD -Karten verwenden Sie normalerweise einen SD -Kartenleser, den Sie über einen USB -Anschluss an Ihren Computer einfügen können. Fügen Sie für USB -Speicherschläger/Flash -Laufwerke einfach über einen USB -Anschluss in Ihren Computer ein.

Navigieren Sie als nächstes zu Ihrer Terminal-/Eingabeaufforderung (auf Ubuntu
Zum Beispiel können Sie dies tun, indem Sie einfach klicken Aktivitäten Oben links auf dem Bildschirm> Typ Terminal und klicken Sie auf das Terminal -Symbol).

Geben Sie in der Befehlszeile LSBLK ein:

$ lsblk | Grep SDC SDC 8:32 1 119.3g 0 Festplatte 

Hier führen wir aus LSBLK: Sie können dies als lesen ls blk: ich.e. Führen Sie eine Auflistung ähnlich wie LS ('Verzeichnisliste') auf allen Bulk (BLK) -Benalen durch.

Wie Sie sehen können, gibt es eine 119.3g Fahren verfügbar. Diese Fahrt wird als 128 GB vermarktet und ist eine große Marke. Es ist nicht ungewöhnlich, dass ein 128-GB-Laufwerk nur ~ 115-120 g in zeigen kann LSBLK. Das ist weil LSBLK wird Ihnen das Ergebnis in Gibibyte geben (1 Gibibyte = 1073700000 Bytes) Während Drive -Hersteller ihre Laufwerke mit dem Standard "Gigabyte" verkaufen (a Gigabyte = 1000000000 Bytes).

Wir können in diesem Fall sehen, dass dies nahezu perfekt funktioniert, wenn wir uns die Basisgröße ansehen:

$ lsblk -b | GREP SDC SDC 8:32 1 128043712512 0 Festplatte 


Und 119.3 (wie von LSBLK berichtet) = 119.3 x 1073700000 = 128092410000. Wenn Sie also diese nächste Fahrt kaufen, lesen. Fast immer wird es der erstere sein.

Einige SD -Hersteller haben sogar die Größe eines reservierten Spezialbereichs für die Verschleißniveau auf der SD -Karte als Hauptdiskette. Käufer achten Sie auf.

Wenn Sie ausführen LSBLK Zum ersten Mal möchten Sie sich einige Zeit nehmen, um sich die verschiedenen verfügbaren Laufwerke anzusehen. Der einfachste Weg, ein bestimmtes Volumen zu lokalisieren, beispielsweise ein gerade eingefügter Flash -Laufwerk, besteht darin, nach einer Größe zu suchen, die ungefähr der Größe der eingefügten Festplatte entspricht.

Jetzt, da wir wissen, dass unser neues Laufwerk gekennzeichnet ist SDC (Linux verwendet SDA,SDB,SDC usw. Gemäß den während des Start und/oder eingefügten Laufwerken wissen wir auch, wo sich der Deskriptor der Gerätedatei für dieses Gerät befindet (es ist immer in /dev):

$ ls /dev /sdc /dev /sdc 

Auch wenn es bereits Partitionen auf dem Laufwerk gäbe, würde es sich anders zeigen, wie folgt:

$ lsblk -b | GREP SDC SDC 8:32 1 128043712512 0 Festplatte └─sdc1 8:33 1 128042663936 0 Teil 

Sie können sehen, wie es die Festplatte hat (/dev/sdc - angezeigt durch 'Disk') und die erste Aufteilung (/dev/sdc1 - durch 'Teil' angezeigt). Logischerweise ist die Partition etwas kleiner als die Gesamtscheibengröße aufgrund der Ausrichtung/des reservierten Platzes für die Partitionstabelle usw.

Wenn Sie schließlich andere Arten von Speicher-/Festplatten -Geräten haben, z. B. ein NVME -Laufwerk, kann dies beispielsweise als:

$ lsblk | grep nvme nvme0n1 259: 0 0 701.3G 0 Festplatte ├─NVMe0N1P1 259: 1 0 512M 0 Teil /Boot /EFI ├─NVME0N1P2 259: 2 0 732M 0 Teil /BOOT └─NVME0N1P3 259: 3 0 700G 0 Teil 0 Teil 

Hier haben wir ein NVME -Laufwerk, das 3 Partitionen beherbergt (P1, p2, p3) und die ersten beiden sind kleine Startpartitionen und die dritte ist unsere Hauptdatenpartition. Da diese Partition verwendet wird, werden wir nicht in der Lage sein, es zu haben exklusiven Zugang oder unmontierter Zugang dazu. Dies wird relevant, sobald wir einige der folgenden Tools diskutieren.

Mit diesen Informationen bewaffnet ist es jetzt einfach, eine einfache Festplattenleistungsprüfung gegen diese Fahrt mithilfe dieser Fahrt durchzuführen HDParm:

$ sudo hdparm -ttv/dev/sdc1/dev/sdc1: multCount = 0 (off) readonly = 0 (off) readahead = 256 (on) Geometry = 15567/255/63, Sektoren = 25008328, Start = 2048 Timing Cached Reads Readssss : 36928 MB in 1.99 Sekunden = 18531.46 MB/s Timing Buffered Disk Reads: 276 MB in 3.02 Sekunden = 91.37 MB/s 

Wir können benutzen HDParm Timings für Benchmark- und Vergleichszwecke durchführen -T (Timings von Cache Reads durchführen) und -T (Timings für Gerätelesungen durchführen) Optionen.

Wie Sie sehen können, kommen unsere zwischengespeicherten Lesevorgänge extrem schnell ein (wie zu erwartend; es ist zwischengespeichert) und sie sind nicht unbedingt eine gute Zahl, es sei denn, Sie testen die Cache -Leistung speziell.

Die nützlichere Zahl ist die gepufferte Scheibe, und sie kommen herein bei 91.37 MB/s. Nicht schlecht wie der Hersteller für dieses Laufwerk hat nicht einmal eine Schreibgeschwindigkeit beworben.

Als Handbuch für HDParm (-Tt Optionen) Staaten, Für aussagekräftige Ergebnisse sollte dieser Vorgang 2-3 Mal auf einem ansonsten inaktiven System (keine anderen aktiven Prozesse) mit mindestens ein paar Megabyte freier Speicher wiederholt werden, Wir sollten einen weiteren Test durchführen, um unsere Ergebnisse sicherzustellen.

Ein wiederholter Test, diesmal nur mit gepufferten Lesevorgängen und etwas mehr ausführlicher Ausgang (erreicht durch Hinzufügen der Option '-v'):

$ sudo hdparm -tv/dev/sdc1/dev/sdc1: multCount = 0 (off) readonly = 0 (aus) Readahead = 256 (Ein) Geometrie = 15567/255/63, Sektoren = 25008328, Start = 2048 Timing Buffered Disk gepumpter Disk einbezogene Diskulptum mit Timing Disk gepumptem Disk gepumpter Disk einbezogene Diskulptor. liest: 276 mb in 3.01 Sekunden = 91.54 MB/s 

Wie wir sehen können, ist die von HDParm gemeldete Zahl ziemlich zuverlässig.



Bisher haben wir nur Lesgeschwindigkeiten besprochen. Schauen wir uns als nächstes Schreibgeschwindigkeiten an. Dafür werden wir DD verwenden.

Die sicherste Möglichkeit, dies zu tun
. Beachten Sie, dass die Art des Dateisystems (e.G. Ext4, Fat32,…) wirkt sich auf die Leistung, Benutzerfreundlichkeit und Sicherheit Ihres Antriebs aus.

$ sudo su # cd /tmp # mkdir mnt # mont /dev /sdc1 ./mnt # geht davon aus, dass mindestens 1 Partition auf /dev /sdc definiert ist. In diesem Fall gibt es und es handelt sich um eine ext4 -Partition. # Sync # echo 3>/proc/sys/vm/drop_caches # dd if =/dev/null von =/tmp/mnt/temp oflag = Direct BS = 128K count = 1G # Unser tatsächlicher Leistungstest # rm -f/tmp /mnt/tempo 

Der Leistungstest zeigt wie folgt:

# dd if =/dev/null von =/tmp/mnt/temp oflag = Direct BS = 128K Count = 16K 16384+0 Datensätze in 16384+0 Aufzeichnungen 2147483648 Bytes (2.1 GB, 2.0 gib) kopiert, 32.1541 S, 66.8 mb/s 

Wie wir sehen können, funktioniert unser 128 -GB -Laufwerk mit a einigermaßen gut 66.8 mb/s Schreibgeschwindigkeit. Lassen Sie uns die doppelte Größe (4 GB Datei) verwenden, indem wir die count = 32k Möglichkeit:

# dd if =/dev/null von =/tmp/mnt/temp oflag = Direct BS = 128K Count = 32K 32768+0 Datensätze in 32768+0 Datensätze 4294967296 Bytes (4.3 GB, 4.0 gib) kopiert, 66.7746 s, 64.3 MB/s 

Schauen wir uns also alles an, was wir hier getan haben.

Zuerst haben wir die Privilegien auf sudo/root auf erhöht sudo su, Und dann haben wir eine geschaffen mnt Ordner in /tmp. Dies wird unser "Mount Point" sein, an dem wir auf unser 128 -GB montieren /dev /sdc1 ./mnt die die erste Partition effektiv bildet SDC1zum ./mnt (/tmp/mnt) Ordner).

Danach haben wir dafür gesorgt, dass alle Dateien unseres Systems zwischengespeichert werden Synchronisation. Dies ist auch ein praktischer Befehl zum Ausführen vor dem Umounting und Ausziehen Ihrer USB -Laufwerke, da sichergestellt wird, dass alle Daten, die auf Ihr USB -Laufwerk geschrieben wurden. Wenn Sie eine Festplatte im Desktop/der GUI entfernen, wird eine ausgeführt Synchronisation Für Sie im Hintergrund, bevor Sie das Laufwerk entfernen und Ihnen anschließend mitgeteilt werden, dass die Festplatte gespeichert ist, um zu entfernen.

Als nächstes stellen wir sicher, dass alle verbleibenden System -Caches durch Ausführung aus dem Speicher fallen gelassen werden Echo 3>/proc/sys/vm/drop_caches. Während beide letzten beiden Befehle aufgehört werden könnten, insbesondere wenn wir verwenden /dev/null Als Eingabegerät (ein virtuelles Gerät, das bei Zugriff weiterhin Null ausgibt) ist es schön, dass das System „Super sauber und bereit“ ist, um einen Festplattenleistungstest durchzuführen! Grundsätzlich stellen wir sicher, dass so wenig wie mögliches Caching passieren wird.

Als nächstes haben wir unseren Hauptleistungstest verwenden dd. Die Syntax von dd ist ziemlich unkompliziert, aber anders als die meisten anderen Befehlszeilenwerkzeuge. Schauen wir es uns detailliert an:

  • if =/dev/null: Verwenden Sie das Gerät /dev /Zero als Eingabedatei
  • von =/tmp/mnt/temp: Verwenden Sie die Datei "Temp", die sich auf der Partition (/Disk) befindet, die wir gerade unter/tmp/mnt als Ausgabedatei montiert haben
  • Oflag = Direct: Setzen Sie das Ausgabebel Flag 'Direct', um sicherzustellen, dass wir direkt I/A für Daten verwenden, was die meisten, wenn nicht das gesamte Zwischenspeichern des Betriebssystems, beseitigt
  • BS = 128K: Schreiben Sie bis zu 128.000 Bytes gleichzeitig. Der Standard von 512 ist viel zu klein und würde dazu führen, dass die mögliche Durchsatzgeschwindigkeit nicht maximiert wird
  • count = 16k: Kopieren Sie 16K -Eingangsblöcke, die ungefähr 2 besitzt.1 GB oder 2.0 Gib. Möglicherweise möchten Sie diese Variable je nach Anforderungen an die Antriebsgröße und Ihre Anforderungen an die Laufwerksgenauigkeit anpassen (mehr ist besser: zuverlässiger)

Und schließlich löschen wir die Datei, mit der wir geschrieben haben rm -f/tmp/mnt/temperatur.

Wichtige Anmerkung und Warnung
Beachten Sie, dass wenn Ihre Festplatte leer war und nur wenn Sie sicher sind, dass dies der Fall ist vollständig leer und enthält keine wertvollen Daten, Sie könnten etwas im Sinne tun: von =/dev/sdc1 oder auch von =/dev/sdc einen exklusiven Zugriff / unmontierten Scheibengeschwindigkeitstest durchführen.

Dies ist eine sehr reine Art, die Festplattenleistung zu testen, aber (!) Bitte sei sehr vorsichtig mit dieser Verwendung, wie jedes Gerät oder jede Partition, die in angegeben ist von =… wird definitiv überschrieben mit allem, was von irgendetwas kommt If =… Sie geben an. Aufpassen.



Wie man die Festplattenleistung unter Linux - GUI -Tool bewertet

Jetzt, da Sie wissen, wie Sie einen Festplattenleistungstest aus der Befehlszeile ausführen, verwenden Sie die HDParm (zum Lesen) und dd (Für Schreiben) Terminal/CLI -Tools sehen wir uns als nächst.

Wenn Sie Ubuntu, das häufigste Linux -Desktop -Betriebssystem, verwenden, gibt es einen großartigen Aufbau von Versorgungsunternehmen in das Betriebssystem. Es ist auch eines der wenigen (oder vielleicht nur vorhandenen) grafischen Testen der Festplattenleistungstesttests unter Linux. Die meisten anderen Tools basieren auf Befehlszeilen oder haben keine Linux -Äquivalente zu ihren Microsoft Windows -Gegenstücken. Zum Beispiel gibt es kein grafisches Gegenstück für das Crystaldiskmark Windows Disk Performance -Dienstprogramm.

Klicken Sie einfach Aktivitäten Oben links auf dem Bildschirm und tippen Sie Scheiben das zeigt Ihnen die Scheiben Symbol (zeigt ein Bild einer Festplatte). Klicken Sie auf das gleiche, um die zu öffnen Scheiben Dienstprogramm mit einem Aufbau des Festplatten -Benchmark -Tools.

Wenn Sie nach dem Öffnen einen einzelnen Klicken verwenden, um Ihre Festplatte auf der linken Seite des Dialogfensters auszuwählen, klicken Sie dann auf die 3 vertikalen Punkte oben rechts im Dialogfenster (links hinter der Schaltfläche Minimieren). Wählen Sie von dort die Option aus Benchmark -Festplatte… Öffnen Sie das Benchmarking -Tool für das ausgewählte Laufwerk. Das Fenster "Benchmark" wird geöffnet.

Klicke auf Benchmark starten .. So öffnen Sie den genannten Konfigurationsdialogfeld Benchmarkeinstellungen. Von hier aus empfehle ich, die folgenden Optionen festzulegen:

Übertragungsrate:

  • Anzahl der Proben: 10
  • Probengröße (MIB): 1000 (dies ist auch das Maximum)
  • Führen Sie Write Benchmark: Ticked (Lesen Sie zuerst die Notizen unten, bevor Sie den Benchmark starten!)

Zugriffszeit:

  • Anzahl der Proben: 1000

Dann klick Starten Sie Benchmarking… den Test beginnen. Schauen wir uns die Einstellungen an, die wir hier vorgenommen haben.

Die maximale Stichprobengröße beträgt 1000 MIB, und diese (1.048.576.000 Bytes) ist eine große Zahl, die jedoch großartig gewesen wäre, wenn wir Größen wie 2 GB und 4 GB aus auswählen könnten, wie wir es in unserer getan haben dd Befehlszeilen -Datenträger -Dienstprogramm -Schreibprüfung oben. Wir werden 10 Muster oder mit anderen Worten 10 Läufe der 1 GB lesen und schreiben.

Dieses Dienstprogramm für grafische Datenträger -Leistungsmessungen ist insofern sehr schlau, da sie keine Daten auf Ihrem Laufwerk zerstört, wie dies beispielsweise DD tun kann, wenn Sie das fälschlicherweise angeben von = Einstellung zu einer Festplatte oder Partition anstelle einer Datei.

Die Art und Weise, wie dies der Fall ist - wenn Sie einen Schreibbenchmark ausführen (wie wir es hier getan haben) -, besteht darin Standort! Wenn ein sehr seltsamer Schreibfehler nicht auftritt, ist es unwahrscheinlich, dass dies jemals die Daten auf Ihrem Laufwerk beschädigen würde (obwohl nicht garantiert ist!). Wenn Sie Ihren Cursor über den schweben Führen Sie Schreibbenchmark durch Einstellung Sie können ein bisschen mehr darüber lesen.

Der exklusive Zugriff bedeutet lediglich, dass die Auswahl der Schreiboption sicherstellt. Dies ist erforderlich, damit der Schreibtest ordnungsgemäß ausgeführt wird. Es ist das, was Sie auf jeden Fall wollen würden; ich.e. Sie möchten nicht auf Ihr Laufwerk zugreifen (oder Daten auf/aus dem Laufwerk kopieren), während der Test ausgeführt wird, da dies die Ergebnisse erheblich verzerren kann.

Wir fordern auch 1000 Proben von Zugriffszeit - ich.e. Die Zeit, die das Betriebssystem benötigt, um auf das Laufwerk zuzugreifen. Für SD -Karten wird dies ziemlich niedrig sein, zum Beispiel hat unsere 128 -GB 0.71 ms über 1000 Proben hinweg, Während eine langsamere Festplatte zu 20-100 ms Zugangszeiten führen kann.

SD vs HDD -Leistungsunterschied

Der obige Screenshot zeigt die klaren Ausgangsunterschiede zwischen dem 128 -GB -SD -Kartentest und einem 3 -TB -Festplattenlaufwerk.

Abschluss

Ausgestattet mit den Fähigkeiten zur Messung von Datenträgern Lesen und Schreiben der Leistung, was ist Ihr nächster Laufwerksleistungstest? Bitte teilen Sie uns in den Kommentaren unten mit, und wenn Sie am Ende testen oder Benchmarking moderner SSD, NVME, SD oder anderer Flash -Speicher haben, veröffentlichen Sie bitte einige der Ergebnisse, die Sie sehen!

Verwandte Linux -Tutorials:

  • So verwenden Sie ADB Android Debugg Bridge, um Ihr Android zu verwalten…
  • So installieren Sie Adobe Flash Player unter Linux
  • Installieren Sie Ubuntu 20.04 auf Raspberry Pi
  • USB -Antriebs -Benchmark -Test unter Linux
  • Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
  • So entfernen Sie Bloatware von Ihrem Samsung Android Mobile…
  • Dinge zu installieren auf Ubuntu 20.04
  • Eine Einführung in Linux -Automatisierung, Tools und Techniken
  • So spiegeln Sie Ihren Android -mobilen Bildschirm auf Linux wider
  • Dinge zu tun nach der Installation Ubuntu 22.04 Jammy Quallen…