Исследуем аппаратуру на удалённом Linux-боксе (dmidecode)

dmidecode - определение аппаратуры под linuxДолгое время информация о железе на машине с уже установленным (ну, например, на удалённом хосте) была почти что “тайной за семью печатями”. Хотя я пользовался для определения данных об аппаратуре в Linux разными “кустарными” способами: часть информации можно вытянуть из /proc/cpuinfo и /proc/meminfo, часть — из lspci, часть — из hdparm. Многие вещи (версия BIOS, информация о памяти) вообще требовали перезагрузки компьютера и входа в CMOS setup или вскрытия корпуса, поэтому в случае удалённой машины были невозможны.

Очень хорошо, что я вовремя узнал про dmidecode. Вообще, DMI (Desktop Management Interface) — это интерфейс, позволяющий собирать данные о “железе”. А dmidecode — программа, которая с этим интерфейсом взаимодействует. В Linux утилита dmidecode обычно входит в состав дистрибутива (я, по крайней мере ещё не сталкивался с дистрибутивами, где бы её не было. Но, если что, исходники dmidecode можно с его домашней страницы). В портах есть версия и для FreeBSD.Что касается железа: единственное условие — BIOS компьютера должен иметь расширение SMBIOS. Его имеют практически все современные машины (работая по инвентаризации парка машин на работе я добирался до “древних” P-III — на них всё работало. Ради любопытства запустил на Pentium MMX-200 — не пошла, сказала “No SMBIOS nor DMI entry point found, sorry” Вот P-II для  эксперимента я не нашёл, поэтому ничего не могу сказать.

Использовать утилиту очень просто:

dmidecode|less

Так как вывод на экран очень обширный и пролистывать придётся много. Ключи у dmidecode есть, они главным образом упорядочивают вывод на экран по категориям.

Итак, что же можно узнать “в ходе допроса свидетеля”?

  • BIOS: версию, производителя, дату, размер, характеристики (что поддерживает, что — нет), даже языки
  • Платформу: производителя (в худшем случае материнской платы, в брэндовом — всей системы), серийный номер (не всегда), версию. Для некоторых брендов — даже высота стоечного корпуса в юнитах и количество вентиляторов
  • Материнская плата: чипсет, версия, серийник. На некоторых моделях матерей — даже (!) разъёмы для обнуления CMOS и/или пароля на BIOS
  • Процессор(ы): сокет, семейство, производитель, модель, степпинг, поддерживаемые флаги, версию, вольтаж питания, частоту (максимальную и текущую), тип и размер кэша L1, L2, L3
  • Контроллер памяти
  • Порты: COM, PS, Parallel, IDE, SATA
  • Память: общий объём, количество модулей, их тип, скорость, производителя (если повезёт), размер, занятые/свободные слоты
  • Слоты: тип — PCI, PCI-E, количество, вольтаж
  • Периферия: сетевые карты, . Как минимум, можно узнать производителя и модель, а дальше — Google в помощь!

Но это только основные данные. Я сильно надеюсь, что мне удалось заинтриговать вас. Реально, параметров ещё больше, так что стоит один раз посмотреть вывод этой полезной утилиты — узнаете много нового и го о своём компьютере 🙂

Исследуем аппаратуру на удалённом Linux-боксе (dmidecode): 4 комментария

    • Увы. Не все производители поддерживают DMI в полном объёме. Вот, тоже, например:

      System Information
              Manufacturer: FUJITSU SIEMENS
              Product Name: PRIMERGY RX100S2
              Version: Revision A2
              Serial Number: 0123456789

Добавить комментарий для virens Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *