Как установить Lshw в Linux и использовать его для поиска информации об оборудовании

Kak Ustanovit Lshw V Linux I Ispol Zovat Ego Dla Poiska Informacii Ob Oborudovanii



Lshw — это инструмент командной строки Linux для поиска информации об установленном оборудовании вашего компьютера/сервера. Lshw может сообщать материнскую/системную плату, процессор, память, диск, PCIE, USB и другую информацию об оборудовании.

Lshw доступен в каждом дистрибутиве Linux. Таким образом, вы можете использовать один и тот же инструмент для поиска необходимой информации об оборудовании в каждом дистрибутиве Linux.







В этой статье мы покажем вам, как установить lshw в популярных дистрибутивах Linux и использовать его для поиска информации об оборудовании.



Тема содержания:

Установка Lshw в Ubuntu/Debian/Linux Mint/Kali Linux

Lshw доступен в официальном репозитории пакетов Ubuntu/Debian/Linux Mint/Kali Linux. Таким образом, вы можете легко установить его на свой компьютер/сервер.



Сначала обновите кеш репозитория пакетов APT с помощью следующей команды:





$ судо подходящее обновление



Чтобы установить lshw, выполните следующую команду:

$ судо подходящий установить и т. д.

Lshw должен быть установлен в вашей системе Ubuntu/Debian/Linux Mint/Kali Linux.

Установка Lshw в Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream

Lshw доступен в официальном репозитории пакетов Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream. Таким образом, вы можете легко установить его на свой компьютер/сервер.

Сначала обновите кеш репозитория пакетов DNF с помощью следующей команды:

$ судо dnf makecache

Чтобы установить lshw, выполните следующую команду:

$ судо ДНФ установить и т. д.

Для подтверждения установки нажмите «Y», а затем нажмите <Ввод> .

Lshw должен быть установлен в вашей системе Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream.

Список доступного оборудования с помощью Lshw

Вы можете перечислить все доступное оборудование вашего компьютера/сервера с помощью lshw следующим образом:

$ судо и т. д. -короткий

Все доступное оборудование вашего компьютера/сервера должно быть указано в удобном формате.

Здесь вы найдете следующую информацию:

  1. Аппаратный путь : это физический путь к оборудованию, установленному на вашем компьютере/сервере. Здесь /0 — материнская плата, /0/100 — процессор (подключенный к материнской плате), /0/100/<что-нибудь> — оборудование, подключенное к линиям процессора, и так далее.
  2. Устройство : это присвоенное ядром имя/идентификатор оборудования. Наиболее распространенным примером является имя/идентификатор сетевого устройства, например enp38s0, enp39s0 и т. д.
  3. Сорт : Все оборудование вашего компьютера/сервера принадлежит к определенной группе/классу. Например, сетевые устройства группируются по сетевому классу, устройства хранения данных — по классу хранилища и т. д. Класс оборудования можно использовать для фильтровать вывод lshw .
  4. Описание : Это краткое описание соответствующего оборудования.

Если вы хотите просмотреть информацию о шине оборудования вместо пути к оборудованию (путь к аппаратному обеспечению), запустите команду lshw следующим образом:

$ судо и т. д. -businfo

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

Информация о шине различного оборудования будет отображать информацию в разных форматах:

  • Процессор : идентификатор шины процессоров будет указан в формате cpu@ ,<логическийcpu>. Например, процессор cpu@0 (в моем случае процессор AMD Ryzen 9 3900X) имеет идентификатор 0. На большинстве настольных компьютеров и ноутбуков у вас будет только один процессор и одна запись ЦП — «cpu@0».
  • PCIE-устройства: Идентификатор шины PCIE-устройств будет указан в pci@<домен>:<шина>:<слот>.<функция > Номер <слота> также называется номером <устройства>. Например, устройство PCIE pci@0000:26:00.0 (в нашем случае гигабитное сетевое устройство I211) имеет домен 0000, шину 26, слот/устройство 00 и функцию 0. Идентификаторы шестнадцатеричные и дополнены нулями.
  • SCSI-устройства : Идентификатор шины устройств хранения SCSI будет указан в scsi@<контроллер>:<цель>. .,<раздел > Например, scsi@1:0.0.0 — это устройство хранения данных SCSI/SATA с контроллером 1, целевым объектом 0, идентификатором 0, лунным номером 0 и без разделов. Если устройство хранения данных SCSI/SATA имеет разделы, идентификатор шины будет scsi@1:0.0.0,1 для первого раздела, scsi@1:0.0.0,2 для второго раздела, scsi@1:0.0.0 ,3 для третьего раздела и так далее.
  • USB-устройства : Идентификатор шины USB-накопителей будет указан в usb@<контроллер>:<слот>. Например, usb@3:6.3 — это USB-устройство с контроллером 3, слотом 6 и идентификатором 3. USB@3:1 — это USB-устройство с контроллером 3 и слотом 1.

Фильтрация вывода Lshw с использованием класса оборудования

Lshw присваивает класс каждому аппаратному устройству. Вы можете отфильтровать вывод команды «lshw», чтобы включить только определенные типы оборудования, используя эти имена классов.

Доступные классы оборудования lshw:

  • система : материнская плата и PnP-устройства системы.
  • мост : Устройства внутренней шины, такие как PCIE, хост-мост и т. д.
  • Память : Устройства памяти, такие как BIOS, RAM, ROM, кэши ЦП, встроенное ПО и т. д.
  • процессор : процессоры вашего компьютера и контроллеры SCSI RAID.
  • адрес : Адреса памяти для расширения ПЗУ и видео.
  • хранилище : Контроллер SCSI и IDE.
  • диск : устройства хранения данных с произвольным доступом, такие как HDD, SSD, NVME SSD, CD-ROM, DVD и т. д.
  • объем : разделы вашего диска/устройств хранения данных.
  • лента : Устройства хранения с последовательным доступом, такие как DAT, DDS и т. д.
  • автобус : устройство, подключающее шину USB, SCSI, FireWire и т. д.
  • сеть : сетевые интерфейсы, такие как Ethernet, Wi-Fi и т. д.
  • отображать : устройства отображения, такие как ваш графический процессор.
  • вход : Устройства ввода, такие как клавиатуры, мыши, порты HDMI/DP, аудиопорты HD, кнопка питания, динамик ПК и т. д.
  • принтер : Печатающие устройства, т.е. принтер.
  • мультимедиа : аудио- и видеоустройства, такие как видеокарта (GPU), звуковая карта, выходная плата телевизора и т. д.
  • коммуникация : устройства связи, такие как Bluetooth.
  • власть : Источники энергии, такие как блок питания (PSU), внутренняя батарея и т. д.
  • универсальный : Устройства, которые нельзя классифицировать.

Не на всех компьютерах/серверах будут установлены все классы оборудования. Итак, чтобы узнать классы оборудования вашего компьютера/сервера, мы рекомендуем вам запустить команду «lshw» с опцией «-short» или «-businfo».

$ судо и т. д. -короткий

$ судо и т. д. -businfo

Чтобы отфильтровать вывод команды «lshw» для отображения только определенных типов оборудования (т. е. устройств хранения), используйте опцию «-class» следующим образом:

$ судо и т. д. -businfo -сорт диск

или

$ судо и т. д. -короткий -сорт диск

Как видите, lshw перечислил только те устройства хранения данных (2 твердотельных накопителя Samsung 860 EVO SATA емкостью 500 ГБ), которые установлены на нашем компьютере.

Вы можете использовать опцию «-class» несколько раз для одновременного отображения нескольких типов оборудования с помощью команды «lshw».

Например, чтобы отобразить устройства хранения, а также разделы диска с помощью команды «lshw», дважды используйте опцию «-class» следующим образом:

$ судо и т. д. -businfo -сорт диск -сорт объем

или

$ судо и т. д. -короткий -сорт диск -сорт объем -сорт

Как видите, lshw перечислил устройства хранения, а также их разделы.

Поиск подробной информации об оборудовании с помощью Lshw

Чтобы найти подробную информацию о конкретных типах оборудования (например, сети), запустите lshw с опцией «-class» следующим образом:

$ судо и т. д. -сорт сеть

Как видите, распечатана очень подробная информация обо всех сетевых устройствах, которые установлены на нашем компьютере.

Скрытие конфиденциальной информации из вывода Lshw

По умолчанию команда «lshw» печатает конфиденциальную информацию (например, MAC-адрес сетевых устройств), отображая при этом подробную информацию об оборудовании. Если вам нужно поделиться информацией об оборудовании с другими людьми в Интернете, например, чтобы получить помощь с установкой драйвера, вы можете захотеть скрыть эту конфиденциальную информацию из вывода lshw.

Чтобы скрыть конфиденциальную информацию от подробной информации об оборудовании, вы можете использовать опцию «-sanitize» команды «lshw» следующим образом:

$ судо и т. д. -дезинфицировать -сорт сеть

Как видите, MAC-адреса и IP-адреса удалены с сетевых устройств.

Отображение числовых идентификаторов для устройств PCIe и USB

По умолчанию числовые идентификаторы для устройств PCIe и USB не отображаются в выводе команды «lshw».

Чтобы отобразить числовые идентификаторы устройств PCIe и USB в выводе команды «lshw», используйте опцию «-numeric» следующим образом:

$ судо и т. д. -числовой -сорт сеть

или

$ судо и т. д. -числовой -сорт автобус

Как видите, числовые идентификаторы USB-устройств отображаются в выводе команды «lshw».

Удаление нестабильных временных меток из вывода Lshw

По умолчанию lshw печатает временные метки (данные времени изменения) для дисковых томов и других устройств. Если вы не хотите видеть эти временные метки, запустите команду «lshw» с опцией «-notime» следующим образом:

$ судо и т. д. -нет времени -сорт объем

Как видите, смонтированные данные временной метки удаляются из вывода lshw, где используется опция «-notime».

Экспорт информации об оборудовании с помощью Lshw

Вы можете экспортировать информацию об оборудовании lshw в различные форматы. На момент написания этой статьи lshw может экспортировать информацию об оборудовании в следующих форматах:

  • База данных SQLite
  • HTML
  • XML
  • JSON

Чтобы экспортировать информацию об оборудовании lshw в файл базы данных SQLite, выполните следующую команду:

$ судо и т. д. -свалка ~ / данные / lshw.db &>/ разработчик / нулевой

Как видите, файл базы данных SQLite «lshw.db» создан.

$ лс -левый ~ / данные

Вы можете прочитать файл базы данных «lshw.db» с помощью SQLite и распечатать все таблицы базы данных следующим образом:

$ судо sqlite3 ~ / данные / lshw.db --линия '.таблицы'

Вы можете распечатать информацию о сетевых устройствах из файла «lshw.db» с помощью следующей команды SQLite:

$ судо sqlite3 ~ / данные / lshw.db --линия «ВЫБРАТЬ * ИЗ узлов ГДЕ класс LIKE 'сеть'»

Чтобы экспортировать информацию об оборудовании lshw в файл HTML, выполните следующую команду:

$ судо и т. д. -html > ~ / данные / lshw.html

Если вы также хотите очистить/скрыть конфиденциальную информацию, запустите команду экспорта HTML lshw следующим образом:

$ судо и т. д. -дезинфицировать -html > ~ / данные / lshw.html

Как видите, информация об оборудовании lshw экспортируется в HTML-файл «lshw.html».

$ лс -левый ~ / данные

Вы можете открыть файл «lshw.html» в своем любимом веб-браузере.

$ фаерфокс ~ / данные / lshw.html

Мы открыли файл «lshw.html» в веб-браузере Mozilla Firefox, и информация об оборудовании отображается, как вы можете видеть на следующем снимке экрана:

Чтобы экспортировать информацию об оборудовании lshw в файл XML, выполните следующую команду:

$ судо и т. д. -xml > ~ / данные / lshw.xml

Если вы также хотите очистить/скрыть конфиденциальную информацию, запустите команду экспорта XML lshw следующим образом:

$ судо и т. д. -дезинфицировать -xml > ~ / данные / lshw.xml

Как видите, информация об оборудовании lshw экспортируется в XML-файл «lshw.xml».

$ лс -левый ~ / данные

Мы открыли файл «lshw.xml» в текстовом редакторе Vim, и информация об оборудовании lshw отображается в формате XML, как вы можете видеть на следующем снимке экрана:

$ потому что ~ / данные / lshw.xml

Чтобы экспортировать информацию об оборудовании lshw в файл JSON, выполните следующую команду:

$ судо и т. д. -json > ~ / данные / lshw.json

Если вы также хотите очистить/скрыть конфиденциальную информацию, запустите команду экспорта lshw JSON следующим образом:

$ судо и т. д. -дезинфицировать -json > ~ / данные / lshw.json

Как видите, информация об оборудовании lshw экспортируется в файл JSON «lshw.json».

$ лс -левый ~ / данные

Мы открыли файл «lshw.json» в текстовом редакторе Vim, и информация об оборудовании lshw отображается в формате JSON, как вы можете видеть на следующем снимке экрана:

$ потому что ~ / данные / lshw.json

Параметры lshw -sanitize, -numeric и -notime будут работать для экспорта lshw HTML, XML и JSON, но не для экспорта SQLite. Дополнительную информацию об этих параметрах можно найти в предыдущих разделах этой статьи.

Пример 1. Поиск установленных графических процессоров вашего компьютера/сервера с помощью Lshw

После установки новой операционной системы на ваш компьютер/сервер одна из самых важных задач — это найти графический процессор (видеокарту/процессор), который вы установили на свой компьютер/сервер, и установить для него соответствующий драйвер.

Вы можете найти графические процессоры, установленные на вашем компьютере/сервере, с помощью следующей команды «lshw»:

$ судо и т. д. -сорт отображать

Как видите, на нашем компьютере установлена ​​видеокарта NVIDIA GeForce RTX 4070. [1] . Он использует официальные драйверы NVIDIA (в том виде, в котором мы их установили). [2] . Если на вашем компьютере/сервере установлен графический процессор NVIDIA, но официальные драйверы NVIDIA не установлены, вместо этого вы увидите «driver=nouveau». В этом случае вам придется установить официальные драйверы NVIDIA на свой компьютер/сервер, чтобы иметь возможность использовать все функции и получить максимальную производительность от вашего графического процессора.

Пример 2. Поиск набора микросхем сетевых устройств/интерфейсов с помощью Lshw

Установка правильного сетевого драйвера также является важной частью новой установки Linux. Если не установлены правильные сетевые драйверы, ваши сетевые устройства могут не работать или работать с ограниченной функциональностью (это может привести к очень низкой производительности сети). Чтобы иметь возможность установить правильные сетевые драйверы, вам необходимо знать чипсет ваших сетевых устройств.

Чтобы найти набор микросхем и другую информацию о сетевых устройствах, установленных на вашем компьютере/сервере, выполните команду «lshw» следующим образом:

$ судо и т. д. -сорт сеть

Как видите, на нашем компьютере установлено два сетевых устройства.

Один из них — гигабитный сетевой интерфейс Intel I211. [1] . Ядро Linux дало ему логическое имя enp38s0. [2] . Как видите, он использует чипсет Intel igb (driver=igb). [3] . Итак, чтобы этот сетевой интерфейс работал, вы должны установить драйвер/прошивку Intel igb на свой компьютер/сервер (если он еще не установлен).

Второй — сетевой интерфейс Realtek RTL8125 2,5GbE. [4] . Ядро Linux дало ему логическое имя enp39s0. [5] . Как видите, он использует чипсет Realtek r8169 (драйвер=r8169). [6] . Итак, чтобы этот сетевой интерфейс заработал, вы должны установить драйвер/прошивку Realtek r8169 на свой компьютер/сервер (если он еще не установлен).

У нас также есть USB-устройство Ethernet и адаптер Wi-Fi, подключенный к нашему компьютеру.

Сетевой интерфейс USB 10/100 Мбит/с LAN [1] имеет логическое имя enp42s0f3u6u3 [2] . Как видите, он использует чипсет Realtek r8152 (драйвер=r8152). [6] . Итак, чтобы этот сетевой интерфейс заработал, вы должны установить драйвер/прошивку Realtek r8152 на свой компьютер/сервер (если он еще не установлен).

Сетевой интерфейс Wi-Fi 802.11n[4] имеет логическое имя wlp42s0f3u1[5]. Как видите, он использует чипсет MediaTek mt7601u (driver=mt7601u). [6] . Итак, чтобы этот сетевой интерфейс заработал, вам необходимо установить драйвер/прошивку MediaTek mt7601u на свой компьютер/сервер (если он еще не установлен).

Заключение

Это обширное руководство по lshw. В этой статье мы показали вам, как установить lshw в популярных дистрибутивах Linux (например, Ubuntu, Debian, Linux Mint, Kali Linux, Fedora, RHEL, AlmaLinux, Rocky Linux, CentOS Stream). Мы также показали вам, как составить список аппаратного обеспечения вашего компьютера, отфильтровать выходные данные lshw для отображения определенных типов оборудования и скрыть конфиденциальную информацию об оборудовании из выходных данных lshw. Мы показали вам, как отображать числовой идентификатор для устройств PCIE и USB, а также удалять временные метки из вывода lshw. Мы также показали вам, как экспортировать информацию об оборудовании lshw в базу данных SQLite, форматы HTML, XML и JSON и читать ее. Наконец, мы показали вам, как найти графический процессор и сетевые устройства, которые вы установили на свой компьютер, а также набор микросхем, который используют сетевые устройства, с помощью lshw, чтобы помочь вам с правильной установкой драйвера/прошивки.

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