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

Можно выйти $ с \:

rm \$file
5
26.01.2012, 05:14
1 ответ

Для Debian/Ubuntu, чего-то как

dpkg -S *.ko | grep /lib/modules | grep -v linux-image

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

nvidia-kernel-2.6.32-5-vserver-686-bigmem: /lib/modules/2.6.32-5-vserver-686-bigmem/nvidia/nvidia.ko
nvidia-kernel-2.6.26-2-vserver-686-bigmem: /lib/modules/2.6.26-2-vserver-686-bigmem/nvidia/nvidia.ko
nvidia-kernel-2.6.26-1-vserver-686-bigmem: /lib/modules/2.6.26-1-vserver-686-bigmem/nvidia/nvidia.ko

Это действительно предполагает, что все установленные модули известны упаковочной системе, но это обычно - хорошая идея так или иначе. По крайней мере, на Debian, устанавливая модули ядра как двоичные пакеты обычно возможно. Этот подход имеет преимущество, которое он говорит Вам, которые упаковывают модуль ядра, принадлежит. Аналогичные подходы должны работать с другими дистрибутивами Linux, которые используют систему управления пакета; т.е. большинство из них.

Так как местоположение сторонних модулей подобно тем из модулей в ядре, не легко отличить их. Запросы диспетчера пакетов делают вещи легче. Однако в моем в настоящее время рабочем ядре, в каталоге /lib/modules/2.6.32-5-vserver-686-bigmem, Я замечаю, что модули Nvidia находятся в отдельном каталоге от основных модулей ядра, а именно, /lib/modules/2.6.32-5-vserver-686-bigmem/nvidia по сравнению с /lib/modules/2.6.32-5-vserver-686-bigmem/kernel. Я не знаю, является ли такое расположение политикой Debian или нет. Самой близкой вещью к политике ядра Debian, о которой я знаю, является Руководство Ядра Debian, но я ничто не нашел релевантным там. Конечно, Ubuntu не связывается политикой Debian в любом случае.

3
27.01.2020, 20:42
  • 1
    Спасибо! Ваша идея состоит в том, чтобы найти *.ko это было установлено с диспетчером пакетов, но не находится в пакете ядра. В большинстве систем это, вероятно, дает почти завершенный (если не завершенный) список внешних модулей ядра. Собственные драйверы видеокарты являются существенными исключениями, но я могу конкретно искать их. –  netvope 26.01.2012, 19:18
  • 2
    BTW, я нашел, что на Ubuntu 10.04, единственные пакеты (в официальном репозитории), которые содержат модули ядра, linux-backports-modules и linux-image пакеты. Я использовал эту команду для проверки: apt-file search --regexp '\.ko$' | egrep '^[^ ]+: /lib/modules' | cut -d: -f1 | uniq -c –  netvope 26.01.2012, 19:43
  • 3
    @netvope: Спасибо за Ваши комментарии. На самом деле собственные драйверы видеокарты иногда включаются в Debian/Ubuntu также - видят пакеты модуля Nvidia, которые я упоминаю выше. Ubuntu намного более восторженна по поводу включения их все же. Кроме того, существует много пакетов и в Ubuntu и в Debian, какие dosn't имеют структуру, которую Вы заявляете. Вы уверены, что ищете все репозитории? –  Faheem Mitha 26.01.2012, 21:02
  • 4
    , Похож, это потому что они nvidia-* пакеты только создают модули при установке их. Например, nvidia-173 (описание = "двоичный файл NVIDIA драйвер Xorg, модуль ядра и библиотека VDPAU"), содержат набор источников C и заголовков, но нет *.ko файлы. Поэтому мой предыдущий комментарий на основе apt-file результаты являются неправильными. –  netvope 27.01.2012, 07:28

Теги

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