- 16 команд для проверки аппаратной части компьютера в Linux
- Информация о комплектации компьютера
- 1. lscpu
- 2. lshw – список аппаратных устройств
- 3. hwinfo – информация об аппаратуре компьютера
- 4. lspci – список устройств PCI
- 5. lsscsi — список устройств scsi
- 6. lsusb – подробный список шин и устройств usb
- 7. Inxi
- 8. lsblk — список блочных устройств
- 9. df – дисковое пространство файловых систем
- 10. Pydf – команда df, написанная на языке Python
- 11. fdisk
- 12. mount
- 13. free – проверка оперативной памяти
- 14. dmidecode
- 15. Файлы /proc
- 16. hdparm
- Заключение
- как узнать чипсет проца через линух ?
- Re: как узнать чипсет проца через линух ?
- Re: как узнать чипсет проца через линух ?
- Re: как узнать чипсет проца через линух ?
- Re: как узнать чипсет проца через линух ?
- Re: как узнать чипсет проца через линух ?
- Re: как узнать чипсет проца через линух ?
- Re: как узнать чипсет проца через линух ?
- Re: как узнать чипсет проца через линух ?
- Re: как узнать чипсет проца через линух ?
- Как узнать чипсет материнки ноута
- А что внутри? Получение информации об аппаратном обеспечении компьютера в Linux
- Используемые термины
- Семейство утилит ls
- Что такое SMBIOS?
- Дополнительные утилиты с интерфейсом командной строки
- Утилиты с графическим интерфейсом
- Самостоятельная работа с содержимым файловых систем /proc и /sys
- Заключение
16 команд для проверки аппаратной части компьютера в Linux
Информация о комплектации компьютера
Точно также, как для всего прочего, в вашей системе Linux есть много команд для получения информацию об аппаратной части вашего компьютера. Некоторые команды сообщают информацию только о конкретных компонентах оборудования, например, процессоре или памяти, а другие — выдают информацию сразу о нескольких устройствах.
В данной статье кратко рассказывается о нескольких наиболее часто используемых командах, предназначенных для получения информации и особенностях настройки различных периферийных устройств и компонентах компьютера. Среди рассматриваемых — команды lscpu, hwinfo, lshw, dmidecode, lspci и другие.
1. lscpu
Команда lscpu выдает информацию о процессоре и его составляющих. В ней нет каких-либо дополнительных параметров или функциональных возможностей.
2. lshw – список аппаратных устройств
Утилита общего назначения, которая сообщает подробную и краткую информацию о нескольких различных аппаратных устройствах, таких как процессор, память, диск, контроллеры usb, сетевые адаптеры и т.д. Команда lscpu извлекает информацию из различных файлов /proc.
Если вы хотите больше узнать о команде lshw, то обратите внимание на пост Получаем интфомацию в Linux об аппаратных частях компьютера с помощью команды lshw .
3. hwinfo – информация об аппаратуре компьютера
Утилита hwinfo является еще одной универсальной утилитой зондирования аппаратуры, которая может сообщить подробную и краткую информацию о многих различных аппаратных компонентах, причем может сообщить больше, чем утилита lshw.
4. lspci – список устройств PCI
Команда lspci выдает список всех шин PCI, а также подробную информация об устройствах, которые к ним подключены. Под эту категорию подпадают следующие устройства — адаптер vga, графическая карта, сетевой адаптер, порты usb, контроллеры sata и т.д.
Отфильтруйте информацию о конкретном устройстве с помощью команды grep.
5. lsscsi — список устройств scsi
Выдается список устройств scsi/sata, например, жестких дисков и оптических приводов.
6. lsusb – подробный список шин и устройств usb
Эта команда показывает информацию о контроллерах usb и подробные сведения о подключенных к ним устройствах. По умолчанию выдается краткая информация. Для того, чтобы о каждом порте usb получить подробную информацию, используйте параметр «-v».
В системе, информация о которой приведена выше, один порт usb используется для подключения мыши.
7. Inxi
Inxi является мега скриптом bash, состоящим из 10000 строк кода, с помощью которого из разных источников и команд системы будет получена подробная информация об аппаратном обеспечении и будет создан отчет в виде, позволяющим его читать пользователям, которые не являются техническими специалистами.
8. lsblk — список блочных устройств
Перечисляется информация о всех блочных устройствах, которыми являются разделы жестких дисков и других устройств хранения данных, например, оптических приводов и флэш-накопителей
9. df – дисковое пространство файловых систем
Отчеты о различных разделах, об их точках монтирования и о том, сколько в каждом разделе есть свободного места.
10. Pydf – команда df, написанная на языке Python
Улучшенный вариант команды df , написанной на языке python, который выдает информацию в цвете, что выглядит лучше, чем информация, выдаваемая командой df
11. fdisk
Fdisk является утилитой, предназначенной для изменения разделов жестких дисков, и ей также можно пользоваться для получения информации о списке имеющихся разделов.
12. mount
Команда mount используется для монтирования/демонтирования, а также для просмотра смонтированных файловых систем.
Опять же, используйте команду grep для отфильтровывания информации только о тех файловых системах, которые вам интересны
13. free – проверка оперативной памяти
С помощью команды free проверьте объем используемой, свободной и общий объема оперативной памяти, имеющейся в системе.
14. dmidecode
Команда dmidecode отличается от всех других команд. Она извлекает информацию об оборудовании, читая для этого данные из структур данных SMBOIS (которые также называются таблицами DMI).
Подробности смотрите на странице man.
15. Файлы /proc
Во многих виртуальных файлах каталога /proc содержится информация об аппаратном обеспечении и о конфигурациях. Ниже приведены некоторые из них.
Информация о процессоре/памяти
Информация о Linux/ядре
16. hdparm
Команда hdparm получает информацию об устройствах sata, например, жестких дисков.
Заключение
В каждой из команд используется чуть-чуть иной способ извлечения информации, и вам для, чтобы получить определенную информацию об оборудовании, возможно, потребуется попробовать более одной команды. Но все они есть в большинстве дистрибутивов Linux и их легко можно установить из репозиториев, используемых по умолчанию.
Для тех, кто не хочет запоминать и вводить команды, на рабочем столе есть графические инструментальные средства. Hardinfo и I-nex — некоторые из популярных инструментальных средств, с помощью которых можно получить подробную информацию о большом количестве различных аппаратных компонентов.
Источник
как узнать чипсет проца через линух ?
Re: как узнать чипсет проца через линух ?
А что такое «чипсет проца»?
Re: как узнать чипсет проца через линух ?
эта мегарулезная весчь, появится только 128 битных процессорах, пока есть только в эксперементальных 86 битных, но ядром уже поддерживается, тока тссссс чтобы M$ не празнала, виндекапец накроется.
Re: как узнать чипсет проца через линух ?
чипсет —> чип + сет
множество чипов
самые важные компоненты: северный и южный мосты
sudo lshw
или там lspci
sudo dmidecode
по материнской плате можно определить чипсет
Re: как узнать чипсет проца через линух ?
Взято с opennet.ru
Как не разбирая корпус посмотреть модель материнской платы [исправить]
1. Просмотреть содержимое BIOS (проверял под Linux и FreeBSD) dd if=/dev/mem bs=64k skip=15 count=1 | strings | less в первых строчках обычно упоминается название материнской платы.
2. Воспользоваться утилитой dmidecode
Гы, чипсет проца ;-)))
Re: как узнать чипсет проца через линух ?
хорошо что еще есть люди которые могу понят что спрашивает человек
толково ответить на вопрос
все остальные в лес =)
Re: как узнать чипсет проца через линух ?
«Взято с opennet.ru
Как не разбирая корпус посмотреть модель материнской платы [исправить]
1. Просмотреть содержимое BIOS (проверял под Linux и FreeBSD) dd if=/dev/mem bs=64k skip=15 count=1 | strings | less в первых строчках обычно упоминается название материнской платы.
2. Воспользоваться утилитой dmidecode
Гы, чипсет проца ;-)))»
таки немного не то имел ввиду
конечно спасибо, но немного не то (
как узнать какой камень (где был произведен, какое у него ядро и т/п/)
допустим Athlonы производят в Орлеане, Мунхине и т/п/
зы хочу разогнать проц, желательно знать эту информацию
Re: как узнать чипсет проца через линух ?
>как узнать какой камень (где был произведен, какое у него ядро и т/п/)
Re: как узнать чипсет проца через линух ?
=>
как узнать маркировку не лезя внутрь ?
Re: как узнать чипсет проца через линух ?
Это не чипсет процессора а ядро.
Есть cpuid под линукс и cpu-z, который замечательно работает под wine. =)
Источник
Как узнать чипсет материнки ноута
Имеется ноут Samsung R528 DA-02 с процессором Intel Celeron Dual Core T3100. Хочу его заменить на более производительный. На сайте гнусмаса указан чипсет Intel GL40, но это явно не он, т.к. он поддерживает шину 667MHz и DDR2, а на буке 800MHz и DDR3. Можно как нибудь по данным ниже узнать чипсет? Почему-то мне кажется, что это GM45
Всю простыню не читал.
Я делаю так: качаю даташит конкретной модели ноута, там обычно указывают все доступные для продуктовой линейки процессоры. Обычно для всей линейки одна и та же мать.
Не забудь перешить БИОС.
Может быть в lshw?
а где даташит качнуть?
но это явно не он, т.к. он поддерживает шину 667MHz и DDR2, а на буке 800MHz и DDR3
1. GL40 поддерживает FSB 800MHz и DDR3, по данным википедии http://en.wikipedia.org/wiki/List_of_Intel_chipsets#Core_2_mobile_chipsets
2. dmidecode и lshw клянутся и божатся, что память DDR2 стоит. Могут ошибаться, конечно, посмотри маркировку на памяти.
память на 100% ddr3
Тогда нет повода не доверять самсунгу и считать чипсет отличным от GL40.
Ну тогда, если судить по ссылке максимальный проц T3500 с частотой 2100, что производительности то не прибавит.
Нашел маркировку на материнке:
Чего-то я не понял какой чипсет в этой материнке по схеме
То ли GL40 то ли GM45 то ли PM45
Источник
А что внутри? Получение информации об аппаратном обеспечении компьютера в Linux
Оригинал: What’s in the Box? Interrogate Your Linux Machine’s Hardware
Автор: Federico Kereki
Дата публикации: 16 февраля 2016 г.
Перевод: А. Панин
Дата перевода: 17 мая 2016 г.
Недавно я столкнулся с проблемой при установке драйвера для видеокарты производства NVIDIA. Оказалось, что в последней версии драйвера была прекращена поддержка моей видеокарты, поэтому после обновления версии ядра ОС я оказался без работающего видеодрайвера. Разумеется, тогда мне нужно было вспомнить ответ на один простой вопрос: «видеокарту какой модели я использую?». Но, к сожалению, я уже не помнил этого. Если вам нужно узнать название чипсета вашей материнской платы, модель центрального процессора или получить какую-либо другую информацию об аппаратном обеспечении вашего компьютера в Linux, вы всегда можете воспользоваться несколькими специализированными утилитами. В моем случае удалось достаточно быстро получить информацию о модели установленной видеокарты, выяснить, что ее использование будет связано с некоторыми проблемами в будущем и принять решение о целесообразности покупки новой.
В рамках данной статьи я постараюсь описать некоторые способы получения информации об аппаратном обеспечении вашей машины. Я продемонстрирую классические приемы работы с некоторыми утилитами с интерфейсом командной строки, но если вы предпочитаете использовать утилиты с графическим интерфейсом, вы также сможете найти в данной статье описания нескольких таких утилит. Если же вы желаете получить доступ к низкоуровневым интерфейсам для получения информации об аппаратном обеспечении, данная статья также будет небезынтересной для вас, ведь я буду упоминать о некоторых файлах виртуальных файловых систем /proc и /sys, содержащих данную информацию.
Используемые термины
В процессе работы с аппаратным обеспечением вы наверняка столкнетесь с некоторыми акронимами, причем я не могу не признать тот факт, что я использовал некоторые из них, даже точно не помня об их значении. Это список акронимов, которые вам несомненно понадобятся:
- ACPI (Advanced Configuration and Power Interface — усовершенствованный механизм управления конфигурацией и питанием): интерфейс для управления различными аспектами работы системы электропитания компьютера.
- AGP (Accelerated Graphics Port — ускоренный графический порт): порт, позволяющий подключить графическую карту (практически не используется после 2008 года).
- APM (Advanced Power Management — расширенный механизм управления электропитанием): интерфейс, использовавшийся до появления ACPI, также предназначенный для управления различными аспектами работы системы электропитания компьютера.
- ATA (AT Attachment — интерфейс подключения накопителей): стандарт «AT» из эры IBM AT, описывающий технологию подключения устройств хранения данных к машине, который был заменен на стандарт SATA в 2003 году.
- BIOS (Basic Input/Output System — базовая система ввода-вывода): прошивка, используемая в процессе загрузки Intel-совместимого персонального компьютера.
- DMA (Direct Memory Access — технология прямого доступа к памяти): технология, позволяющая аппаратному обеспечению использовать оперативную память независимо от центрального процессора.
- DMI (Desktop Management Interface — интерфейс доступа к данным аппаратного обеспечения для настольных систем): фреймворк для получения информации об устройствах компьютера.
- IDE (Integrated Drive Electronics — интерфейс подключения накопителей): стандарт, описывающий технологию подключения устройств хранения данных к машине, который позднее эволюционировал в ATA.
- IRQ (Interrupt ReQuest — запрос прерывания): аппаратный сигнал, который позволяет обработчику прерываний обработать определенное событие.
- PCI (Peripheral Component Interconnect — шина взаимосвязи периферийных компонентов): стандарт шины ввода-вывода для подключения различных периферийных устройств к компьютеру, разработанный в 1992 году.
- UEFI (Unified EFI — Extensible Firmware Interface — интерфейс расширяемой прошивки): разработанный в 2005 году стандарт прошивки, предназначенной для замены прошивки BIOS, который пришел на смену разработанному в 1998 году стандарту EFI.
- USB (Universal Serial Bus — универсальная последовательная шина): стандарт шины ввода-вывода, разработанный в 1995 году для предоставления возможности подключения к компьютеру периферийных устройств всех типов.
- PATA (Parallel ATA — параллельный интерфейс подключения накопителей): новое название стандарта ATA, введенное в обиход после появления стандарта SATA.
- PCIe (PCI Express — шина взаимосвязи периферийных компонентов третьего поколения): стандарт высокоскоростной последовательной шины, пришедший на смену стандартам PCI и AGP в 2004 году.
- RAID (Redundant Array of Independent (Inexpensive) Disks — избыточный массив независимых (недорогих) дисков): технология виртуализации хранилища данных, позволяющая комбинировать несколько дисков в рамках одного виртуального накопителя с целью повышения производительности или избыточности хранения данных. Существует несколько схем RAID, таких, как RAID 0 («массив с чередованием»), RAID 1 («зеркальный массив»), RAID 5 («массив с чередованием без выделенного диска для данных четности») и RAID 10 («зеркальный массив с чередованием»).
- SATA (Serial ATA — последовательный интерфейс подключения накопителей): интерфейс для подключения устройств хранения данных, который используется в данное время практически во всех компьютерах.
- SCSI (Small Computer System Interface — системный интерфейс для малых компьютеров, произносится «скази»): набор стандартов, описывающих технологию соединения устройств и передачи данных между компьютерами и периферийными устройствами.
Семейство утилит ls
Давайте начнем рассмотрение утилит с интерфейсом командной строки с нескольких утилит, имена которых начинаются с «ls» (Таблица 1). Некоторые из этих утилит позволяют получить информацию, которая предоставляется другими утилитами (например, lsdev и lshw ), однако, для получения исчерпывающей информации об аппаратном обеспечении компьютера рекомендуется использовать все приведенные в таблице утилиты.
Таблица 1. Утилиты из семейства ls позволяют получить доступ к информации обо всем аппаратном обеспечении компьютера
Утилита | Описание |
---|---|
lsblk | Выводит информацию обо всех блочных устройствах, таких, как жесткие диски, приводы DVD, а также других подобных устройствах. |
lscpu | Выводит информацию о количестве центральных процессоров, их ядер, потоков обработки инструкций, а также других параметрах центральных процессоров. |
lsdev | Выводит информацию обо всех устройствах, которые идентифицированы операционной системой. |
lshw | Выводит список аппаратного обеспечения компьютера, содержащий подробную информацию о каждом из устройств. |
lspci | Выводит информацию о шинах PCI вашего компьютера и подключенных ним устройствах, таких, как графические карты, сетевые адаптеры и другие устройства. |
lsscsi | Выводит информацию обо всех устройствах SCSI, соединенных с вашим компьютером, таких, как жесткие диски или приводы для чтения оптических дисков. |
lsusb | Выводит информацию обо всех шинах USB вашего компьютера и подключенных к ним устройствах. |
Давайте начнем с получения информации об используемом центральном процессоре. Утилита lscpu выведет всю информацию об установленном в вашем компьютере центральном процессоре. Вы можете сообщить утилите о необходимости вывода информации обо всех центральных процессорах, вне зависимости от того, задействованы они или нет, с помощью параметра —all , а также о задействованных и незадействованных центральных процессорах с помощью параметров —online и —offline соответственно. Параметр —parse позволяет выбрать характеристики центрального процессора, которые вас интересуют, такие, как количество ядер центрального процессора, количество центральных процессоров, объем кэша, минимальная и максимальная тактовые частоты (в МГц) и другие. Очевидно, что в моей машине установлен единственный не самый современный четырехядерный центральный процессор Intel Core 2 Quad с тактовой частотой 2.66 ГГц:
(Примечание: вы можете получить большую часть данной информации, прочитав содержимое файла /proc/cpuinfo или файлов из директорий /sys/bus/cpu/; обратитесь к разделу «Самостоятельная работа с содержимым файловых систем /proc и /sys» для ознакомления с дополнительной информацией.)
Давайте перейдем к блочным устройствам, таким, как жесткие диски или приводы CD-ROM и DVD-ROM. Утилита lsblk выводит информацию обо всех доступных блочных устройствах (пример вывода приведен в Листинге 1). Очевидно, что в моем компьютере установлены три жестких диска и привод DVD-ROM. Этим трем жестким дискам соответствуют файлы устройств /dev/sda, /dev/sdb и /dev/sdc, а приводу DVD-ROM — файл устройства /dev/sr0. Диски имеют объем 466 ГБ, 149 ГБ и 2.7 ТБ соответственно. Также утилита выводит немного информации о таблице разделов дисков; например, несложно заметить, что на двух первых дисках созданы разделы подкачки, а на третьем диске нет такого раздела. Кроме того, утилита выводит информацию о точках монтирования разделов трех дисков (/, /disk-laptop и /disk-data соответственно).
Листинг 1. Утилита lsblk выводит информацию обо всех блочных устройствах (или устройствах для хранения данных). Параметр —topology позволяет получить немного дополнительной информации; воспользуйтесь параметром —output-all, если даже этой информации не достаточно.
Утилита поддерживает множество дополнительных параметров, но чаще всего используются такие параметры, как параметр —paths , предназначенный для вывода путей к файлам устройств и параметр —topology , предназначенный для вывода значений таких низкоуровневых параметров устройства, как размер физического сектора, название планировщика ввода/вывода и других. Вы можете получить информацию о владельце, группе владельцев и правах доступа к файлу устройства с помощью параметра —perm таким образом, как показано ниже (если же вам нужно еще больше информации, вы можете воспользоваться параметром —output-all , который активирует режим вывода таблицы с практически 50 столбцами полезных данных):
Для получения информации о SCSI-устройствах может использоваться параметр —scsi утилиты lsblk , но при этом также не стоит забывать о существовании специализированной утилиты lsscsi . Эта утилита выводит базовую информацию обо всех используемых устройствах SCSI таким же образом, как показано ниже. В моем случае она выводит информацию о трех жестких дисках и устройстве для чтения оптических дисков, ранее обнаруженных с помощью утилиты lsblk , а также о трех кардридерах. Обратите внимание на то, что утилита также выводит информацию о производителях и моделях устройств. Например, в моем компьютере установлено два жестких диска производства Western Digital (WD5000AAKS и WD30EZRX), а также жесткий диск производства Maxtor (STM316021) и привод для чтения дисков DVD производства Sony (AD-7200S):
Вы можете ознакомиться со списком всех поддерживаемых параметров рассматриваемой утилиты, выполнив команду lsscsi —help . Таким образом вы сможете убедиться в том, что она позволяет получить практически всю информацию о каждом из устройств SCSI. А если вас интересует принцип работы данной утилиты, вам может быть полезна информация о том, что она осуществляет сканирование структуры дерева директорий файловой системы /sys (обратитесь к разделу «Самостоятельная работа с содержимым файловых систем /proc и /sys» для ознакомления с дополнительной информацией).
Давайте перейдем к рассмотрению других утилит. Утилита lsusb выводит информацию об устройствах, соединенных с компьютером посредством шины USB; пример вывода данной утилиты представлен в Листинге 2. (Альтернативой данной утилите является утилита usb-devices , которая выводит информацию об устройствах в более сложном формате и не поддерживает параметров конфигурации.) Если вы работаете с современным компьютером, у вас наверняка имеется множество устройств, подключенных к нему посредством рассматриваемой шины. В моем случае такими устройствами являются адаптер Bluetooth, веб-камера, клавиатура, мышь и некоторые другие. Вы можете получить информацию об определенных шине или устройстве с помощью параметра -s или выбрать устройства заданного производителя с помощью параметра -d ; если вы планируете использовать последний параметр, вам стоит ознакомиться с реестром идентификаторов устройств USB (ссылка на который приведена в разделе «Ресурсы»), содержащим все идентификаторы производителей и устройств с интерфейсом USB. Наконец, если вы желаете получить максимально подробную информацию обо всех используемых устройствах, вы можете воспользоваться параметром -v (verbose — подробный вывод), но сразу же приготовьтесь к продолжительному чтению. На моей машине в результате исполнения команды lsusb -v выводится более 1300 строк текста с информацией об устройствах.
Листинг 2. Утилита lsusb выводит информацию обо всех устройствах, подсоединенных к компьютеру посредством шины USB, в формате списка или дерева.
Другой утилитой, выводящей большой объем информации о подключенных к компьютеру устройствах, является утилита lspci , которая выводит всю информацию об используемых устройствах с интерфейсом PCI. И, фактически, это именно та утилита, которая помогла мне вспомнить модель установленной в компьютере видеокарты:
Попробуйте использовать параметры утилиты -v и -vv для получения подробного и очень подробного вывода соответственно. Для получения всей информации о моей (текущей) видеокарте я использовал команду, приведенную в Листинге 3. Изучив большой объем информации о параметрах устройства, несложно сделать вывод о том, что в данное время я использую видеокарту NVIDIA GeForce 740 с драйвером nouveau из состава ядра ОС. Разумеется, для полного понимания значения всех выведенных параметров устройства следует обладать опытом работы с PCI-устройствами. Попробуйте выполнить эту же команду, заменив параметр -v на параметр -vv и вы поймете, о чем я говорю.
Листинг 3. Параметр -v позволяет получить подробную информацию о заданном устройстве; параметр -vv позволяет увеличить объем выводимой информации.
Если вы неплохо разбираетесь в цифровой электронике, вы можете воспользоваться утилитой lsdev , которая выводит информацию об используемом аппаратном обеспечении вместе с номерами прерываний, номерами портов ввода-вывода, адресами в памяти и другими низкоуровневыми параметрами. Эта утилита не поддерживает параметров конфигурации и наверняка понадобится вам лишь в том случае, если вы будете работать непосредственно с аппаратным обеспечением компьютера. Сокращенный пример вывода рассматриваемой утилиты представлен в Листинге 4. Данная утилита читает содержимое файлов /proc/interrupts, /proc/ioports и /proc/dma таким образом, как описано в разделе «Самостоятельная работа с содержимым файловых систем /proc и /sys».
Листинг 4. Утилита lsdev выводит информацию о номерах прерываний, номерах портов ввода-вывода и адресах в памяти, используемых устройствами.
Наконец, если вы дочитали до этого абзаца, вам наверняка будет интересна утилита lshw , являющаяся универсальным инструментом, который способен предоставлять пользователю огромный объем информации обо всем используемом аппаратном обеспечении его компьютера. Параметр -short позволяет получить (в некоторой степени) сокращенный вариант списка аппаратного обеспечения компьютера (рассмотрите Листинг 5 и обратите внимание на интересные строки «To Be Filled By O.E.M.», которые обозначают, что сборщик моего компьютера не утруждал себя дополнительной работой по смене прошивки материнской платы). С помощью данной утилиты вы можете получить информацию о системе, шинах, памяти, процессоре, видеокарте, сетевом адаптере и любых других аппаратных устройствах.
Листинг 5. Утилита lshw выводит информацию обо всем используемом аппаратном обеспечении компьютера.
Обратите внимание на столбец «class» в Листинге 5. Благодаря наличию данного столбца вы можете получить полную информацию об устройстве определенного класса, использовав параметр -class . Например, ниже приведена подробная спецификация моей сетевой карты; в ней присутствует информация о производители и модели карты, а также большое количество других характеристик (примечание: вы получите аналогичный вывод лишь в том случае, если не будете использовать параметр -short ; при запуске утилиты lshw на моей машине без каких-либо параметров выводится более 500 строк текста):
Утилита lshw поддерживает и некоторые другие параметры конфигурации. Например, она может генерировать документы формата HTML или XML с информацией об используемом аппаратном обеспечении (для этого предназначены параметры -html и -xml соответственно); документ первого формата удобен для показа собранной информации в веб-браузере, второго формата — для сохранения или автоматизированной обработки собранной информации. На Рисунке 1 показан небольшой фрагмент сгенерированного документа с информацией обо всем аппаратном обеспечении моего компьютера. По соображениям безопасности утилита поддерживает параметр -santize , который позволяет удалить из генерируемого документа конфиденциальную информацию, такую, как серийные номера устройств. Утилита поддерживает даже параметр -X , позволяющий использовать графический интерфейс (о котором будет сказано позднее).
Рисунок 1. Утилита lshw может генерировать документы формата HTML или XML с информацией об аппаратном обеспечении; на рисунке показан документ первого формата, открытый с помощью веб-браузера.
На данный момент мы обсудили наиболее популярные утилиты из семейства ls и, хотя все они на самом деле и не принадлежат к одному «семейству», я считаю их очень полезными инструментами для администрирования системы. Их названия очень легко вспомнить, введя символы ls и воспользовавшись функцией автоматического дополнения команд командной оболочки. Однако, в вашем распоряжении имеются и другие механизмы получения информации об аппаратном обеспечении компьютера, поэтому давайте рассмотрим и их.
Что такое SMBIOS?
Но откуда Linux получает информацию об используемых устройствах? В 1995 году была разработана спецификация SMBIOS (System Management BIOS), описывающая методику доступа к данной информации, которая упразднила необходимость в осуществлении потенциально ошибочных операций, направленных на идентификацию различных устройств. Этот стандарт (используемый при реализации интерфейса DMI) был использован при разработке всех систем на основе 32-битных и 64-битных центральных процессоров производства компании Intel и совместимых центральных процессоров других производителей. На самом деле, в упомянутой спецификации описывается структура данных для хранения информации об устройствах всех типов, таких, как центральный процессор, оперативная память, системные слоты и других. В принципе, вы можете разобрать и декодировать эту таблицу самостоятельно, но некоторые из описанных выше утилит отлично справляются с данной задачей. Если же вас интересуют все аспекты упомянутого стандарта, вы можете перейти по соответствующим ссылкам из раздела «Ресурсы».
Дополнительные утилиты с интерфейсом командной строки
Давайте начнем с рассмотрения некоторых утилит общего назначения. Первой такой утилитой является утилита dmidecode , которая позволяет получить и декодировать содержимое таблицы DMI (или SMBIOS) компьютера и вывести его в читаемом человеком формате. В том случае, если соответствующая таблица обнаруживается, содержащиеся в ней записи последовательно выводятся в аналогичном формате:
Если вы не желаете просматривать содержимое всей таблицы (несколько сотен строк текста на моем компьютере), вы можете сообщить утилите о необходимости вывода лишь записей определенного типа, в соответствии с таблицей типов записей SMBIOS (обратитесь к Таблице 2).
Таблица 2. В рамках SMBIOS выделяются различные типы записей, которые вы можете использовать при работе с утилитой dmidecode.
Тип | Описание |
---|---|
0 | Информация о BIOS |
1 | Информация о системе |
2 | Информация о материнской плате |
3 | Информация о корпусе |
4 | Информация о центральном процессоре |
5 | Информация о контроллере памяти |
6 | Информация о модуле памяти |
7 | Информация о кэше |
8 | Информация о коннекторе порта |
9 | Информация о системных слотах |
10 | Информация о интегрированных устройствах материнской платы |
11 | Строки производителя |
12 | Параметры конфигурации системы |
13 | Информация о языке BIOS |
14 | Ассоциации групп |
15 | Системный журнал событий |
16 | Информация о массиве физической памяти |
17 | Информация о запоминающем устройстве |
18 | Информация об ошибке доступа к памяти в 32-битном режиме |
19 | Информация об адресе отображения массива памяти |
20 | Информация об адресе отображения запоминающего устройства |
21 | Информация о встроенном манипуляторе |
22 | Информация о батарее устройства |
23 | Информация о кнопке сброса |
24 | Информация о функциях безопасности аппаратного обеспечения |
25 | Информация о функциях управления электропитанием системы |
26 | Информация об устройстве для измерения напряжения |
27 | Информация об охлаждающем устройстве |
28 | Информация об устройстве для измерения температуры |
29 | Информация об устройстве для измерения тока |
30 | Информация о внеполосных данных удаленного администрирования |
31 | Информация о механизме обеспечения безопасности загрузки системы |
32 | Информация о загрузке системы |
33 | Информация об ошибке доступа к памяти в 64-битном режиме |
34 | Информация об управляющем устройстве |
35 | Информация о компоненте управляющего устройства |
36 | Информация граничных условиях работы с управляющим устройством |
37 | Информация о канале доступа к памяти |
38 | Информация об устройстве IPMI |
39 | Информация о блоке питания |
40 | Дополнительная информация |
41 | Расширенная информация об интегрированных устройствах материнской платы |
42 | Информация об интерфейсе контроллера управления |
126 | Деактивированный элемент |
127 | Специальный маркер окончания таблицы |
128-255 | Данные, специфичные для производителя |
Существуют и специальные ключевые слова, соответствующие сразу нескольким типам записей (обратитесь к Таблице 3).
Таблица 3. Вы также можете использовать специальные ключевые слова для получения соответствующей информации из таблицы SMBIOS.
Ключевое слово SMBIOS | Типы SMBIOS |
---|---|
bios | 0, 13 |
system | 1, 12, 15, 23, 32 |
baseboard | 2, 10, 41 |
chasis | 3 |
processor | 4 |
memory | 5, 6, 16, 17 |
cache | 7 |
connector | 8 |
slot | 9 |
Если бы существовала награда «Утилита с самым подробным выводом», она, без сомнения, была бы присуждена утилите hwinfo , которая, как и одна из рассмотренных ранее утилит, может осуществлять вывод информации обо всем аппаратном обеспечении вашего компьютера. На моей машине после запуска утилиты hwinfo без каких-либо параметров было сгенерировано около 12000 строк текста, включающих несколько дампов таблицы SMBIOS. Вы же можете получить более компактный вывод, воспользовавшись параметром —short (Листинг 6).
Листинг 6. Утилита hwinfo может генерировать очень подробный вывод; в случае использования параметра —short объем выводимого текста резко сокращается.
Вы можете сообщить утилите hwinfo о необходимости вывода информации лишь об определенном типе аппаратного обеспечения с помощью таких параметров, как —monitor или —printer . Для получения полного списка поддерживаемых параметров следует выполнить команду hwinfo —help . Например, я могу получить информацию об устройстве для чтения оптических дисков с помощью команды hwinfo —cdrom (Листинг 7). Параметр —listmd позволяет включить в вывод информацию об устройствах RAID, которые игнорируются по умолчанию.
Листинг 7. Утилита hwinfo может выводить информацию лишь об устройствах определенных типов, таких, как устройство для чтения оптических дисков.
Самой выразительной в плане расцветки вывода утилитой с интерфейсом командной строки из всех рассмотренных в данной статье по праву может считаться утилита inxi (Рисунок 2).
Рисунок 2. Утилита inxi — скорее всего, единственная утилита с интерфейсом командной строки, использующая несколько цветов для выделения важных фрагментов вывода.
При запуске без каких-либо параметров она выводит лишь строку с информацией об используемом центральном процессоре, ядре ОС, времени работы системы и некоторых других параметрах системы, аналогичную следующей:
Однако, вы можете использовать большое количество параметров для получения интересующей вас информации. Например, вы можете повлиять на подробность вывода с помощью одного из параметров из диапазона от -v0 (минимально подробный вывод) до -v7 (максимально подробный вывод). Параметр -x позволяет включать в вывод дополнительную информацию о некотором аппаратном обеспечении. Выполните команду inxi -h для ознакомления со списком всех поддерживаемых утилитой параметров. К примеру, вы можете получить информацию о звуковой карте с помощью команды inxi -A , о видеокарте — с помощью команды inxi -G и так далее:
А теперь давайте закончим статью, рассмотрев несколько утилит с графическим интерфейсом.
Утилиты с графическим интерфейсом
Начнем с утилиты usbview , которая является графическим эквивалентом таких описанных ранее утилит, как lsusb и usb-devices . Она очень проста в использовании, не позволяет изменить какие-либо системные настройки и не поддерживает каких-либо параметров. Окно утилиты разделено на две части: в левой части окна расположен древовидный список со всеми доступными устройствами с интерфейсом USB, в правой — текстовое поле, в котором выводится информация о выбранном устройстве. На Рисунке 3 представлен снимок окна утилиты, в котором выводится информация о моей клавиатуре с интерфейсом USB.
Рисунок 3. Утилита usbview выводит информацию обо всех устройствах с интерфейсом USB в формате древовидного списка.
Перейдем к ранее описанной утилите, которая помимо интерфейса командной строки позволяет использовать графический интерфейс: lshw с параметром -X . При использовании параметра -X данная утилита вместо вывода листинга (приведенного выше) отображает графический интерфейс с несколькими списками для выбора устройства в левой части. В правой части расположено текстовое поле, в котором выводится информация о выбранном устройстве. На Рисунке 4 показан результат анализа параметров моего привода для чтения и записи оптических дисков DVD; в текстовом поле выводится дополнительная информация о параметрах устройства, таких, как имя логического устройства, список его возможностей и другие данные.
Рисунок 4. В случае запуска утилиты lshw с параметром -X, она будет осуществлять взаимодействие с пользователем посредством графического интерфейса, позволяющего получить информацию обо всех устройствах системы.
Еще одной интересной утилитой с графическим интерфейсом является утилита hardinfo , которая, в соответствии с описанием на странице репозитория исходного кода на ресурсе GitHub (обратитесь к разделу «Ресурсы», если вам нужна ссылка), «не мертва, но требует сопровождения». В левой части окна этой утилиты расположен древовидный список с четырьмя основными разделами:
- Раздел «Компьютер» содержит большой объем информации о вашей машине: в нем выводится информация как об аппаратном, так и о программном обеспечении.
- Раздел «Устройства» содержит информацию обо всех устройствах вашего компьютера, причем каждому типу устройств соответствует отдельная категория.
- Раздел «Сеть» содержит информацию не только о сетевых картах, но и о некоторых структурах данных, необходимых для корректной работы сети, таких, как список серверов DNS или таблица маршрутизации.
- Раздел «Тесты» позволяет сравнить производительность вашей машины с производительностью других компьютеров, но из-за долгого отсутствия обновлений утилиты имеется возможность сравнения производительности лишь с производительностью компьютеров с устаревшими центральными процессорами.
На Рисунке 5 представлен снимок окна утилиты.
Рисунок 5. Утилита hardinfo предоставляет дополнительные данные, не всегда относящиеся к аппаратному обеспечению компьютера.
В рассматриваемой утилите реализованы и другие функции. Пункт меню «Информация» позволяет выбрать интересующие вас параметры системы и сгенерировать отчет в формате HTML или в обычном текстовом формате. Пункт меню «Обновление через сеть. » предназначен для обновления данных утилиты, включающих результаты тестирования новых компьютеров, но в моем случае при его активации постоянно выводится сообщение об ошибке «Подключение к центральной базе данных Hardinfo (ошибка)».
Давайте закончим обзор утилит с графическим интерфейсом, предназначенных для получения информации об аппаратном обеспечении компьютера, рассмотрением утилиты из состава окружения рабочего стола KDE под названием kinfocenter . Эта утилита очень похожа на описанные выше утилиты (на Рисунке 6 представлен снимок ее окна с информацией об использовании оперативной памяти), поэтому, по аналогии с другими утилитами, в левой части ее окна содержится древовидный список с категориями параметров системы, а в правой части — поле для вывода информации о выбранном параметре системы.
Рисунок 6. Утилита kinfocenter из состава окружения рабочего стола KDE выводит информацию не только об аппаратном обеспечении, но и о множестве параметров системы.
Данная утилита, помимо вывода информации об аппаратном обеспечении компьютера, также выводит дополнительную информацию о состоянии компонентов системы, такую, как «Статус сервера Samba», «Информация об энергопотреблении» или «Статус X-Сервера».
Самостоятельная работа с содержимым файловых систем /proc и /sys
Файловая система Linux содержит большое количество различных директорий и файлов, но директории /proc и /sys являются особенными. На самом деле их не существует на жестком диске, но в то же время вы имеете возможность просматривать их содержимое без каких-либо сложностей. Они содержат множество на первый взгляд пустых файлов, но вы можете открыть каждый из этих файлов и просмотреть его содержимое. Директория /proc появилась перед директорией /sys и в данное время содержит всю информацию об исполняющихся процессах (отсюда и имя /proc). Со временем в нее было добавлено большое количество файлов, подавляющая часть которых являлась «виртуальными» файлами, отсутствующими на жестком диске и создающимися в процессе открытия. (Большинство виртуальных файлов содержит текущую метку времени, которая указывает на то, что их содержимое постоянно обновляется и поддерживается в актуальном состоянии.) Директория /sys является более современной разработкой. Она была введена в строй в момент выпуска первой версии ядра Linux ветки 2.6 с целью лучшего структурирования данных, которые ранее размещались в директории /proc, разросшейся до невероятных размеров. Многие файлы (но не все) из директории /proc дублируются в директории /sys и, если это возможно, вы должны отдавать предпочтение файлам из последней. Директория /sys содержит несколько поддиректорий:
- Директория block/ является отправной точкой для получения параметров каждого из блочных устройств.
- Директория bus/ содержит директории, соответствующие каждому из типов шин, которые, в свою очередь, содержат по две поддиректории: devices/ и drivers/. Первая содержит директорию с параметрами каждого из устройств со ссылкой на файл устройства, а вторая — директорию с параметрами каждого драйвера, который был загружен для работы с устройством на данной шине.
- Директория class/ содержит директории, соответствующие каждому из типов объектов; примерами таких директорий являются block/, graphics/, net/, sound/ и другие.
- Директория dev/ содержит директории, соответствующие каждому из типов устройств (например, dev/block/ и dev/char/), каждая из которых содержит директорию с параметрами соответствующего устройства.
- Директория devices/ содержит структуру директорий, сформированную в соответствии с глобальной иерархической структурой устройств вашей системы.
- Директория firmware/ содержит директории объектов, специфичных для микропрограмм; например, acpi/ или memmap/, причем директории на вашем компьютере будут зависеть от используемых на уровне ядра ОС микропрограмм.
- Директория fs/ содержит директории, соответствующие всем поддерживаемым типам файловых систем на вашей машине, причем каждая из этих директорий, в свою очередь, содержит директории, соответствующие каждому из устройств с той или иной файловой системой; например, у меня в системе имеется директория /sys/fs/ext4/sda2, так как на разделе диска, представленном файлом устройства /dev/sda2, используется файловая система ext4.
- Директория kernel/ содержит несколько файлов, связанных с используемым в данный момент ядром ОС.
- Директория module/ содержит поддиректории, соответствующие каждому из модулей, загруженных ядром ОС.
- Директория power/ представляет подсистему управления электропитанием.
При перемещении на глубинные уровни каждой из ветвей описанной файловой системы вы наверняка обнаружите большое количество отдельных файлов, в которых содержатся доступные для чтения значения различных атрибутов заданного объекта. Что это за файлы? Ну, это сложный вопрос, так как список файлов и содержимое каждого из них зависят от посещаемой вами ветви файловой системы, поэтому вам придется проделать небольшую работу для того, чтобы получить информацию о том или ином устройстве из файлов файловой системы /sys. (В разделе «Ресурсы» вы можете найти ссылки на спецификации данной файловой системы.) Также помните о том, что вы можете записывать данные в некоторые из этих файлов, причем в результате будут изменяться значения соответствующих параметров того или иного устройства — делайте это с особой осторожностью! Однако, в том случае, если вы в конце концов разберетесь со структурой данной файловой системы, вы сможете дублировать в рамках своих приложений функции большинства описанных в статье утилит, работающих именно с ней.
Заключение
Я описал большое количество утилит, позволяющих взаимодействовать с ядром ОС Linux с целью получения некоторого объема информации обо всех используемых устройствах. При этом в случае необходимости вы можете получить данную информацию и самостоятельно, создав собственный инструмент для исследования аппаратного обеспечения.
Источник