apt-get install -y module-assistant
Готовим m-a к работе, скачиваем исходники нужных нам ядер и все-все-все, что может потребоваться для сборки ядер:
m-a prepare
Обновляем данные об имеющихся пакетах (я не совсем понял, хранится ли список удаленно или нет):
m-a update
Запрашиваем весь список имеющихся пакетов:
m-a list
Или есть способ с более красивой выдачей (взят из Debian wiki):
m-a list | grep -E '^[^ ].*\(' | cut -d " " -f 1 | sort
Скачиваем, компилируем и устанавливаем в текущее ядро драйвер squashfs:
m-a auto-install squashfs
Или можно воспользовать укороченной версией команды:
m-a a-i squashfs
Теперь наш модуль появился в списке установленных (у module-assistant есть своего рода база данных по типу той, что есть у rpm / dpkg):
m-a list-installed
Вуаля, драйвер собран, теперь загружаем его:
modprobe squashfs
modinfo squashfs
filename: /lib/modules/2.6.26-2-amd64/kernel/fs/squashfs/squashfs.ko
license: GPL
author: Phillip Lougher
description: squashfs 3.3, a compressed read-only filesystem
depends: zlib_inflate
vermagic: 2.6.26-2-amd64 SMP mod_unload modversions
Еще стоит обратить внимание, что m-a не просто "кладет" модуль в папку модулей активного ядра, но и делает это "правильно", через deb пакет:
dpkg -l | grep squ | grep modul
ii squashfs-modules-2.6.26-2-amd64 1:3.3-7+2.6.26-25lenny1 Squash filesystem support for Debian Linux kernels
Содержимое .deb пакета, впрочем, сводится к паре файликов:
dpkg -L squashfs-modules-2.6.26-2-amd64
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/squashfs-modules-2.6.26-2-amd64
/usr/share/doc/squashfs-modules-2.6.26-2-amd64/copyright
/usr/share/doc/squashfs-modules-2.6.26-2-amd64/changelog.Debian.gz
/lib
/lib/modules
/lib/modules/2.6.26-2-amd64
/lib/modules/2.6.26-2-amd64/kernel
/lib/modules/2.6.26-2-amd64/kernel/fs
/lib/modules/2.6.26-2-amd64/kernel/fs/squashfs
/lib/modules/2.6.26-2-amd64/kernel/fs/squashfs/squashfs.ko
Итак, все отлично, модуль установлен и работает :) Но даст ли данная тулза автоматизацию, если ядро было обновлено через apt-get или вовсе было поставлено другое ядро (из репозитория, разумеется) ? Пока ответа на этот вопрос у меня нету, скорее всего, потребуется просто сделать a-i.
Источник: http://wiki.debian.org/ModuleAssistant
Не удалось найти пакет squashfs-source
ReplyDelete