Как я коррелирую/dev/sd устройства к аппаратным средствам, которые они представляют?

Можно взглянуть на RecordMyDesktop или Freeeseer.

36
10.06.2012, 01:49
7 ответов

Можно заглянуть /sys/block:

-bash-3.2$ ls -ld /sys/block/sd*/device
lrwxrwxrwx 1 root root 0 Jun  8 21:09 /sys/block/sda/device -> ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0
lrwxrwxrwx 1 root root 0 Jun  8 21:10 /sys/block/sdb/device -> ../../devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0
lrwxrwxrwx 1 root root 0 Jun  8 21:10 /sys/block/sdc/device -> ../../devices/pci0000:00/0000:00:1f.2/host2/target2:0:0/2:0:0:0
lrwxrwxrwx 1 root root 0 Jun  8 21:10 /sys/block/sdd/device -> ../../devices/pci0000:00/0000:00:1f.2/host3/target3:0:0/3:0:0:0

Или если Вы не имеете /sys, можно посмотреть на /proc/scsi/scsi:

-bash-3.2$ cat /proc/scsi/scsi 
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: ST31000340AS     Rev: SD1A
  Type:   Direct-Access                    ANSI SCSI revision: 05
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: ST31000340AS     Rev: SD1A
  Type:   Direct-Access                    ANSI SCSI revision: 05
Host: scsi2 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: ST31000340AS     Rev: SD1A
  Type:   Direct-Access                    ANSI SCSI revision: 05
Host: scsi3 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: ST31000340AS     Rev: SD1A
  Type:   Direct-Access                    ANSI SCSI revision: 05
Host: scsi4 Channel: 00 Id: 00 Lun: 00
  Vendor: PepperC  Model: Virtual Disc 1   Rev: 0.01
  Type:   CD-ROM                           ANSI SCSI revision: 03
22
27.01.2020, 19:36
  • 1
    Потрясающий, я имею /sys/ (а также /proc/) Много большой информации там. Все еще потребление его. –  Wesley 09.06.2012, 00:24
  • 2
    Кроме того, смотрите на/dev/disk/by-path (предполагающий, что Ваш udev поддерживает его). Конечно, операция в секунду не делает, так... –  derobert 09.06.2012, 00:39
hdparm -i /dev/sdb

Это должно дать Вам номер модели и порядковый номер диска.

14
27.01.2020, 19:36
  • 1
    Это работало бы на большинство ситуаций, я верю. Однако по некоторым причинам контроллер в этом сервере является поверхностным. Выполнение той команды зарабатывает для меня это: HDIO_GET_IDENTITY failed: Invalid argument –  Wesley 09.06.2012, 00:19
  • 2
    smartctl -i стоит попробовать, также. Работы над дисками SCSI, тогда как hdparm часто не будет. –  derobert 09.06.2012, 00:41
  • 3
    Не работает с Хорошим USB drices –  Mads Skjern 30.07.2015, 18:17

Как неподражаемый Gilles упомянул в этом ответе его, если Ваше ядро использует udev можно использовать udevadm управляйте для опроса устройства:

udevadm info -n /dev/sda -a

(К сожалению, в некоторых случаях [вдвойне печальный то, что это верно в этом случае для меня] udev, не используется, и/или udevadm не доступен.)

12
27.01.2020, 19:36

Если Вы видите Вовлеченный диск или слушаете дисковый шум, можно работать

sudo cat /dev/sdb >/dev/null

и посмотрите, какой диск внезапно становится непрерывно активным. Или, если Вы идете шумом,

sudo find /mount/point >/dev/null

который заставит головы переместить больше (может быть лучше не сделать это на сбойном диске и вместо этого использовать процесс устранения с другими дисками).

8
27.01.2020, 19:36
  • 1
    , который я рассмотрел, как заставить световые сигналы идти blinky-blinky, таким образом, это - ответ на то мое любопытство. =) –  Wesley 09.06.2012, 00:20
  • 2
    Некоторые диски имеют дополнительный светодиод для этого, но они обычно только находятся в дисках корпоративного класса (чтение, причудливо дорогое на относительно низкой мощности). Не знайте, как работать они светодиод, но dd обманите обычно работает достаточно хорошо. –  jippie 09.06.2012, 00:24
  • 3
    @WesleyDavid, Даже при отсутствии светодиодов, слушание шума может быть последним обращением за помощью. Нет никакой потребности использовать dd здесь (ни при большинстве обстоятельств), cat или любая другая программа, которая читает из файла, сделает. спасибо –  Gilles 'SO- stop being evil' 10.06.2012, 01:55

Принятием этого является Linux, самая очевидная вещь состоит в том, чтобы проверить dmesg на то, где ядро сначала инициализирует устройство. Это регистрирует модель диска.

4
27.01.2020, 19:36
  • 1
    Проверьте unix.stackexchange.com/questions/39886 / … для получения дополнительной информации. –  jippie 09.06.2012, 00:16
  • 2
    Да, это - Linux. Конкретно Debian 4. Я проверил dmesg, но не видел упоминания о модели диска, странно. Возможно, я неправильно читаю его. –  Wesley 09.06.2012, 00:24

У меня есть 4 метода. Первый является самым легким:

dmesg | egrep "sd[a-z]"

Для других я не уверен, нужен ли им/dev/disk за исключением этого:

ls -lF /dev/disk/by-uuid

Другие:

blkid -o list -c /dev/null

И очевидное:

fdisk -l
4
27.01.2020, 19:36

Вот несколько известных мне способов найти имя SCSI-устройства

  • dmesg | egrep "sd[a-z]"
  • lsblk --scsi (из пакета util-linux >= v2. 22)
  • lshw -C disk
  • ls -ld /sys/block/sd*/device
3
27.01.2020, 19:36

Теги

Похожие вопросы