Linux mint диспетчер устройств

Статья о том, как получить всю информацию об оборудовании компьютера в Linux.

Немного теории

Работа с драйверами в операционных системах Linux и Windows очень сильно отличается. В Windows нужно отдельно искать и устанавливать каждый драйвер, в Linux же все доступные драйвера с открытым исходным кодом встроены в ядро и поэтому установка драйверов не нужна, за исключением нескольких проприетарных устройств, таких как видеокарты. Драйвера для таких устройств выделены в виде модулей ядра и загружаются по мере необходимости. Что же касается свободных драйверов, то для одного устройства в ядре может быть несколько модулей, из которых система выбирает то, что по ее мнению, будет лучше работать.

Таким образом, в Linux драйверы устройств, встроенные в ядро и выполненные в виде отдельных модулей логически разделены с оборудованием и настраиваются отдельно. Возможно, причиной этому сложность настройки, а может сам принцип GNU — одна утилита — одно действие. Дальше мы рассмотрим несколько способов посмотреть список устройств linux, для этого есть как консольные, так и графические утилиты. Настройку модулей мы сильно трогать не будем, потому что все уже описано в отдельной статье.

Информация о процессоре (CPU)

Получить всю необходимую информацию о центральном процессоре в Linux можно выполнив в терминале команду:

cat /proc/cpuinfo

Чтобы определить является ли ваш процессор 32-х или 64-битным нужно просмотреть флаги, которые указаны в выводе команды. Если среди флагов присутствует lm (long mode), это означает, что ваш процессор 64-битный. Например, при выполнении команды cat /proc/cpuinfo мы можем получить следующие флаги:

flags: fpu vme de acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon …

Общая информация о железе

Самый простой и быстрый способ посмотреть оборудование в Ubuntu — воспользоваться утилитой lspci, которая по умолчанию присутствует в системе даже в минимальной установке.

lspci

Информация о железе в Ubuntu

Мы здесь видим следующую основную информацию о железе:

  1. Модели северных и южных мостов.
  2. IDE, SATA, SCSI контроллеры.
  3. Графический контроллер.
  4. Модели сетевых интерфейсов.

Если вы добавите к команде ключ -v, то сможете увидеть более подробную информацию о каждом компоненте.

1. lscpu

Команда lscpu выдает информацию о процессоре и его составляющих. В ней нет каких-либо дополнительных параметров или функциональных возможностей.

Architecture: x86_64CPU op-mode(s): 32-bit, 64-bitByte Order: Little EndianCPU(s): 4On-line CPU(s) list: 0-3Thread(s) per core: 1Core(s) per socket: 4Socket(s): 1NUMA node(s): 1Vendor ID: GenuineIntelCPU family: 6Model: 23Stepping: 10CPU MHz: 1998.000BogoMIPS: 5302.48Virtualization: VT-xL1d cache: 32KL1i cache: 32KL2 cache: 2048KNUMA node0 CPU(s): 0-3

Диспетчер устройств Ubuntu в терминале

Устройства подключаются к материнской плате несколькими способами. Это может быть шина PCI, используется для многих основных компонентов компьютера, например, видеокарты, звуковой карты, сетевого адаптера и т д. Еще может использоваться USB, этот тип подключения чаще всего применяется для внешних устройств вроде веб-камеры, клавиатуры, мыши и т д. Жесткие диски не подключаются по PCI, для них существует отдельный интерфейс — SCSI (Small Computer System Interface). PCI шина является главной, к ней подключены другие контроллеры, в том числе USB и SCSI. Такое разделение необходимо, потому что это устройства разного типа, им нужно передавать разное количество информации, нужна разная скорость передачи и даже разное напряжение питания от сети.

В соответствии с принципом GNU в Linux есть отдельная утилита, для просмотра каждого из типов устройств. Называются они так же, как и технологии, с помощью которых подключены устройства с префиксом ls (list):

  • lspci
  • lsusb
  • lsscsi
  • lscpu

Рассмотрим каждую из этих утилит подробнее.

lspci

Как я уже сказал, к шине PCI подключаются многие важные устройства. PCI расшифровывается как Peripheral component interconnect или по-нашему взаимосвязь периферийных компонентов. Все видеокарты подключаются именно таким способом также чаще всего мы можем здесь встретить сетевые адаптеры, карт ридеры и другие адаптеры. В основном все что размещено на материнской плате, в корпусе компьютера, кроме процессора и жестких дисков подключено по PCI.

Посмотреть устройства Ubuntu подключенные по шине PCI можно с помощью команды lspci. Давайте рассмотрим ее синтаксис:

$ lspci опции

Опции утилиты указывают сколько данных нужно выводить и как их фильтровать. Рассмотрим подробнее:

  • -v — выводить подробную информацию об устройствах
  • -vv — выводить очень подробную информацию об устройствах
  • -n — показывать код производителя для устройства
  • -b — показать все адреса устройств на шине
  • -d — показать только устройства определенного производителя
  • -t — просмотр устройств ubuntu в виде дерева.
  • -s — показать информацию об определенном устройстве

