web-dev-qa-db-ja.com

ディスクがIDEまたはSATAであるかどうかを確認します

ディスクがIDEまたはSATA(または他の何かかもしれません)であるかどうかを調べる必要があります。デバイスが/ dev/sdaであることを知っているので、SATAだと思いますが、私はしません名前だけでわかるかどうかはわかりませんが、dmesgを調べたところ、常に「SCSI」と表示されていましたが、確かではありません...

何か案は?

7
cd1

興味深い質問です。 dmesgは、SATAドライブの場合、次のようになります。

_ 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
_

次に、「ata3」のdmesg出力をgrepして、シリアル番号を見つけました。

_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
_

次に、smartctlまたはhdparm -i /dev/<your disk(s)>を検索して、シリアルをデバイスと照合します。

L33tシェルスクリプトスキルを持つ誰かがこれをすべて1行で行うことができると思いますが、これはかなりしっかりしているはずです。疑問がある場合は、Madhatterの提案に従って、製造元のWebサイトでシリアル番号を確認します。

VMware仮想マシン(仮想ドライブをSCSIとして扱う)と、SCSIディスクを備えたサーバーで実行されているUbuntuで、同じ_dmesg | grep -i SATA_を実行しました。どちらも何も返さなかった。

13
gravyface

かなり信頼できる方法の1つは、lshwを使用してモデル番号を検索してから、Googleでモデル番号を検索して、デバイスのタイプを確認することです。ドライブがUSBエンクロージャーにある場合、この方法は機能しません。一部のUSBコントローラーはHD情報を非表示にします。

したがって、このシステムでは ST31500341AS を検索します。 1.5TB SATAドライブであることがわかります。

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
3
Zoredache

MadHatterは、指定の違いが/ dev/hdxと/ dev/sdxになるという点で正しいです。しかし、最も確実な方法は、ケースを開いてケーブルを見ることです。あなたが見ているシステムとあなたがケースの周りに持っているケーブルのどのような絡まった巣に依存するかによって、あなたはそれをするために必ずしもマシンを止める必要はありません。

システムを再起動できる場合は、Ultimate Boot CDを使用してハードディスク診断を実行できます。通常、これらはドライブのタイプとモデルを識別します。 BIOSでさえ、再起動時にそれがどの種類のドライブであるかを通知する場合があります。

2

ケーブル/コネクタまたはdmesgを確認してください。

PATAドライブを/ dev/hdに依存することはできません。最近のシステムでは、新しいATAレイヤーがsdプレフィックスを使用するため、すべてのPATA/SATAドライブは/ dev/sdとして表示されます。/dev/hdは、OSが古い非推奨のATAドライバーを使用している場合にのみ表示されます。

2
runningdogx

IDEの場合、veryはおそらく/ dev/hdaと表示されます。あなたは試すことができますsmartctl -a /dev/sdaこれは、メーカーやモデル番号を含む多くの情報を生成します。メーカーのウェブサイトでそれを相互参照することは、通常はかなり簡単です。

1
MadHatter

私はこの投稿が古いことを認識しています(LinuxはIDE/PATAドライブを/ dev/sdと統合していますか?)しかし、最近これを行う最も簡単な方法は

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

これにより、SATAドライブが1つとPATAドライブが1つあるシステムで次の出力が得られます。

/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 
1

Sudo hdparm -I /dev/sdX | grep Genを実行すると、SATAドライブで次のような出力が得られます。取得できませんIDEまたはSCSIでテストできますが、SATAの速度が異なるため、それらは異なるはずです。

`Sudo hdparm -I/dev/sda | grep Gen

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