Вопрос: как мне добавить или удалить драйвер устройства в запущенное ядро Linux?
Ответ:
Для добавления и удаления модулей из ядра, в Linux существует команда modprobe.
В MS Windows используется термин драйвер устройства.
В Linux используется термин модули.
Ядро Linux имеет модульную архитектуру.
Во время загрузки, в память загружается только минимально необходимая часть ядра.
Если вы установили новое устройство, вам нужно установить драйвер которым является соответствующий модуль ядра.
Командой modprobe можно добавить или удалить модуль из ядра Linux.
Обычно модули находятся в специальной директории /lib/modules/$(uname -r)
Ответ:
Для добавления и удаления модулей из ядра, в Linux существует команда modprobe.
В MS Windows используется термин драйвер устройства.
В Linux используется термин модули.
Ядро Linux имеет модульную архитектуру.
Во время загрузки, в память загружается только минимально необходимая часть ядра.
Если вы установили новое устройство, вам нужно установить драйвер которым является соответствующий модуль ядра.
Командой modprobe можно добавить или удалить модуль из ядра Linux.
Обычно модули находятся в специальной директории /lib/modules/$(uname -r)
Вывод:
boot initrd misc modules.ccwmap modules.ieee1394map modules.isapnpmap modules.symbols source build kernel modules.alias modules.dep modules.inputmap modules.pcimap modules.usbmap
Задача: добавление модуля foo
Введите от имени root следующую команду:
# modprobe foo
Задача: список всех загруженных модулей
Используйте команду lsmod, чтобы посмотреть статус модулей ядра Linux:
# lsmod
Вывод:
Module Size Used by smbfs 75465 0 md5 5953 1 ipv6 284193 10 ipt_TOS 4033 2 iptable_mangle 4545 1 ip_conntrack_ftp 74801 0 ip_conntrack_irc 74033 0 ipt_REJECT 8897 43 ipt_LOG 8513 2 ipt_limit 4033 6 iptable_filter 4673 1 ipt_multiport 3521 4 ipt_state 3393 16 ip_conntrack 54297 3 ip_conntrack_ftp,ip_conntrack_irc,ipt_state ip_tables 21825 8 ipt_TOS,iptable_mangle,ipt_REJECT,ipt_LOG,ipt_limit,iptable_filter,ipt_multiport,ipt_state i2c_dev 13889 0 i2c_core 28865 1 i2c_dev dm_mirror 32721 0 dm_mod 68609 1 dm_mirror button 9313 0 battery 11465 0 ac 6985 0 ohci_hcd 24529 0 ehci_hcd 33989 0 tg3 109381 0 floppy 66065 0 ext3 137937 2 jbd 69105 1 ext3 sata_svw 10053 3 libata 78345 1 sata_svw sd_mod 19393 4 scsi_mod 141457 2 libata,sd_mod
Задача: удаление модуля foo
Добавьте опцию -r к команде modprob, чтобы удалить модуль# modprobe -r foo
Так же можно использовать команду rmmod, которая является простой программой для удаления модуля из ядра Linux
# rmmod foo
Взято тут
Комментариев нет:
Отправить комментарий