7

Мне было интересно, есть ли какой-нибудь Linux, эквивалентный Windows Device Manager, или утилита Windows DevCon (утилита командной строки с функциями управления оборудованием).

Драйверы даже работают так же в Linux?

Спасибо!

р

5 ответов5

6

Функциональные возможности, предоставляемые devcon Windows, охватываются различными функциями и командами в Linux.

Менеджер "включай и работай" в Linux обычно udev . udev отвечает за распознавание аппаратных изменений, (возможно) автозагрузку модулей и создание узлов в /dev при необходимости. Если вы хотите сделать что-то, например, смоделировать удаление USB-устройства в Linux (то, что может сделать devcon ), я думаю, следует использовать команды, которые взаимодействуют с запущенным udevd . Я не делал этого под Linux, но вы можете начать с изучения udev .

lsmod отобразит все загруженные в данный момент модули ядра. Драйверы устройств являются одной из функций модуля ядра. insmod загрузит и запустит модуль, если это возможно, и большую часть времени вызывает появление устройства в /dev . rmmod делает наоборот. Если вы выполните lsmod вы заметите, что некоторые модули зависят от других, rmmod не позволит вам удалить модуль, если что-то от него зависит. modprobe с его опциями обрабатывает зависимости.

В Linux модули также могут быть "встроены" в ядро, и они не появятся ни в одном списке модулей. Они сразу и всегда доступны в момент загрузки ядра загрузчиком. Другой вариант - разместить модули в каталоге внутри "начального виртуального диска" (initrd), который также загружается загрузчиком и сразу же доступен ядру при загрузке. "Установка" или "обновление" драйверов устройств может включать создание нового или обновленного ядра со встроенным модулем или добавление / обновление его в initrd, если его там нет. Большинство дистрибутивов предоставляют инструменты и утилиты для этого.

Обычно вам не нужно беспокоиться об установке или получении стороннего драйвера, если он не включен в "официальное" ядро с сайта kernel.org - поскольку модули ядра (включая драйверы) являются частью ядра, драйверы для каждого поддерживаемого устройства также включены, и обычно предоставляются с вашим дистрибутивом. Поэтому необходимость установки «драйвера, предоставляемого производителем» в Linux не очень распространена, за исключением, возможно, видео драйверов и некоторых беспроводных наборов микросхем, которые все еще имеют множество юридических ограничений в отношении технической информации, необходимой разработчикам драйверов.

lshw может предоставить вам большую часть этой информации в древовидном формате. lspci , lsusb , lsscsi и lscpu также очень полезны. Большинство шин, таких как PCI, SCSI, USB, имеют множество пользовательских утилит, доступных в большинстве дистрибутивов Linux, которые вы можете использовать для настройки и получения информации о конкретных классах устройств (например, hdparm). И почти все, что упомянуто в этом параграфе, и даже больше, это просто интерфейсы для различных файлов и каталогов в /proc и /sys ; Вы хотите использовать утилиты, хотя в большинстве случаев.

3

Попробуйте в Linux команду: lshw-gtk, это интерфейс для lshw.

3

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

О драйверах устройств Linux:

Драйверы могут быть включены в ядро Linux или в виде модулей. Если они являются модулями, они могут быть (не) загружены по требованию.

Вы можете найти информацию об устройствах устройства с помощью этих команд:

lspci
lsusb

Мой любимый

lspci -nn

для имен и номеров.

Посмотрите справочные страницы для следующих команд:

modprobe
rmmod
lsmod
modinfo

Короче:

modprobe загружает модуль ядра. rmmod удаляет ядро lsmod выводит список загруженных модулей. modinfo показывает информацию о конкретном модуле.

Есть также приложения с графическим интерфейсом. Я думаю, у KDE есть один в своем центре управления, который называется kinfocenter.

Надеюсь, это поможет.

2

Большинство драйверов устройств в Linux являются расширениями ядра. Вы можете перечислить их с помощью "lsmod", удалить их с помощью "rmmod" или загрузить с помощью "modprobe".

1

Вы можете посмотреть в /sys реальное дерево устройств, для которого lsusb/lspci просто показывает сокращенное таблоидное представление.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .