Назад | Перейти на главную страницу

узнать, является ли диск IDE или SATA

Мне нужно узнать, является ли диск IDE или SATA (или что-то еще, возможно). Я знаю, что это устройство / dev / sda, поэтому я думаю, что это SATA, но не знаю, могу ли я быть уверен только по имени. Я попытался посмотреть dmesg, и он всегда говорит "SCSI", но я уверен, что это не так ...

Любые идеи?

Интересный вопрос. 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

Затем я нашел dmesg вывод для "ata3" и нашел серийный номер:

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 мог бы сделать все это в одной строке, но это должно быть довольно надежно. Если есть сомнения, я бы проверил серийный номер на веб-сайте производителя, как предложил Мэдхаттер.

Я бежал так же dmesg | grep -i SATA в Ubuntu, запущенной на виртуальной машине VMware (которая обрабатывает виртуальные диски как SCSI) и сервере с дисками SCSI; оба ничего не вернули.

Один довольно надежный метод - использовать lshw для поиска номера модели, а затем поиск номера модели в Google, чтобы узнать, что это за тип устройства. Этот метод не работает, если диск находится в корпусе USB, некоторые контроллеры USB скрывают от вас информацию HD.

Итак, для этой системы вы должны выполнить поиск по ST31500341AS. и обнаружил, что это диск SATA емкостью 1,5 ТБ.

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

Посмотрите кабели / разъемы или посмотрите dmesg.

Вы не можете полагаться на / dev / hd для дисков PATA. Для современных систем все диски PATA / SATA будут отображаться как / dev / sd, потому что новый уровень ATA использует префикс sd. Вы увидите / dev / hd, только если ваша ОС использует старые устаревшие драйверы ATA.

MadHatter прав в том, что разница в обозначениях будет / dev / hdx по сравнению с / dev / sdx. Но самый верный способ - открыть корпус и посмотреть на кабель. Для этого необязательно выключать машину, в зависимости от системы, на которую вы смотрите, и от того, какое запутанное гнездо кабелей у вас есть вокруг корпуса.

Если систему можно перезагрузить, вы можете использовать Ultimate Boot CD для запуска диагностики жесткого диска, они обычно определяют тип и модель диска. Даже BIOS может сказать вам при перезагрузке, что это за диск.

Если бы это была IDE, она бы очень скорее всего будет отображаться как / dev / hda. Вы могли бы попробовать smartctl -a /dev/sda который предоставит много информации, включая производителя и номер модели; Сделать перекрестную ссылку на сайте производителя обычно довольно просто.

Я понимаю, что этот пост старый (Linux теперь объединяет диски IDE / PATA с / dev / sd?), Но самый простой способ сделать это в настоящее время -

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

Это дает следующий вывод для системы с одним диском SATA и одним диском PATA:

/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 

Если ты бежишь 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)`