Но обычно вам не понадобятся эти опции, чтобы посмотреть оборудование, подключенное по PCI просто выполните команду без параметров:

lspci

devices

В первой колонке отображен адрес устройства на шине PCI, так называемый, слот, во второй тип устройства, а затем его производитель и описание. Опция -n позволяет отображать вместо типа и описания id производителя и модели устройства.

Если вы хотите посмотреть только оборудование определенного типа, скажем, звуковую карту используйте фильтр grep:

lspci | grep audio

devices1

Или для видео карты:

lspci | grep VGA

devices2

Также можно фильтровать информацию по слоту устройства с помощью опции -s:

 lspci -s 00:02.0

devices3

Также мы можем фильтровать устройства по PCI id, идентификатору производителя:

 lspci -d 80ee:beef

devices4

Более подробную информацию об устройстве, можно посмотреть с помощью опции -v. По умолчанию мы видим только тип устройства и производителя, а с помощью этой опции можно увидеть дополнительные технические характеристики.

devices5

Хотите просмотреть какой драйвер ядра сейчас загружен для устройства? Эту информацию утилита предоставляет с опцией vv:

lspci -vv

devices9

Нас интересует строчка Kernel driver in use. Можем отфильтровать по ней:

lspci -vv | grep Kernel

devices10

lsusb

Несмотря на то, что контроллер USB подключен к PCI, в выводе команды lspci мы увидим только сам контроллер, для просмотра устройств  Ubuntu нам нужна другая команда, и это lsusb. Синтаксис тот же:

$ lsusb опции

Опций здесь поменьше:

  • —verbose — подробный вывод
  • -s — аналогично lspci, выводить устройства, подключенные к определенному порту
  • -d — выводить устройства по определенному идентификатора производителя
  • -t — включить отображение в виде дерева

Смотрим все подключенные устройства USB ubuntu:

lsusb

devices6Выбираем только устройства подключенные к первой шине, второму порту:

lsusb -s 001:002

devices7

Выбираем устройства по идентификатору производителя:

lsusb -d 80ee:0021

devices8

Здесь способ отображения похожий, в первой колонке шина и порт, разделенные двоеточием, дальше id производителя, а затем описание устройства.

lsscsi

SCSI контроллер тоже подключен к PCI, а к нему уже подключаются жесткие диски и оптические приводы. Для просмотра этих устройств используется утилита lsscsi. Если она не установлена в вашей системе, ее можно установить командой:

sudo apt-get install lsscsi

Синтаксис тот же:

$ lsscsi опции

Но опций тут немного больше:

  • -c — классический стиль, более подробная информация
  • -d — показать только определенное устройство
  • -k — отображать файлы дисков linux для устройств
  • -H — отображать хосты scsi, подключенные к системе
  • -l — вывод дополнительной информации по каждому устройству
  • -v — вывод файлов блочных устройств в каталоге /sys
  • -s — отобразить размер подключенного диска

Смотрим подключенные жесткие диски:

lsscsi

devices11

devices12А вместе с размером диска:

lsscsi -s

devices13

lscpu

Процессор подключен к отдельному слоту на материнской плате, и для просмотра информации о нем используется отдельная утилита — lscpu:

lscpu

devices15

lshw

Теперь, когда вы разобрались с основами, можно посмотреть еще одну утилиту. lshw выводит подробную информацию по каждому устройству в терминал. Здесь отображается как процессор и pci устройства, так и жесткие диски:

sudo lshw

devices14

С помощью опции -class можно указать тип оборудования, о котором нужно выводить информацию. Доступны такие классы:

sudo lshw | grep *

devices16

На этом дереве наглядно показана иерархия подключения устройств в Linux. Например, смотрим информацию только о видеокарте:

sudo lshw -class display

devices17

Или сетевом адаптере:

sudo lshw -class network

devices18

Здесь же можно посмотреть какой драйвер загружен для устройства, в строке Конфигурация, поле driver.

Как видите, консольные инструменты ничем не хуже программы Windows, и они полностью заменяют диспетчер устройств в Ubuntu.

Материнская плата

Для того, чтобы на сервере с Ubuntu посмотреть информацию о материнской плате, можно воспользоваться все той же программой — dmidecode, указав соответствующий ключ.

dmidecode —type baseboard

Как посмотреть модель материнской платы в ubuntu

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

  • Производитель
  • Модель

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

Информация о жестких дисках

Информация о разделах жесткого диска в Linux:

sudo fdisk -l

Информация о монтированных разделах, количество свободной и занятой памяти:

df -h

Есть еще одна полезная команда du, которая выводит информацию о размере каждого файла в текущей и во вложенных директориях. Если вы хотите получить информацию обо всех файлах в текущей директории выполните команду без параметров:

du

В качестве параметра можно задать имя файла, например, чтобы узнать размер файла abc.bin выполните:

du abc.bin

5. lsscsi — список устройств scsi

Выдается список устройств scsi/sata, например, жестких дисков и оптических приводов.

$ lsscsi[3:0:0:0] disk ATA ST3500418AS CC38 /dev/sda [4:0:0:0] cd/dvd SONY DVD RW DRU-190A 1.63 /dev/sr0

Команды в линукс

Раз уж тема затронута, стало быть должна раскрыта. Линукс любезно предоставит информацию о, скажем, процессоре по команде cat /proc/cpuinfo. Об оперативной памяти — cat /proc/meminfo. И так о любом устройстве. Но это метод хотя и самый верный, но не для всякого пользователя удобный и понятный.  Не страшно.

Для более полной информации можно смотреть вывод команд lshw, lsusb и lspci. Причем первая из них вываливает кучу строчек о железе похлеще всяких эверестов. Но опять же, это путь описан тоже скорее для общей эрудиции, потому как не всякому интересно втыкать в «многабукаф» на голом черном экране.

6. lsusb – подробный список шин и устройств usb

Эта команда показывает информацию о контроллерах usb и подробные сведения о подключенных к ним устройствах. По умолчанию выдается краткая информация. Для того, чтобы о каждом порте usb получить подробную информацию, используйте параметр «-v».

$ lsusbBus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 005 Device 002: ID 045e:00cb Microsoft Corp. Basic Optical Mouse v2.0Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

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

7. Inxi

Inxi является мега скриптом bash, состоящим из 10000 строк кода, с помощью которого из разных источников и команд системы будет получена подробная информация об аппаратном обеспечении и будет создан отчет в виде, позволяющим его читать пользователям, которые не являются техническими специалистами.

$ inxi -Fxcommands01.png

Неконсольные программы

Рассмотрим несколько графических программ, которые помогут при работе с оборудованием.

В среде рабочего стола Gnome есть графическая утилита System monitor (Системный монитор). Она выводит информацию об использовании процессора, о запущенных процессах (приложениях), информацию о жестких дисках, а также выводит графики, включая использование сети. Из командой строки ее можно запустить выполнив:

gnome-system-monitor

Системный монитор Gnome в Linux

Для работы с жесткими можно воспользоваться программой GParted.
Программа Gparted

Информация о дисках в Ubuntu

Узнать, какие диски используются в сервере и как посмотреть о них подробную информацию можно с помощью различных инструментов. Самый популярный из них — smartmontools. Обычно его нет в системе в базовом варианте, поэтому надо ставить отдельно.

apt install smartmontools

Далее смотрим список всех дисков в системе:

lsblk -a

Список всех дисков

Выбираем какой-то конкретный физический диск и смотрим по нему информацию.

smartctl -i /dev/sdd

Информация о диске в Ubuntu

А вот так можно посмотреть SMART диска в Ubuntu.

smartctl -A /dev/sdd

SMART диска в ubunut

Если нет желания устанавливать какой-то сторонний софт на сервер, то краткую информацию обо всех дисках можно посмотреть следующим образом:

lshw -class disk -class storage

Список дисков на сервере

В целом, эти две утилиты полностью закрывают вопрос с просмотром информации о дисках на сервере ubuntu. Я обычно ничего другое не использую.

Все, на этом материал на тему просмотра информации о железе на сервере закончен. Удачной работы и хорошего аптайма!

Дополнительная информация

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

sudo lshw

Чтобы вывести краткую информацию используется ключ -short:

sudo lshw -short

Получить более подробную информацию о командах, описанных в статье, можно используя справочную систему Linux. Для этого в консоли нужно выполнить:

man имя-команды

Например, чтобы получить всю информацию о команде du, выполните команду:

man du

12. mount

Команда mount используется для монтирования/демонтирования, а также для просмотра смонтированных файловых систем.

$ mount | column -t/dev/sda6 on / type ext4 (rw,errors=remount-ro)proc on /proc type proc (rw,noexec,nosuid,nodev)sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)none on /sys/fs/cgroup type tmpfs (rw)none on /sys/fs/fuse/connections type fusectl (rw)none on /sys/kernel/debug type debugfs (rw)none on /sys/kernel/security type securityfs (rw)udev on /dev type devtmpfs (rw,mode=0755)devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)none on /run/shm type tmpfs (rw,nosuid,nodev)none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)none on /sys/fs/pstore type pstore (rw)/dev/sda8 on /media/13f35f59-f023-4d98-b06f-9dfaebefd6c1 type ext4 (rw,nosuid,nodev,errors=remount-ro)/dev/sda5 on /media/4668484A68483B47 type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096)binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=enlightened)

Опять же, используйте команду grep для отфильтровывания информации только о тех файловых системах, которые вам интересны

$ mount | column -t | grep ext

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: