LINUX.ORG.RU
ФорумTalks

dkms-gentoo

 , ,


2

2

вспомнил тут про него...
запилил проверку не только для загруженного ядра, но и для ядра по симлинку, версии или пути до корня сорсов
чоб ещё хорошего запилить?
да, это оно ---> http://bpaste.net/show/44847/
blackst0ne, carasin, Myp3ik,...

★★★★

Последнее исправление: megabaks (всего исправлений: 2)

Чем dkms лучше module-rebuild ?

Помоему dkms велосипед и для генты не особо то актуальный.

Скрипт потестирую.

init_6 ★★★★★
()
Ответ на: Чем dkms лучше module-rebuild ? от init_6

ТС утверждает, что ему лень вспоминать, что надо запускать module-rebuild и его устраивает автоматический запуск этого скрипта при загрузке..

qnikst ★★★★★
()
Ответ на: Чем dkms лучше module-rebuild ? от init_6

разные задачи
dkms пересобирает только нужное, в отличии от
он при загрузке проверяет модули, в отличии от
таки дела

megabaks ★★★★
() автор топика
Ответ на: комментарий от qnikst

ничего, что задачи разные?
ничего, что при загрузке старого ядра, после обновления виртбокса, например, я получу старые модули?
а с dkms этого не произойдёт
а уж ежели дрова не запустятся...
короче, сначала думайте, господа, потом пишите про всякие модуле-ребилды

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

ничего, что при загрузке старого ядра, после обновления виртбокса, например, я получу старые модули?

А ничего что модули станут в /lib/modules/`uname -r` и для разных версий ядра этот путь ну никак не один и тот же. Запустить module-rebuild для нужного ядра и профит.

dkms пересобирает только нужное, в отличии от

Дык как бы

http://www.gentoo.org/doc/en/kernel-upgrade.xml

If you use any kernel modules that are not included in the kernel source tree but are provided elsewhere in Portage (e.g. ALSA drivers and NVIDIA or ATI graphics drivers), then you must reinstall these after upgrading the kernel. This is as simple as re-merging the packages involved. For more information, refer to the chapter on Configuring the Kernel in the Gentoo Handbook.

We provide you with an easy tool (sys-kernel/module-rebuild) which rebuilds all the kernel modules you have installed using separate ebuilds for the kernel at /usr/src/linux. Its use is straightforward. After emerging it, simply run module-rebuild populate to populate the database with a list of packages that will need to be rebuilt after upgrading the kernel. Once you have finished upgrading or recompiling your kernel, run module-rebuild rebuild to rebuild the drivers for your new kernel.

я так и не увидел разницы с dkms.

init_6 ★★★★★
()
Ответ на: комментарий от init_6

А ничего что модули станут в /lib/modules/`uname -r`

скрипт почитай для начала
не увидел?
молодец, ты скурил букварь
короче - сначала разберись в вопросе

megabaks ★★★★
() автор топика

Не обращай внимания, на тормозов прогресса и просто не догоняющих. Делаешь правильное дело. Молодец. =)

daemonpnz ★★★★★
()
Ответ на: комментарий от init_6

ты хотя бы почитай хелп этого module-rebuild
он НЕ УМЕЕТ пересобирать автоматом только НУЖНЫЕ пакеты
или тебе руками надо указывать пакеты, или пересобирать все
dkms же всё делает сам

megabaks ★★★★
() автор топика
Последнее исправление: megabaks (всего исправлений: 1)
Ответ на: комментарий от megabaks

И сравни с цитатой из http://www.gentoo.org/doc/en/kernel-upgrade.xml

http://en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support

Dynamic Kernel Module Support (DKMS) is a framework used to generate Linux kernel modules whose sources do not generally reside in the Linux kernel source tree. DKMS enables kernel device drivers to be automatically rebuilt when a new kernel is installed.

An essential feature of DKMS is that it automatically recompiles all DKMS modules if a new kernel version is installed. This allows drivers and devices outside of the mainline kernel to continue working after a Linux kernel upgrade.

Another benefit of DKMS is that it allows the installation of a new driver on an existing system, running an arbitrary kernel version, without any need for manual compilation or precompiled packages provided by the vendor.

init_6 ★★★★★
()
Ответ на: комментарий от daemonpnz

самое плохое, что эти тормоза слишком сильно тормозят - воняют жжёной резиной на весь тред

megabaks ★★★★
() автор топика
Ответ на: комментарий от init_6

4.2!

module-rebuild populate && module-rebuild rebuild
** Module already exists in moduledb.
** Setting app-emulation/virtualbox-modules-4.1.22; rebuild=1.
** Module already exists in moduledb.
** Setting x11-drivers/nvidia-drivers-304.43; rebuild=1.
** Preparing to merge modules:
** Packages which I will emerge are:
	=x11-drivers/nvidia-drivers-304.43
	=app-emulation/virtualbox-modules-4.1.22
последнее китайское
достал ты тупить!
для сравнения
dkms-gentoo --check

Target: 3.5.3-pf

vboxpci.ko                                                                                                                                               [ ok ]
vboxnetadp.ko                                                                                                                                            [ ok ]
vboxnetflt.ko                                                                                                                                            [ ok ]
vboxdrv.ko                                                                                                                                               [ ok ]
nvidia.ko                                                                                                                                                [ ok ]
и всё - модули есть, версии соответсвуют - ничего пересобирать не надо!

megabaks ★★★★
() автор топика
Последнее исправление: megabaks (всего исправлений: 1)
Ответ на: комментарий от megabaks

Да хоть сто китайских…

{DKMS}/{module-rebuild} нужно для пересборки модулей ядра не включенных в само ядро при смене версии ядра. Или я не прав?

init_6 ★★★★★
()
Ответ на: Да хоть сто китайских… от init_6

с этим никто не спорит
только делают они это далеко не одинаково
ты пересобираешь всю систему вместо обновления 1-2-х пакетов?

megabaks ★★★★
() автор топика
Ответ на: Да хоть сто китайских… от init_6
dkms-gentoo --check-manual /usr/src/linux-3.4.6-pf/

Target: 3.4.6-pf

vboxpci.ko                                                                                                                                               [ ok ]
vboxnetadp.ko                                                                                                                                            [ ok ]
vboxnetflt.ko                                                                                                                                            [ ok ]
vboxdrv.ko                                                                                                                                               [ ok ]
nvidia.ko                                                                                                                                                [ !! ]

 * IMPORTANT: 1 news items need reading for repository 'gentoo'.
 * Use eselect news to read news items.

Calculating dependencies... done!
>>> Verifying ebuild manifests
>>> Running pre-merge checks for x11-drivers/nvidia-drivers-304.43
 * Determining the location of the kernel source code
 * Found kernel source directory:
 *     /usr/src/linux
^C

вот так твой module-rebuild просто не способен сделать
а отсюда следует: просто при загрузке вызывать его смысла нет - на каждой загрузке он будет пересобирать ВСЕ сторонние модули

megabaks ★★★★
() автор топика
Ответ на: комментарий от daemonpnz

прав, но что делать если нужно откатиться на ядро, но после обновления ядра ты делал обновление каких-либо блобов (vbox,nvidia,ati).

emerge =sys-kernel/vanilla-sources-{старая_версия_на_которую_нужно_откатится}

cd /usr/src/{старая_версия_на_которую_нужно_откатится}; make menuconfig && make bzImage && make modules… && module-rebuild rebuild
init_6 ★★★★★
()
Ответ на: комментарий от init_6

на этом-то этапе они аналогичны
но вот при загрузке в старое ядро твой ребилд сливает
ещё раз - разберись в вопросе!

megabaks ★★★★
() автор топика
Ответ на: комментарий от daemonpnz

Ох, лол, зачем мне заново мержить ядро, если оно у меня уже собранное в буте лежит?! Не тупи.

«Откаты» бывают разные

init_6 ★★★★★
()
Ответ на: комментарий от megabaks

но вот при загрузке в старое ядро твой ребилд сливает

Он не мой :)

init_6 ★★★★★
()
Ответ на: комментарий от daemonpnz

в моём случае, dkms пересоберёт только нужные модули, которых не хватает, а module-rebuild всё

Ладно уговорил.

init_6 ★★★★★
()
Ответ на: комментарий от daemonpnz

зачем вобще загружать неконсистентную систему?

P.S. я не спорю с тем, что dkms имеет право на жизнь, но оно не нужно при правильном использовании существующих инструментов. Поэтому кидающиеся всякими «подумай», «неосилятор» и прочие, не нужны.

qnikst ★★★★★
()
Ответ на: комментарий от qnikst

eselect kernel set n ; emerge @module-rebuild ; eselect kernel set n';

ты тоже пересобираешь всю систему вместо обновления пары пакетов?

megabaks ★★★★
() автор топика
Ответ на: комментарий от qnikst

остынь, ты не вкурил зачем это надо - вот и всё
зачем использовать юзы, когда можно поправить ебилд на предмет нужных опций?
здесь аналогичная ситуация - dkms избавляет от лишних телодвижений
вот и всё

megabaks ★★★★
() автор топика
Ответ на: комментарий от qnikst

зачем вобще загружать неконсистентную систему?

Элементарно! Чтобы затем при помощи dkms-а пересобирать нужные модули :)

init_6 ★★★★★
()

ФЛУУУУУД!

давайте уже про топик вспомним и перестанем тупить!

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

здесь аналогичная ситуация - dkms избавляет от лишних телодвижений

Лови симпафку =)

daemonpnz ★★★★★
()
Ответ на: комментарий от init_6

Зачем делать что-то руками, если можно прекрасно автоматизировать?!

daemonpnz ★★★★★
()
Ответ на: комментарий от megabaks

тебе действительно интересно дальше вести этот флуд? мне вот так-то нет

Поясняю, без лишней грубости: бывают темы, где ты в упор отказываешься видеть, что тебе говорят, и абсолютно не воспринимаешь окружающий мир скатываясь на оскорбления/пожелания подумать/проч. лишние лексические приёмы. Учитывая, что у dkms есть место приложения, и то, что я не пытаюсь доказать, что он ненужен, или @module-rebuild покроет все возможности dkms, а так же то, что твоя точка зрения оправдана, плюс то что впиливать его в дерево/использовать самому/разбираться, что можно улушить глобально (как с s-l-r), то не я не вижу смысла в последующих пререканиях :). Тем более, что для любой из этих целей, уже придётся включать в мозге сложный grep.

а аналогии никогда не работают, исключение: попытка красиво потроллить.

qnikst ★★★★★
()
Ответ на: комментарий от qnikst

таки осёл тут не я:
1. module-rebuild надо запускать руками
2. он пересобирает ВСЕ модули
3. автоматом он при загрузке либо ничего не делает, либо пересоберёт ВСЕ модули
с dkms же всё иначе:
1. поставил
2. забыл
всё!

megabaks ★★★★
() автор топика
Последнее исправление: megabaks (всего исправлений: 1)
Ответ на: комментарий от megabaks

те, кто это не способен это осилить...мне их жаль

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

1. module-rebuild надо запускать руками

если бы ядро пересобиралось emerge это был бы аргумент.

2. он пересобирает ВСЕ модули

а ты уверен? тогда объясни ка следующий выхлоп:

qnikst lib64 # emerge -av @module-rebuild
These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] app-emulation/virtualbox-modules-4.1.18  USE="-pax_kernel" 0 kB
[ebuild   R    ] net-wireless/broadcom-sta-5.100.82.112-r2  0 kB
[ebuild   R   *] sys-power/acpi_call-9999  0 kB
[ebuild     U  ] x11-drivers/nvidia-drivers-304.43 [302.17-r1] USE="X%* acpi (multilib) tools -pax_kernel%" 62,593 kB


qnikst lib64 # emerge -uav @module-rebuild
These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U  ] x11-drivers/nvidia-drivers-304.43 [302.17-r1] USE="X%* acpi (multilib) tools -pax_kernel%" 44,443 kB
qnikst lib64 # emerge -uav @module-rebuild
These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U  ] x11-drivers/nvidia-drivers-304.43 [302.17-r1] USE="X%* acpi (multilib) tools -pax_kernel%" 44,443 kB

так что ещё раз предложу завязать этот бесполезный разговор.

qnikst ★★★★★
()
Ответ на: комментарий от qnikst

а теперь из альфа-тестеров вернись в люди и узрей что именно у них
ты тоже споришь о том, о чём ничего не знаешь
выхлопы выше я дал
покури, приходи, а пока ты просто некомпетентен в данном вопросе
+ автомат ниоткуда не появился опять же

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

я тебе уже сказал, что в этом треде ты не интересен. Мне твоё мнение прекрастно известно, так же я не вижу смысла dkms для себя.

qnikst ★★★★★
()
Ответ на: комментарий от daemonpnz

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

qnikst ★★★★★
()
Ответ на: комментарий от qnikst

некорректное обновление системы, это не верно.

загрузка уже собранного предыдущего, например, ядра == некорректное обновление? о_О
вот те раз...

megabaks ★★★★
() автор топика
Последнее исправление: megabaks (всего исправлений: 1)

Увы, но всё, что вспомнил по фичам akmods'а, я выложил ещё в том треде. Но рад, что кой-чего из мною предложенного пригодилось.

carasin ★★★★★
()
Ответ на: комментарий от megabaks

если бы некоторые умники тут _лишний_ раз не приставали, и отвечали бы на вопросы, которые им задают, а не те, какие им интересны, то всем было бы лучше.

Да кому-то дальше хочется учить меня жизни, тому, что за portage-2.1 жизни нет и проч, есть jabber.

qnikst ★★★★★
()
Ответ на: комментарий от qnikst

отвечали бы на вопросы, которые им задают

это ты про кого?
какие вопросы не были услышаны?

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

ИМХО. если использование старого ядра входит в обычные use cases, то обновление пакета предоставляющего модули ядра, без корректного обновления всех ядер это некорректное обновление.

Если честно то этот юзкей, с моей точки, зрения единственный бонус dkms, который не покрывается другими решениями, если бы его не было, моя точка зрения была бы «не нужно».

qnikst ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.