Отримання відомостей про обладнання в командному рядку linux

nbsp nbsp Найбільш повну інформацію про комп'ютерному обладнанні в Linux, можна отримати використовуючи утиліту dmidecode. відображає дані зі структури SMBIOS, що включає таблиці, що містять записи про кожного з пристроїв, виявлених в даний момент часу. Для використання можливостей утиліти потрібні права root

Утиліта dmidecode - відображення вмісту таблиць DMI комп'ютера.

Утиліта dmidecode дозволяє витягти записи з бази даних DMI і відобразити їх у необхідному вигляді. Командна строка:

Параметри командного рядка:

-d, --dev-mem FILE - задати пристрій для читання даних DMI (за замовчуванням - / dev / mem)

-h, --help - відобразити довідку.

-q, --quiet - мінімальна деталізація інформації, що відображається DMI

-s, --string KEYWORD - відображати тільки дані DMI, відповідні введеному ключовому слову. Перелік допустимих ключових слів можна отримати ввівши dmidecode -s

-t, --type TYPE - відображати тільки дані зазначених типів. Перелік типів можна отримати по команді dmidecode -t-u, --dump - НЕ розшифровувати ці дані. Відображаються тільки заголовки записів і шістнадцяткові значення полів.

--dump-bin FILE - запис дампа даних DMI в файл.

--from-dump FILE - зчитування і обробка даних з раніше збереженого дампа даних DMI.

-V, --version - відобразити версію програми і завершитися.

При запуску dmidecode без параметрів, відображається версія програми, загальна інформація бази DMI, і розшифроване вміст окремих записів. Приклад загальної інформації:

Довше відображається розшифрована інформація окремих записів:

Інформація кожного запису починається з дескриптора Handle. типу записи DMI Type і її розміру в байтах. Утиліта витягує дані записів, декодує їх і представляється у вигляді звичайного тексту, що дозволяє отримати відомості про поточний обладнанні комп'ютера. Як видно з наведених результатів виконання dmidecode. обсяг інформації, що відображається цілком достатній для отримання практично всіх технічних характеристик використовуваного комп'ютерного обладнання.

Нерідко потрібно отримати не всю інформацію, що міститься в таблицях DMI, а тільки ту, що має відношення до конкретного пристрою або класу пристроїв, для чого передбачена можливість вказівки типу даних з використанням параметра -t. В якості типу даних може бути використано або числове значення дескриптора Handle. або спеціальне ключове слово. Допустимі ключові слова для типів даних, що задаються параметром -t:

bios - відомості про BIOS

system - відомості про перемикачах системної плати.

baseboard - відомості про материнську плату.

chassis - відомості про перемикачах і датчиках шасі.

processor - відомості про центральний процесор (про процесори для багатопроцесорних систем).

memory - відомості про оперативну пам'ять.

cache - відомості про кеш-пам'яті.

connector - відомості про роз'єми контролерів периферійних пристроїв.

slot - відомості про роз'єми PCI / PCI-Express

Нижче наведені приклади виконання команди dmidecode для різних типів даних.

dmidecode -t processor - відобразити дані DMI про процесорах.

dmidecode -t connector - відобразити дані DMI, що відносяться до типу "connector", тобто інформацію про роз'єми периферійного обладнання.

При використанні числових значень дескрипторів. тип даних DMI можна вказувати відповідно до таблиці.

Можливо вказівку кількох номерів дескрипторів в одній команді:

dmidecode -t 4,6 - відобразити вміст записів DMI для процесора (тип 4) і модулів пам'яті (тип 6)


Сукупність виведених утилітою даних дозволяє визначити параметри обладнання, які не відображаються в явному вигляді. Наприклад, наступна інформація про процесор

говорить про те, що перебуває в режимі Hyper-threading. Якби він був вимкнений, то значення Thread Count збігалося б із значенням Core Enabled

Утиліта lshw - відобразити склад обладнання комп'ютера.

Утиліта lshw (Hardware Lister) менш інформативна, ніж розглянута вище dmidecode. але дозволяє отримати відомості про обладнання комп'ютера в різних форматах, в т.ч. в XML і HTML, а також має підтримку графічного інтерфейсу користувача (GUI). Утиліта використовує дані з таблиць DMI, конфігураційних файлів, модулів ядра і драйверів.

Формат командного рядка:

lshw [-format] [-options. ]
lshw -version

Параметри командного рядка:

-version - відобразити інформацію про версії програми.

-format - формат даних, що виводяться. Допустимі формати:

-html - вивести інформацію про обладнання комп'ютера в форматі HTML
-xml - вивести інформацію про обладнання комп'ютера в форматі XML
-short - відобразити список пристроїв в короткому форматі, без описів.
-businfo - відобразити інформацію про шини.
-X - використовувати графічний інтерфейс

-options - додаткові параметри:

-dump OUTFILE - видати дамп інформації в файл у форматі SQLite.
-class CLASS - відобразити тільки інформацію про пристрої даного класу.
-C CLASS - те саме, що і '-class CLASS'
-c CLASS - те саме, що і '-class CLASS'
-disable TEST - не використовувати дані про перевірку обладнання. Поле "test" може приймати значення

lshw - відобразити повну інформацію про обладнання в текстовому форматі.

lshw -xml -Відобразити інформацію в XML-форматі.

lshw -html> hardware.html - вивести інформацію про обладнання в форматі HTML в файл hardware.html

lshw -dump / tmp / lshwsql - виконати вивантаження інформації про обладнання в файл / tmp / lshwsql в форматі SQLite

lshw -class network - відобразити інформацію про мережеві пристрої. Допустимі класи пристроїв можна дізнатися за результатами виконання команд lshw -short або lshw -businfo

lshw -c storage - відобразити інформацію про пристрої зберігання даних (класу "storage")

lshw -C processor -disable dmi - вивести інформацію про процесорах без використання даних dmi Для порівняння, спробуйте виконати дану команду без параметра -disable dmi

lshw -X - запустити утиліту з підтримкою графічного інтерфейсу.

Отримання відомостей про обладнання в командному рядку linux

Інші команди Linux для отримання відомостей про обладнання.

Деякі відомості про обладнання можна отримати з файлів каталогу / proc:

cat / proc / devices - інформація про типи пристроїв.

cat / proc / diskstats - інформація про дискових пристроях.

cat / proc / dma - інформація про режим роботи контролера прямого доступу до пам'яті.

cat / proc / ioports - інформація про порти введення-виведення.

cat / proc / meminfo - інформація про оперативну пам'ять.

cat / proc / cpuinfo - інформація про процесори ..

Крім того, існують спеціальні команди для відображення інформації про окремі типи пристроїв:

lscpu - відобразити інформацію про процесорах.

lshal - відобразити інформацію про обладнання у вигляді дампа глобального списку пристроїв (Global Device List).

lsusb - відобразити інформацію про USB-пристроях.

lsscsi - відобразити інформацію про пристрої SCSI.

lspci - відобразити інформацію про пристрої на шинах PCI / PCI - Express.

lspcmcia - відобразити інформацію про пристрої на шині PCMCIA.

lsblk - відобразити інформацію про блокові пристроях (гнучких і жорстких дисках, розділах і точках монтування).

Інформація, що отримується за допомогою перерахованих вище команд, носить більш загальний характер, в порівнянні з тією, що може бути отримана за допомогою утиліти dmidecode. Для порівняння, приклад інформації про процесорах, отриманої при використанні команди lscpu

Як видно з наведеної інформації, для отримання детальних технічних характеристик обладнання комп'ютера, найбільш прийнятні дані, одержувані в результаті виконання утиліти dmidecode. а для відображення загальних характеристик процесорів - команда lscpu. Наприклад, в скриптах, при використанні в ланцюжку з командою grep. можна виділяти окремі елементи з виведення lscpu:

lscpu | grep L2 - отримати розмір кеш другого рівня процесора.

lscpu | grep Arch - отримати інформацію про архітектуру процесора.

По темі обладнання в Linux також є константи: