Stellen Sie sich dieses Szenario vor. Sie sind ein Neuling, der wenig Erfahrung mit Linux hat. Sie haben kürzlich einen neuen Laptop gekauft, auf dem Linux vorinstalliert ist, beispielsweise Ubuntu. Sie sind sich nicht sicher, ob es sich bei der installierten Festplatte um eine SSD (Solid State Drive) oder eine normale HDD (Hard Disk Drive) handelt. Kein Problem! In dieser kurzen Anleitung erfahren Sie, wie Sie in Linux-Betriebssystemen feststellen können, ob es sich bei der Festplatte um eine SSD oder eine Festplatte handelt.
In Linux feststellen, ob es sich bei der Festplatte um eine SSD oder HDD handelt
Ab Kernel-Version 2.6.29 , Linux-Betriebssysteme können SSD automatisch erkennen. Es gibt einige Möglichkeiten, um herauszufinden, ob es sich bei der Festplatte um eine SSD oder eine Festplatte handelt. Hier habe ich 7 Methoden angegeben.
Methode 1 - Überprüfen Sie, ob die Festplatte rotiert
Wie Sie vielleicht bereits wissen, ist das herkömmliche Festplattenlaufwerk (HDD) speichert die Daten auf einer kreisförmigen Scheibe, die als Platter bekannt ist . Wenn sich die Disc dreht, greift der bewegliche Lese-/Schreibkopf auf die Daten zu. Je schneller sich die Festplatte dreht (rotiert), desto schneller arbeitet die Festplatte.
Andererseits Solid State Drive (SDD) ist eine moderne Speichertechnologie und eine schnellere Art von Laufwerk, das die Daten auf sofort zugänglichen Flash-Speicherchips speichert. Im Gegensatz zu herkömmlichen HDDs haben SSDs keine beweglichen Teile und SSDs drehen sich nicht .
Um herauszufinden, ob es sich bei der installierten Festplatte um eine SSD oder eine normale Festplatte handelt, überprüfen Sie einfach mit dem folgenden Befehl, ob die Festplatte rotiert:
$ cat /sys/block/sda/queue/rotational
Wenn die Ausgabe 1 ist , die Festplatte ist HDD. Wenn die Ausgabe 0 ist (Null), die Festplatte ist SDD. Denn SSDs rotieren nicht. Die Ausgabe sollte also Null sein, wenn Sie SSD in Ihrem System haben.
Jedes Laufwerk hat ein Verzeichnis in /sys/class/block/ Lage. Sie können also auch die Details anderer Laufwerke überprüfen.
$ cat /sys/block/sdb/queue/rotational
$ cat /sys/block/sdc/queue/rotational
Hinweis:
Wenn Sie sich auf einer virtuellen KVM-Gastmaschine befinden, lautet der Laufwerksbuchstabe vda . Das Ergebnis variiert je nach Bustyp Sie während der virtuellen Maschine ausgewählt haben. Wenn Sie beispielsweise SATA als Bustyp für das virtuelle Laufwerk auswählen, sehen Sie die folgende Ausgabe:
$ cat /sys/block/vda/queue/rotational 1
Methode 2 - Verwendung des Befehls lsblk
Das lsblk Befehl liest die sysfs Dateisystem und udev db um Informationen über alle verfügbaren oder die angegebenen Blockgeräte zu sammeln. Der Befehl lsblk ist Teil von util-linux Paket und ist bei den meisten Linux-Distributionen vorinstalliert.
Falls der Befehl lsblk nicht verfügbar ist, installieren Sie einfach das Paket util-linux mit dem Paketmanager Ihrer Distribution.
Auf Arch-basierten Systemen können Sie es beispielsweise mit folgendem Befehl installieren:
$ sudo pacman -S util-linux
Auf Debian-basierten Systemen:
$ sudo apt install util-linux
Auf RPM-basierten Systemen:
$ sudo yum install util-linux
Unter openSUSE:
$ sudo zypper install util-linux
Finden Sie nun mit dem Befehl heraus, ob es sich bei der Festplatte um eine SSD oder HDD handelt:
$ lsblk -d -o name,rota
Beispielausgabe:
NAME ROTA loop0 1 loop1 1 loop2 1 loop3 1 loop4 1 loop5 1 loop6 1 loop7 1 loop8 1 loop9 1 loop10 1 loop11 1 loop12 1 loop13 1 loop14 1 loop15 1 loop16 1 loop17 1 loop18 1 loop19 1 loop20 1 sda 1 sr0 1
„Rota“ bedeutet hier Rotationsvorrichtung . Wenn Sie den Rota-Wert in der obigen Ausgabe als 1 erhalten , die Festplatte ist HDD. Wenn der Wert 0 (Null) ist , dann ist die Festplatte SSD.
Methode 3 – Verwenden von SMART-Überwachungstools
Der andere Weg, um herauszufinden, ob es sich bei der Festplatte um eine SSD oder HDD handelt, ist die Verwendung von smartctl Befehl. Das smartctl ist Teil des S.M.A.R.T-Überwachungswerkzeugpakets, das zur Steuerung und Überwachung von S.M.A.R.T. aktivierte ATA- und SCSI-Festplatten.
Um die SMART-Überwachungstools unter Arch Linux und seinen Varianten zu installieren, führen Sie Folgendes aus:
$ sudo pacman -S install smartmontools
Unter Debian, Ubuntu:
$ sudo apt install smartmontools
Auf RHEL, CentOS:
$ sudo yum install smartmontools
Unter openSUSE:
$ sudo zypper install smartmontools
Führen Sie nach der Installation des smartmontools-Pakets den folgenden Befehl aus, um herauszufinden, ob es sich bei der Festplatte um SSD oder HDD handelt:
$ sudo smartctl -a /dev/sda | grep 'Rotation Rate'
Wenn es sich bei der Festplatte um eine SSD handelt, erhalten Sie eine Ausgabe wie unten.
Rotation Rate: Solid State Device
Wenn es sich bei der Festplatte um eine Festplatte handelt, erhalten Sie diese Ausgabe:
Rotation Rate: 5400 rpm
Methode 4 – Verwenden von dmesg + Google
Dies ist kein direkter Ansatz, um den Datenträgertyp zu finden. Bei dieser Methode verwenden wir dmesg Befehl, um das Laufwerksmodell zu finden, und googeln Sie dann die Details, um herauszufinden, ob es sich bei dem Laufwerk um SSD oder HDD handelt.
$ dmesg | grep -i -e scsi -e ata
Sie sehen den Modellnamen des Datenträgers neben allen anderen Details.
[...] [ 1.845159] scsi 0:0:0:0: Direct-Access ATA ST9500325AS DEM1 PQ: 0 ANSI: 5 [...]
Googlen Sie einfach dieses Modell, um die Festplattendetails zu finden.
Methode 5 – Verwendung von SCSI-Details + Google
Dies ist dasselbe wie die obige Methode. Wir rufen das Plattenmodell von /proc ab Verzeichnis mit dem Befehl:
$ cat /proc/scsi/scsi
Beispielausgabe:
Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: ATA Model: ST9500325AS Rev: DEM1 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi4 Channel: 00 Id: 00 Lun: 00 Vendor: PLDS Model: DVD+-RW DS-8A8SH Rev: KD11 Type: CD-ROM ANSI SCSI revision: 05 Host: scsi6 Channel: 00 Id: 00 Lun: 00 Vendor: Generic- Model: Multi-Card Rev: 1.00 Type: Direct-Access ANSI SCSI revision: 00
Und dann googeln Sie die Details, um zu erfahren, ob es sich bei der Festplatte um SSD oder HDD handelt.
Methode 6 - Verwenden von Sg3-utils
Sg3-utils ist eine Sammlung von Dienstprogrammen für Geräte, die den SCSI-Befehlssatz verwenden. Jedes Dienstprogramm in diesem Paket implementiert einen SCSI-Befehl.
Sg3-utils ist in den Standard-Repositories von Debian und Ubuntu verfügbar. Um es auf Ihrem System zu installieren, führen Sie einfach Folgendes aus:
$ sudo apt install sg3-utils
Suchen Sie nun nach Vital Product Data (VPD) für die Eigenschaften des Blockgeräts, indem Sie den folgenden Befehl ausführen:
$ sudo sg_vpd --page=bdc /dev/sda
Beispielausgabe:
Block device characteristics VPD page (SBC): Nominal rotation rate: 5400 rpm Product type: Not specified WABEREQ=0 WACEREQ=0 Nominal form factor not reported ZONED=0 BOCS=0 FUAB=0 VBULS=0
Gehen Sie die Ausgabe durch. Wenn die Ausgabe diese Zeile enthält - "Nenndrehzahl:5400 U/min" , es ist HDD. Bei SSD würden Sie wahrscheinlich - "Nicht rotierendes Medium" sehen .
Methode 7 – Benchmarking der Festplattenzugriffsleistung
Finden Sie heraus, ob es sich bei der Festplatte um eine SSD oder HDD handelt, indem Sie mit dem Befehl zufällige Blöcke von der Festplatte lesen:
time for i in `seq 1 1000`; do dd bs=4k if=/dev/sda count=1 skip=$(( $RANDOM * 128 )) >/dev/null 2>&1; done
Dieser Befehl liest 1000 zufällige 4k-Blöcke von den ersten 16 GB einer Festplatte.
Wenn es sich bei Ihrer Festplatte um eine SSD handelt, sollte der Vorgang in etwa einer Sekunde abgeschlossen sein . Wenn es sich bei der Festplatte um eine Festplatte handelt, dauert der Vorgang einige Sekunden.
Dies ist hilfreich, um Festplatten in Ihrem VPS zu überprüfen. Wenn Sie einen VPS verwenden und überprüfen möchten, ob der Hosting-Anbieter Ihnen SSD oder HDD gegeben hat, können Sie dies auf diese Weise herausfinden!
Was ist, wenn mehrere Laufwerke vorhanden sind?
Was ist, wenn ich zwei Festplatten habe, eine ist eine SSD und die andere eine HDD? Beide Festplatten sind gleich groß und vom gleichen Hersteller. Ich weiß nicht, auf welcher Platte mein Linux installiert ist. Finden Sie in diesem Fall einfach mit dem folgenden Befehl heraus, auf welcher Festplatte sich das Root-Dateisystem befindet:
$ df / -h
Beispielausgabe:
Filesystem Size Used Avail Use% Mounted on /dev/sda1 458G 341G 95G 79% /
Verwenden Sie alternativ lshw Befehl, um weitere Details zu den Festplatten zu finden:
$ sudo lshw -short -C disk
Beispielausgabe:
H/W path Device Class Description ==================================================================== /0/100/1d/1/1/6/0.0.0 /dev/sdb disk Multi-Card /0/100/1d/1/1/6/0.0.0/0 /dev/sdb disk /0/1/0.0.0 /dev/sda disk 500GB ST9500325AS /0/2/0.0.0 /dev/cdrom disk DVD+-RW DS-8A8SH
Wie Sie in der obigen Ausgabe sehen, ist mein Root-Dateisystem in /dev/sda installiert . Befolgen Sie nun eine der oben genannten Methoden, um herauszufinden, ob es sich bei der Festplatte um eine Festplatte oder eine SSD handelt.
Hinweis:
In einigen neuen Laptops wie Lenovo ideapad s240 , sehen Sie einen anderen Gerätenamen, zum Beispiel nvme0n1 . Lassen Sie uns die Liste der verfügbaren Blockgeräte mit dem Befehl anzeigen:
$ ls /sys/block
Beispielausgabe:
loop0 loop11 loop14 loop17 loop2 loop3 loop6 loop9 loop1 loop12 loop15 loop18 loop20 loop4 loop7 nvme0n1 loop10 loop13 loop16 loop19 loop21 loop5 loop8
Lassen Sie uns herausfinden, auf welcher Platte sich das Root-Dateisystem befindet:
$ df / -h
Beispielausgabe:
Filesystem Size Used Avail Use% Mounted on /dev/nvme0n1p6 96G 34G 58G 34% /
Wie Sie in den obigen Ausgaben sehen, gibt es kein sda oder sdb . Keine Panik! Das ist normal. Die Datei /dev/nvme ... Gerätename gibt neueres NVMe an "Festplatten." Wenn die Festplatte über einen NVM Express-Port anstelle eines herkömmlichen SATA- oder SAS-Ports verbunden ist, sehen Sie einen anderen Gerätenamen, wie in der obigen Ausgabe gezeigt.
Hier, /dev/nvme0n1 entspricht /dev/sda . Daher /dev/nvme0n1p6 entspricht /dev/sda6 .
Empfohlene Lektüre:
- So finden Sie Hardwarespezifikationen unter Linux
- So überprüfen Sie, ob ein Linux-System eine physische oder virtuelle Maschine ist
- So überprüfen Sie, ob ein Linux-System 32-Bit oder 64-Bit ist
- So finden Sie heraus, ob eine CPU die Virtualisierungstechnologie (VT) unterstützt
Dies sind einige Methoden, um herauszufinden, ob es sich bei der Festplatte unter Linux um eine SSD oder eine Festplatte handelt. Hoffe, es war nützlich.
SSD-Symbol Bild von PagDev von Pixabay
HDD-Symbolbild von Clker-Free-Vector-Images from Pixabay