Найдите драйвер (который автоматически не установлен) для определенных аппаратных средств

Я не уверен, почему файловая система монтируется только для чтения, так как Вы указали rw. Возможно, ядро на самом деле монтирует чтение-запись изображения initrd вместо этого, и затем что изображение initrd монтирует Вашу корневую фс как только для чтения.

В любом случае обычно ядро, как ожидают, смонтирует корневую фс, только для чтения, и затем в какой-то момент, init повторно смонтирует его чтение-запись.

Возможно, Вы могли изменить Ваш chrootinit сценарий для выполнения того шага сначала:

/bin/mount -o remount,rw /
exec /usr/sbin/chroot /slack /sbin/init
6
22.07.2013, 18:54
1 ответ

LKDDb

Можно искать драйверы, которые включены в Ядро Linux здесь, http://cateee.net/lkddb/web-lkddb/. Основная страница здесь, http://cateee.net/lkddb/.

О LKDDb
LKDDb является попыткой создать comprensive базу данных аппаратных средств, и протоколы знают ядрами Linux. База данных драйвера включает числовые идентификаторы аппаратных средств, меню конфигурации ядра должно было создать драйвер и имя файла драйвера. База данных является сборкой автоволшебно из источников ядра, таким образом, очень легко иметь всегда обновленную базу данных.

Драйверы, не включенные

Обычно необходимо искать аппаратным названием через Ядро Linux, чтобы видеть, обеспечивает ли оно драйвер из поля. Если не затем необходимо будет перейти к веб-сайту производителей или если это - исходный проект, сделанный Intel или Nvidia или кем-то, ищите их сайт соответствующие драйверы.

Какие драйверы я использую?

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

Например:

$ lspci -v
00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 02)
    Subsystem: Lenovo Device 2193
    Flags: bus master, fast devsel, latency 0
    Capabilities: <access denied>
    Kernel driver in use: agpgart-intel

00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02) (prog-if 00 [VGA controller])
    Subsystem: Lenovo Device 215a
    Flags: bus master, fast devsel, latency 0, IRQ 45
    Memory at f2000000 (64-bit, non-prefetchable) [size=4M]
    Memory at d0000000 (64-bit, prefetchable) [size=256M]
    I/O ports at 1800 [size=8]
    Expansion ROM at <unassigned> [disabled]
    Capabilities: <access denied>
    Kernel driver in use: i915
    Kernel modules: i915

Заметьте строки, которые говорят "Драйвер ядра используемые" и "Модули ядра".

Какие драйверы/модули мое Ядро уже имеет загруженным?

Можно обратиться к Ядру /proc файловая система для этой информации:

$ less /proc/modules
tcp_lp 2111 0 - Live 0xffffffffa00fc000
aesni_intel 12131 1 - Live 0xffffffffa0185000
cryptd 7111 1 aesni_intel, Live 0xffffffffa013c000
aes_x86_64 7758 1 aesni_intel, Live 0xffffffffa0128000
aes_generic 26908 2 aesni_intel,aes_x86_64, Live 0xffffffffa00f3000
fuse 61966 3 - Live 0xffffffffa030b000
cpufreq_powersave 1154 0 - Live 0xffffffffa00f0000
sunrpc 201569 1 - Live 0xffffffffa0580000
vboxpci 13918 0 - Live 0xffffffffa0576000
vboxnetadp 18145 0 - Live 0xffffffffa056c000
...

Можно также использовать команду lsmod получить эту информацию в более симпатичном формате:

$ lsmod | less
Module                  Size  Used by
tcp_lp                  2111  0 
aesni_intel            12131  1 
cryptd                  7111  1 aesni_intel
aes_x86_64              7758  1 aesni_intel
aes_generic            26908  2 aesni_intel,aes_x86_64
fuse                   61966  3 
cpufreq_powersave       1154  0 
sunrpc                201569  1 
vboxpci                13918  0 
vboxnetadp             18145  0 
...

информация о модуле

Можно использовать команду modinfo узнать больше о конкретном модуле:

$ modinfo tcp_lp
filename:       /lib/modules/2.6.35.14-106.fc14.x86_64/kernel/net/ipv4/tcp_lp.ko
description:    TCP Low Priority
license:        GPL
author:         Wong Hoi Sing Edison, Hung Hing Lun Mike
srcversion:     8BFC408F81AB96C2D21A317
depends:        
vermagic:       2.6.35.14-106.fc14.x86_64 SMP mod_unload 

Какие драйверы/модули доступны моему ядру?

Можно просмотреть этот каталог для наблюдения всех драйверов/модулей ядра, которые обеспечиваются системой для использования с ядром:

$ ls /lib/modules/`uname -r`
build   modules.alias      modules.builtin.bin  modules.drm          modules.modesetting  modules.pcimap       modules.usbmap
extra   modules.alias.bin  modules.ccwmap       modules.ieee1394map  modules.networking   modules.seriomap     source
kernel  modules.block      modules.dep          modules.inputmap     modules.ofmap        modules.symbols      updates
misc    modules.builtin    modules.dep.bin      modules.isapnpmap    modules.order        modules.symbols.bin  vdso

Можно перечислить их с этой командой:

$ find /lib/modules/`uname -r` -type f | less
/lib/modules/2.6.35.14-106.fc14.x86_64/modules.dep.bin
/lib/modules/2.6.35.14-106.fc14.x86_64/modules.ieee1394map
/lib/modules/2.6.35.14-106.fc14.x86_64/modules.networking
/lib/modules/2.6.35.14-106.fc14.x86_64/modules.dep
/lib/modules/2.6.35.14-106.fc14.x86_64/modules.isapnpmap
/lib/modules/2.6.35.14-106.fc14.x86_64/modules.builtin
/lib/modules/2.6.35.14-106.fc14.x86_64/modules.seriomap
/lib/modules/2.6.35.14-106.fc14.x86_64/modules.usbmap
...

Ссылки

6
27.01.2020, 20:28
  • 1
    я думаю, "Какие драйверы/модули я уже имею?" является немного вводящим в заблуждение - это - направления для обнаружения, какие (модульные) драйверы ядро загрузило в настоящее время. Это не будет включать драйверы, встроенные в ядро, и это не будет включать объем модулей, которые имеет в наличии Ваша система, так как они не загружаются (см. /lib/modules). –  goldilocks 22.07.2013, 21:14
  • 2
    @goldilocks - Спасибо! Вы были бы корректны. Определенно не считал способ, которым я думал, что он сделал в моей голове 8-). Я зафиксировал его и включил раздел /lib/modules также. –  slm♦ 22.07.2013, 21:24

Теги

Похожие вопросы