Если вы были достаточно опытным пользователем Windows, то после перехода на Linux, наверное, задавались вопросом, а где здесь диспетчер устройств? Программа, с помощью которой можно было бы посмотреть подключенные к компьютеру устройства, установленные для них драйвера, настроить драйвера, да и посмотреть информацию об оборудовании в одном месте. Но ситуация здесь неоднозначная, полной альтернативы нет, есть утилиты показывающие немного информации, есть консольные команды. Но все очень запутанно и непонятно.
В этой статье мы попытаемся расставить все точки над «i» в вопросе просмотр устройств Ubuntu, и в частности, ответим на вопрос где взять диспетчер устройств Ubuntu.
Немного теории
Работа с драйверами в операционных системах Linux и Windows очень сильно отличается. В Windows нужно отдельно искать и устанавливать каждый драйвер, в Linux же все доступные драйвера с открытым исходным кодом встроены в ядро и поэтому установка драйверов не нужна, за исключением нескольких проприетарных устройств, таких как видеокарты. Драйвера для таких устройств выделены в виде модулей ядра и загружаются по мере необходимости. Что же касается свободных драйверов, то для одного устройства в ядре может быть несколько модулей, из которых система выбирает то, что по ее мнению, будет лучше работать.
Таким образом, в Linux драйверы устройств, встроенные в ядро и выполненные в виде отдельных модулей логически разделены с оборудованием и настраиваются отдельно. Возможно, причиной этому сложность настройки, а может сам принцип GNU — одна утилита — одно действие. Дальше мы рассмотрим несколько способов посмотреть список устройств linux, для этого есть как консольные, так и графические утилиты. Настройку модулей мы сильно трогать не будем, потому что все уже описано в отдельной статье.
Диспетчер устройств 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
В первой колонке отображен адрес устройства на шине PCI, так называемый, слот, во второй тип устройства, а затем его производитель и описание. Опция -n позволяет отображать вместо типа и описания id производителя и модели устройства.
Если вы хотите посмотреть только оборудование определенного типа, скажем, звуковую карту используйте фильтр grep:
lspci | grep audio
Или для видео карты:
lspci | grep VGA
Также можно фильтровать информацию по слоту устройства с помощью опции -s:
lspci -s 00:02.0
Также мы можем фильтровать устройства по PCI id, идентификатору производителя:
lspci -d 80ee:beef
Более подробную информацию об устройстве, можно посмотреть с помощью опции -v. По умолчанию мы видим только тип устройства и производителя, а с помощью этой опции можно увидеть дополнительные технические характеристики.
Хотите просмотреть какой драйвер ядра сейчас загружен для устройства? Эту информацию утилита предоставляет с опцией vv:
lspci -vv
Нас интересует строчка Kernel driver in use. Можем отфильтровать по ней:
lspci -vv | grep Kernel
lsusb
Несмотря на то, что контроллер USB подключен к PCI, в выводе команды lspci мы увидим только сам контроллер, для просмотра устройств Ubuntu нам нужна другая команда, и это lsusb. Синтаксис тот же:
$ lsusb опции
Опций здесь поменьше:
- —verbose — подробный вывод
- -s — аналогично lspci, выводить устройства, подключенные к определенному порту
- -d — выводить устройства по определенному идентификатора производителя
- -t — включить отображение в виде дерева
Смотрим все подключенные устройства USB ubuntu:
lsusb
Выбираем только устройства подключенные к первой шине, второму порту:
lsusb -s 001:002
Выбираем устройства по идентификатору производителя:
lsusb -d 80ee:0021
Здесь способ отображения похожий, в первой колонке шина и порт, разделенные двоеточием, дальше id производителя, а затем описание устройства.
lsscsi
SCSI контроллер тоже подключен к PCI, а к нему уже подключаются жесткие диски и оптические приводы. Для просмотра этих устройств используется утилита lsscsi. Если она не установлена в вашей системе, ее можно установить командой:
sudo apt-get install lsscsi
Синтаксис тот же:
$ lsscsi опции
Но опций тут немного больше:
- -c — классический стиль, более подробная информация
- -d — показать только определенное устройство
- -k — отображать файлы дисков linux для устройств
- -H — отображать хосты scsi, подключенные к системе
- -l — вывод дополнительной информации по каждому устройству
- -v — вывод файлов блочных устройств в каталоге /sys
- -s — отобразить размер подключенного диска
Смотрим подключенные жесткие диски:
lsscsi
lsscsi -s
lscpu
Процессор подключен к отдельному слоту на материнской плате, и для просмотра информации о нем используется отдельная утилита — lscpu:
lscpu
lshw
Теперь, когда вы разобрались с основами, можно посмотреть еще одну утилиту. lshw выводит подробную информацию по каждому устройству в терминал. Здесь отображается как процессор и pci устройства, так и жесткие диски:
sudo lshw
С помощью опции -class можно указать тип оборудования, о котором нужно выводить информацию. Доступны такие классы:
sudo lshw | grep *
На этом дереве наглядно показана иерархия подключения устройств в Linux. Например, смотрим информацию только о видеокарте:
sudo lshw -class display
Или сетевом адаптере:
sudo lshw -class network
Здесь же можно посмотреть какой драйвер загружен для устройства, в строке Конфигурация, поле driver.
Как видите, консольные инструменты ничем не хуже программы Windows, и они полностью заменяют диспетчер устройств в Ubuntu.
Диспетчер устройств с графическим интерфейсом
Пожалуй, лучшей программой для решения таких задач будет hardinfo. Она позволяет посмотреть устройства Ubuntu подключенные к системе, подробную информацию о них, а также информацию об установленной системе и поддерживаемых ею функциях.
Эта программа не поставляется с дистрибутивом по умолчанию, но ее очень просто установить:
sudo apt install hardinfo
Вот так выглядит главное окно программы:
На вкладке Computer собрана информация о системе:
Если вам нужны только подключенные устройства ubuntu, то для этого есть раздел Devices, здесь есть подробная информация по каждому устройству:
Эта программа — отличная замена консольным методам, для тех кто не любит использовать терминал и хочет посмотреть устройства Ubuntu. Правда, здесь есть пару минусов — информация не настолько подробная, к тому же тут вы не узнаете какой модуль загружен для того или иного устройства.
Выводы
В этой статье мы рассмотрели как в Ubuntu посмотреть устройства, подключенные к компьютеру хотя и нет единой программы, диспетчер устройств в Ubuntu, но зато есть достаточно инструментов, чтобы ее заменить. Надеюсь, теперь для вас работа с устройствами в Linux стала чуть яснее. Если остались вопросы, пишите в комментариях!