В Linux есть несколько замечательных утилит для получения подробной информации об аппаратных компонентах компьютера. Вы получить список компонентов компьютера и сведения об их характеристиках.
lshw
сообщает о конфигурации памяти, версиях прошивки, конфигурации материнской платы, версии и скорости процессора, конфигурации кэша, скорости шины, аппаратных связях, подключенных устройствах, разделах и файловых системах;
hwinfo
выводит сведения о мониторе компьютера, RAID-массивах, конфигурации памяти, процессоре, прошивке, конфигурации материнской платы, кэшах, скоростях шины, подключенных устройствах, разделах и файловых системах.
Команда lsusb
проверяет шины USB и выводит информацию о подключенных к ним устройствах.
lspci
проверяет шины PCI и выводит информацию о подключенных к ним устройствах.
lsblk
перечисляет физические диски, разделы и файловые системы.
Команда lscpu
выводит информацию о процессоре.
Сбор информации с помощью команды lshw
sudo lshw
ubik-ms
description: Desktop Computer
product: MS-7C94 (To be filled by O.E.M.)
vendor: Micro-Star International Co., Ltd.
version: 1.0
serial: To be filled by O.E.M.
width: 64 bits
Вы получите список в несколько сотен строк, включающий версию прошивки, установленные драйверы, поддерживаемые возможности, серийные номера, номера версий и информацию о шине. Команда lshw не проверяет устройства, подключенные через беспроводной интерфейс, например беспроводной принтер или смартфон, подключенный через Bluetooth, но сообщит об имеющихся беспроводных интерфейсах и интерфейсах Bluetooth.
В виде дерева путей к оборудованию:
sudo lshw -short
system MS-7C94 (To be filled by O.E.M.)
/0 bus MAG B550M MORTAR WIFI (MS-7C94)
/0/0 memory 64KiB BIOS
/0/11 memory 16GiB System Memory
/0/11/0 memory 3200 MHz (0,3 ns) [empty]
/0/11/1 memory 8GiB DIMM DDR4 Synchronous Unbuffered
/0/11/2 memory 3200 MHz (0,3 ns) [empty]
/0/11/3 memory 8GiB DIMM DDR4 Synchronous Unbuffered
/0/13 memory 384KiB L1 cache
/0/14 memory 3MiB L2 cache
/0/15 memory 16MiB L3 cache
/0/16 processor AMD Ryzen 5 5600G with Radeon Graphics
Столбец H/W path
содержит аппаратные пути, аналогичные путям в файловой системе. /0
— это /system/bus
, что означает компьютер и материнскую плату. Все последующие записи отображаются в виде дерева, похожего на дерево файлов. Как можно видеть в выводе примера, /0/0
— это /system/bus/BIOS memory
, /0/11/0
— первый слот ОЗУ, а /0/11/1
— второй слот ОЗУ. Эти пути соответствуют физическим соединениям на материнской плате и обычно называются слотами или разъемами, хотя большинство из них жестко впаяны в материнскую плату и не имеют разъемов, в которые можно было бы вставлять карты расширения.
Или представление по шинам:
sudo lshw -businfo
cpu@0 processor AMD Ryzen 5 5600G with Radeon Graphics
pci@0000:00:00.0 bridge Renoir/Cezanne Root Complex
pci@0000:00:00.2 generic Renoir/Cezanne IOMMU
pci@0000:00:02.1 bridge Renoir/Cezanne PCIe GPP Bridge
Преобразуйте вывод в формат HTML, XML или JSON и сохраните его в файл, чтобы потом обработать полученные результаты с помощью своих любимых сценариев анализа:
sudo lshw -html -class bus -class cpu | tee lshw.html
sudo lshw -xml -class printer -class display -class input | tee lshw.xml
sudo lshw -json -class storage | tee lshw.json
Добавьте параметр -sanitize
, чтобы исключить из вывода конфиденциальную информацию, такую как IP-адреса и серийные номера, чтобы потом ее без опаски можно было передать службе технической поддержки:
sudo lshw -json -sanitize -class bus -class cpu | tee lshw.json
Главная страница Hardware Lister (lshw)
https://www.ezix.org/project/wiki/HardwareLiSter
Определение оборудования, включая дисплеи и дисковые массивы RAID, с помощью команды hwinfo
Команда hwinfo сообщает подробные сведения об оборудовании, включая дисплеи и массивы RAID. Следующий пример демонстрирует получение информации о дисплее:
hwinfo --monitor
Hardware Class: monitor
Model: "VIEWSONIC VX2450 SERIES"
Vendor: VSC "VIEWSONIC"
Device: eisa 0xe226 "VX2450 SERIES"
Полный вывод включает все поддерживаемые разрешения экрана, дату изготовления, диапазоны синхронизации, тип монитора и частоты обновления.
Еще одна важная функция — обнаружение устройств RAID. По умолчанию команда hwinfo
не пытается обнаруживать их, поэтому используйте параметр --listmd
:
hwinfo --listmd
Можно получить сводку об имеющемся оборудовании:
hwinfo --short
keyboard:
/dev/input/event4 CM Storm QuickFire Rapid keyboard
mouse:
/dev/input/event5 CM Storm QuickFire Rapid keyboard
/dev/input/mice Logitech Optical Wheel Mouse
printer:
Brother Industries MFC-J5945DW
monitor:
VIEWSONIC VX2450 SERIES
graphics card:
Intel Xeon E3-1200 v3/4th Gen Core Processor Integrated
Команда hwinfo
выводит полную и полезную информацию об устройствах. Например, для сетевых интерфейсов она показывает их пути /sys
, драйверы, состояние канала и MAC-адреса. Для приводов компакт-дисков выводятся название модели, номер версии, драйверы, файлы устройств, скорость привода, список функций и информация о наличии диска в приводе.
Определение оборудования PCI с помощью команды lspci
Список всех устройств PCI:
lspci
00:00.0 Host bridge: Intel Corporation 4th Gen Core Processor DRAM Controller
(rev 06)
00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v3/4th Gen
Core Processor Integrated Graphics Controller (rev 06)
00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor
HD Audio Controller (rev 06)
Чтобы получить больше информации, можно увеличить подробность вывода:
lspci -v
lspci -vv
lspci -vvv
Команда lspci
читает информацию с шины PCI, к которой подключены встроенные компоненты на материнской плате, а также карты расширения, вставленные в слоты PCI.
Команда lspci
отображает дополнительную информацию из собственной базы данных идентификаторов оборудования, например производителей, устройств, классов и подклассов. Эта информация хранится в текстовом файле, но в разных дистрибутивах — в разных местах. В Ubuntu он находится в /usr/share/misc/pci.ids
, в Fedora — в /usr/share/hwdata/pci.ids
, а в openSUSE — в /usr/share/pci.ids
.
Аббревиатура PCI расшифровывается как peripheral component interconnect («соединение периферийных компонентов»). PCI — это локальная аппаратная шина, то есть средство, позволяющее различным аппаратным устройствам компьютера взаимодействовать с ядром Linux. Команда lspci
в первую очередь пытается обнаружить контроллеры, шины и некоторые отдельные устройства, в том числе:
- контроллеры SATA;
- аудиоконтроллеры и аудиоустройства;
- видеоконтроллеры и видеоустройства;
- контроллеры Ethernet;
- контроллеры USB;
- контроллеры устройств связи;
- контроллеры RAID;
- интегрированные устройства для чтения карт SD/MMC;
- контроллеры PCI FireWire.
За долгие годы сменилось несколько протоколов PCI. Текущий стандарт — PCIe, PCI Express, опубликованный в 2003 году. Он обратно совместим со всеми устаревшими протоколами PCI и заменяет PCI, PCI-X и AGP.
PCIe существенно отличается от предшествующих протоколов, поскольку, как и AGP, каждое устройство получает свой отдельный канал. Старые протоколы использовали общую параллельную шину и были значительно медленнее.
Параметр -k
показывает используемые, а также доступные модули ядра для каждого устройства. Обычно используемые и доступные модули совпадают, но иногда бывает доступно несколько модулей.
Следующий пример запрашивает данные для контроллера Ethernet:
lspci -kd ::0200
00:19.0 Ethernet controller: Intel Corporation Ethernet Connection (2) I218-V
Subsystem: ASRock Incorporation Ethernet Connection (2) I218-V
Kernel driver in use: e1000e
Kernel modules: e1000e
Вывод списка разделов и жестких дисков с помощью команды lsblk
list block devices — «список блочных устройств»
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
vda 252:0 0 30G 0 disk
├─vda1 252:1 0 1M 0 part
└─vda2 252:2 0 30G 0 part /
Ниже показано, как можно вывести метки файловых систем и идентификаторы UUID выбранного устройства:
lsblk -f /dev/vda
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
vda
├─vda1
│
└─vda2
ext4 1.0 9c32f6b6-779b-4319-b576-165bf47e9034 14.9G 45% /
Список только SCSI-устройств и их типы:
lsblk -S
NAME HCTL TYPE VENDOR MODEL REV TRAN
sda 0:0:0:0 disk ATA ST4000DM000-1F21 CC54 sata
sdb 2:0:0:0 disk ATA SAMSUNG HD204UI 0001 sata
sdc 6:0:0:0 disk Seagate BUP SL 0304 usb
sr0 4:0:0:0 rom ATAPI iHAS424 B GL1B sata
Сочетания sda
и sdb
обозначают жесткие диски SATA, а sdc
— USB-накопитель. В Linux устройства хранения данных, такие как жесткие диски SATA и флеш-накопители, обслуживаются драйвером SCSI. Сочетания sr0, rom и ATAPI иденифицируют проигрыватель CD/DVD.
MAJ:MIN
обозначает старший и младший номера. Старший определяет категорию, например, 8 соответствует устройствам sd, а младший обозначает каждое устройство в последовательности. (Запуститеlsblk -l
, чтобы увидеть древовидную иерархию устройств.)RM
сообщает, является ли это устройство съемным, значение 1 в данном столбце соответствует съемным устройствам.SIZE
— размер блочного устройства.RO
= 0 означает, что устройство доступно не только для чтения, а 1 — только для чтения. Привод CD/DVD sr0 доступен для чтения и записи, но командаlsblk
не может сказать, доступен ли для записи сам диск в устройствеsr0
.TYPE
определяет тип диска.MOUNTPOINT
показывает пути к смонтированным устройствам.
Получение информации о процессоре
lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 40 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Caches (sum of all):
L1d: 128 KiB (4 instances)
L1i: 128 KiB (4 instances)
L2: 8 MiB (2 instances)
L3: 16 MiB (1 instance)
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0-3
Как показано в предыдущем примере, процессор имеет четыре кэша. Используйте параметр -C
, чтобы получить больше информации о кэше:
lscpu -C
NAME ONE-SIZE ALL-SIZE WAYS TYPE LEVEL SETS PHY-LINE COHERENCY-SIZE
L1d 32K 128K 8 Data 1 64 1 64
L1i 32K 128K 8 Instruction 1 64 1 64
L2 4M 8M 16 Unified 2 4096 1 64
L3 16M 16M 16 Unified 3 16384 1 64
Здесь можно видеть четыре кэша, используемых четырьмя физическими ядрами процессора. Кэш L1i предназначен для кэширования инструкций процессора, а L1d — данных. L2 и L3 хранят только данные.
Источники
Комментарии в Telegram-группе!