Finden Sie heraus, ob es sich bei der Festplatte um IDE oder SATA handelt

7

Ich muss herausfinden, ob eine Festplatte IDE oder SATA ist (oder irgendetwas anderes vielleicht). Ich weiß, dass das Gerät / dev / sda ist, also denke ich, dass es SATA ist, aber ich weiß nicht, ob ich nur anhand des Namens sicher sein kann. Ich habe versucht, dmesg zu betrachten und es steht immer "SCSI", aber ich bin sicher, es ist nicht ...

irgendwelche Ideen?

cd1
quelle
Ich stehe vor dem gleichen Problem. Die Ausführung von lshw scheint nicht die richtigen Details zu liefern.
Amit
Ich stehe auch vor dem gleichen Problem ...
Durgesh Pandey

Antworten:

13

Interessante Frage. dmesgsollte so etwas haben, wenn es ein SATA-Laufwerk ist:

 dmesg | grep -i SATA
 [    3.972803] ata3: SATA max UDMA/133 cmd 0xe800 ctl 0xe400 bmdma 0xd800 irq 18
 [    3.972807] ata4: SATA max UDMA/133 cmd 0xe000 ctl 0xdc00 bmdma 0xd808 irq 18

Ich habe dann die dmesgAusgabe für "ata3" überprüft und die Seriennummer gefunden:

dmesg | grep -in ata3
397:[    3.972803] ata3: SATA max UDMA/133 cmd 0xe800 ctl 0xe400 bmdma 0xd800 irq 18
409:[    4.183701] ata3.00: ATA-7: ST3160812AS, 3.ADH, max UDMA/133
410:[    4.183706] ata3.00: 312500000 sectors, multi 16: LBA48 NCQ (depth 0/32)
411:[    4.267004] ata3.00: configured for UDMA/133

die dann nachgeschlagen smartctloder hdparm -i /dev/<your disk(s)>seriell mit Gerät abgeglichen werden könnte.

Ich bin mir sicher, dass jemand mit l33t-Shell-Scripting-Fähigkeiten dies alles in einer Zeile erledigen kann, aber das sollte ziemlich solide sein. Im Zweifelsfall würde ich die Seriennummer anhand der Website des Herstellers überprüfen, wie Madhatter vorgeschlagen hat.

Ich habe dasselbe dmesg | grep -i SATAunter Ubuntu ausgeführt, das auf einer virtuellen VMware-Maschine (die die virtuellen Laufwerke als SCSI behandelt) und einem Server mit SCSI-Festplatten ausgeführt wird. beide gaben nichts zurück.

Soßengesicht
quelle
3

Eine ziemlich zuverlässige Methode besteht darin, lshw zu verwenden, um die Modellnummer und dann die Modellnummer bei Google nachzuschlagen, um festzustellen, um welchen Gerätetyp es sich handelt. Diese Methode funktioniert nicht, wenn sich das Laufwerk in einem USB-Gehäuse befindet. Einige USB-Controller verbergen die HD-Informationen vor Ihnen.

Für dieses System würden Sie also nach ST31500341AS suchen . und stellen Sie fest, dass es sich um ein 1,5-TB-SATA-Laufwerk handelt.

root@pabil:# lshw -class disk
  *-disk:0                
       description: ATA Disk
       product: ST31500341AS
       vendor: Seagate
       physical id: 0
       bus info: scsi@0:0.0.0
       logical name: /dev/sda
       version: CC1H
       serial: 9VS0R1WB
       size: 1397GiB (1500GB)
       capabilities: partitioned partitioned:dos
       configuration: ansiversion=5 signature=000473f5
Zoredache
quelle
Eine Art Betrüger von MadHatters Antwort.
Soße Gesicht
1
@gravyface, nehme ich an, aber auf mehreren Linux-Distributionen glaube ich, dass sich lshw in der Basisinstallation befindet, aber für smartctl muss ein Paket hinzugefügt werden. Außerdem ist lshw ein allgemeineres Tool, mit dem andere Informationen über das System gesammelt werden können.
Zoredache
2

MadHatter hat insofern Recht, als der Bezeichnungsunterschied / dev / hdx gegenüber / dev / sdx wäre. Am sichersten ist es jedoch, das Gehäuse zu öffnen und das Kabel zu betrachten. Sie müssen die Maschine dafür nicht unbedingt ausschalten, je nachdem, welches System Sie betrachten und welche Art von Kabelnest sich um das Gehäuse befindet.

Wenn das System neu gestartet werden kann, können Sie die Ultimate Boot-CD verwenden, um eine Festplattendiagnose durchzuführen. Sie identifizieren normalerweise den Laufwerkstyp und das Laufwerksmodell. Sogar das BIOS kann Ihnen beim Neustart mitteilen, um welche Art von Laufwerk es sich handelt.

Bart Silverstrim
quelle
2

Schauen Sie sich die Kabel / Stecker an oder schauen Sie sich dmesg an.

Sie können sich bei PATA-Laufwerken nicht auf / dev / hd verlassen. Bei modernen Systemen werden alle PATA / SATA-Laufwerke als / dev / sd angezeigt, da die neue ATA-Schicht das Präfix sd verwendet. Sie sehen / dev / hd nur, wenn Ihr Betriebssystem die alten veralteten ATA-Treiber verwendet.

runningdogx
quelle
Interessant zu wissen. Ich habe ein bisschen gegoogelt und irgendwann um Ubuntu 6.x (~ 2007) gab es einige Fehler, da die von Ihnen vorgeschlagenen neuen Ebenenänderungen nicht geändert wurden fstabund einige Benutzer nicht booten konnten. Ich verwende 8.10 und alle meine Laufwerke sind / dev / sd. Selbst die jüngste Ubuntu-Dokumentation scheint jedoch darauf hinzudeuten, dass / dev / hd für IDE-Laufwerke und / dev / sd für SATA / SCSI ist. Ich habe Ubuntu 10.x nicht auf Systemen mit IDE-Laufwerken ausgeführt, aber es scheint eine merkwürdige Diskrepanz zu sein.
Soße Gesicht
1

Wenn es IDE wäre, würde es sehr wahrscheinlich als / dev / hda angezeigt. Sie können versuchen smartctl -a /dev/sda, viele Informationen zu erhalten, einschließlich Hersteller- und Modellnummer. Querverweise auf die Website des Herstellers sind normalerweise recht einfach.

MadHatter
quelle
Ich sollte hinzufügen, dass der Befehl smartctl auf einem laufenden System sicher verwendet werden kann (zumindest sagt das Handbuch nicht, dass dies nicht der Fall ist, was bei bekannten Problemen der Fall ist und für mich nie schief gelaufen ist).
MadHatter
Dies ist bei Ubuntu nicht immer der Fall. Auf meinem Heimserver unter Ubuntu 8.10 sind alle drei Festplatten / dev / sda (SATA) / dev / sdb (SATA) / dev / sdc (IDE).
Soße Gesicht
Wie gesagt "sehr wahrscheinlich". Ich habe noch nie gewusst, dass ein System dies nicht tut, aber dann habe ich noch nie Ubuntu ausgeführt. Deshalb dachte ich, Vorsicht sei angebracht - und ich hatte Recht. DANKE für die Veröffentlichung weiterer Informationen!
MadHatter
1

Mir ist klar, dass dieser Beitrag alt ist (Linux fasst jetzt IDE / PATA-Laufwerke mit / dev / sd zusammen?), Aber der einfachste Weg, dies zu tun, ist heutzutage

sudo hdparm -I /dev/sd? | grep 'sd.\|ATA'

Dies ergibt die folgende Ausgabe für ein System mit einem SATA- und einem PATA-Laufwerk:

/dev/sda:
ATA device, with non-removable media
        Transport: Serial, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6
/dev/sdb:
ATA device, with non-removable media
        Used: ATA/ATAPI-6 T13 1410D revision 3a 
BrainwrekcedTech
quelle
0

Wenn Sie ausführen sudo hdparm -I /dev/sdX | grep Gen, sollten Sie so etwas auf einem SATA-Laufwerk ausgeben. Ich habe keine IDE oder SCSI, mit denen ich testen kann, sollte aber unterschiedlich sein, da SATA unterschiedliche Geschwindigkeiten hat.

`sudo hdparm -I / dev / sda | grep Gen.

   *    General Purpose Logging feature set
   *    Gen1 signaling speed (1.5Gb/s)
   *    Gen2 signaling speed (3.0Gb/s)`
Dentrasi
quelle