Долгое время информация о железе на машине с уже установленным 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 в помощь!
Но это только основные данные. Я сильно надеюсь, что мне удалось заинтриговать вас. Реально, параметров ещё больше, так что стоит один раз посмотреть вывод этой полезной утилиты — узнаете много нового и интересного о своём компьютере 🙂
>>> Я сильно надеюсь, что мне удалось заинтриговать вас.
А уж мы вас как заинтригуем! 🙂
С вами скучно. Что ни напиши — уже где-то кто-то что-то похожее делал 🙂
Но, увы, dmidecode не может показать product number в таком аппарате как например HP ProLiant DL360 G5 , а это иногда нужно…
Увы. Не все производители поддерживают DMI в полном объёме. Вот, тоже, например: