Перейти к содержимому

Dkms linux что это

  • автор:

Dynamic Kernel Module Support (Русский)

Состояние перевода: На этой странице представлен перевод статьи Dynamic Kernel Module Support. Дата последней синхронизации: 2022-02-27. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Dynamic Kernel Module Support (DKMS) — это фреймворк, который используется для генерации тех модулей ядра Linux, которые в общем случае не включены в дерево исходного кода. DKMS позволяет драйверам устройств автоматически пересобираться, когда ядро уже установлено.

Это означает, что пользователь может не ждать, пока какая-то компания, проект или сопроводитель пакета выпустит новую версию модуля. После введения хуков pacman пересборка модулей осуществляется автоматически во время обновления ядра.

Установка

Установите пакет dkms и заголовочные файлы требуемого ядра/ядер. Например, для ядра по умолчанию linux соответствует linux-headers . Другие ядра имеют собственные пакеты с заголовочными файлами.

Значительное число модулей, не включенных в ядро, имеют DKMS вариант; некоторые из них размещаются в официальных репозиториях, но большинство из них можно найти только в AUR.

Обновления

Обычно пересборка модулей DKMS во время обновления ядра выполняется бесшовно, но что-то может пойти не так. Следует обратить особое внимание на вывод pacman! Это, в частности, относится к тем системам, которым требуется модуль DKMS для успешной загрузки и/или если вы используете DKMS с ядром не из официальных репозиториев.

Для того, чтобы следовать изменениям в ядре, исправить ошибки или добавить необходимый функционал, подумайте об обновлении соответствующего пакета DKMS перед перезагрузкой.

Использование

Использование DKMS вручную.

Автозавершение по Tab будет доступно после выполнения команды:

# source /usr/share/bash-completion/completions/dkms

Список модулей

Чтобы увидеть текущее состояние модулей, версий и ядер внутри дерева, выполните:

# dkms status

Пересборка модулей

Пересборка всех модулей для текущего ядра:

# dkms autoinstall

или для конкретного ядра:

# dkms autoinstall -k 3.16.4-1-ARCH

Сборка конкретного модуля для текущего ядра:

# dkms install -m nvidia -v 334.21
# dkms install nvidia/334.21

Сборка модуля для всех ядер:

# dkms install nvidia/334.21 --all

Удаление модулей

Удаление модуля (старые автоматически не удаляются):

# dkms remove -m nvidia -v 331.49 --all
# dkms remove nvidia/331.49 --all

Если пакет dkms удален, то теряется информация о предыдущих файлах сборки модуля. В этом случае, перейдите в директорию /usr/lib/modules/kernel_release и /var/lib/dkms/package_name и удалите все файлы и каталоги, которые больше не используются.

Создание DKMS пакета

Initial ramdisk

В случаях для любых модулей, которые были установлены через DKMS и используются в Initrd, например zfs-dkms AUR , может быть полезно написать хук pacman для автоматической пересборки образа(ов) initramfs.

Например, когда используется linux и mkinitcpio, то для обновления модуля ZFS после каждого zfs-dkms AUR апгрейда,

/etc/pacman.d/hooks/90-mkinitcpio-dkms-linux.hook
[Trigger] Operation=Install Operation=Upgrade Operation=Remove Type=Package Target=zfs-dkms Target=linux [Action] Description=Update dkms modules in Linux initcpio Depends=mkinitcpio When=PostTransaction NeedsTargets Exec=/bin/sh -c 'while read -r trg; do case $trg in linux) exit 0; esac; done; /usr/bin/mkinitcpio -p linux'

Вы можете добавить больше таргетов в хук и сделать дополнительные копии хука, если в вашей система установлены другие ядра. Префикс 90- необходим для гарантированного запуска после хуков DPKMS.

Смотрите также

Dynamic Kernel Module Support

Dynamic Kernel Module Support или DKMS — фреймворк, который используется для генерации тех модулей ядра Linux, которые в общем случае не включены в дерево исходного кода. DKMS позволяет драйверам устройств автоматически пересобираться, когда ядро уже собрано. DKMS может быть использован в двух направлениях: автоматическая рекомпиляция всех модулей в случае установки новой версии ядра, и установка новых версий модулей (драйверов) в существующую систему без необходимости ручной компиляции или предкомпилированных пакетов. Это, к примеру, делает возможным использование новых видеокарт на старых Linux-системах.

DKMS был написан группой линукс-разработчиков в компании Dell в 2003 году. DKMS уже включен в многие дистрибутивы ОС LINUX, такие как Debian Squeeze, Ubuntu 8.10 [2] (и поздние версии) или Fedora [3] , является свободным ПО, выпускаемым под лицензией GNU General Public License (GPL) v2 или поздней.

DKMS поддерживает RPM и DEB форматы пакетов «из коробки».

Примечания

  1. http://linux.dell.com/dkms/permalink/ Dell’s DKMS repository
  2. IntrepidIbex/TechnicalOverview — Ubuntu Wiki
  3. Fedora Package Database — Invalid PackageBuild Name

Ссылки

  • Dell DKMS site (англ.)
  • LinuxJournal — Exploring DKMS (англ.)
  • Building a kernel module using DKMS (англ.)
  • Программное обеспечение по алфавиту
  • Ядро Linux

Wikimedia Foundation . 2010 .

Полезное

Смотреть что такое «Dynamic Kernel Module Support» в других словарях:

  • Dynamic Kernel Module Support — Saltar a navegación, búsqueda Dynamic Kernel Module Support Desarrollador Dell linux.dell.com/dkms/ Información general … Wikipedia Español
  • Dynamic Kernel Module Support — Original author(s) Gary Lerhaupt Developer(s) Dell Initial release 2003 Stable release 2.2.0.2[ … Wikipedia
  • Dynamic Kernel Module Support — Dernière version 2.1.1.2 (16 février 2010) … Wikipédia en Français
  • Dynamic Kernel Module Support — DKMS steht für Dynamic Kernel Module Support. Das 2003 von Dell entwickelte Framework für Linux überwacht, ob zusätzliche Kernelmodule manuell installiert wurden und aktualisiert die Module immer dann, wenn ein neuer/aktualisierter Kernel… … Deutsch Wikipedia
  • Kernel (computing) — A kernel connects the application software to the hardware of a computer In computing, the kernel is the main component of most computer operating systems; it is a bridge between applications and the actual data processing done at the hardware… … Wikipedia
  • Kernel (computer science) — In computer science, the kernel is the central component of most computer operating systems (OS). Its responsibilities include managing the system s resources (the communication between hardware and software components). As a basic component of… … Wikipedia
  • Linux kernel — Linux Linux kernel 3.0.0 booting Company / developer Linus Torvalds and thousands … Wikipedia
  • Dkms — Dynamic Kernel Module Support Dynamic Kernel Module Support Dernière version 2.1.0.1 (le 26 août 2009) … Wikipédia en Français
  • Ubuntu — Bildschirmfoto … Deutsch Wikipedia
  • List of Ubuntu releases — Main article: Ubuntu (operating system) Ubuntu 11.10 Oneiric Ocelot, the latest stable release of Ubuntu. Ubuntu releases are made semiannually by Canonical Ltd, the developers of the Ubuntu operating system, using the year and month of the… … Wikipedia
  • Обратная связь: Техподдержка, Реклама на сайте
  • �� Путешествия

Экспорт словарей на сайты, сделанные на PHP,
WordPress, MODx.

  • Пометить текст и поделитьсяИскать в этом же словареИскать синонимы
  • Искать во всех словарях
  • Искать в переводах
  • Искать в ИнтернетеИскать в этой же категории

dkms

A framework that allows for dynamic building of kernel modules. More information: https://github.com/dell/dkms.

  • List currently installed modules:
  • Rebuild all modules for the currently running kernel:
  • Install version 1.2.1 of the acpi_call module for the currently running kernel:
  • Remove version 1.2.1 of the acpi_call module from all kernels:

Изображение Шпаргалка по командам Linux, FreeBSD и MacOS

Операционная система Linux (Линукс или Лайнакс) во многом похожая на проприетарную Unix. Линукс распространён на серверах, что означает, что изучая её вы улучшаете свой навык администрирования, DevOps и программирования. Открытая …

Фото Linux

Заметки об Операционной Системе FreeBSD (фри бсд). Один из старейших Unix (Юникс), прародитель многих ОС, а также по мнению многих — самая свободная операционная система. Разработан в рамках общего проекта …

Фото FreeBSD

Трюки Bash

Полезные заметки по работе с командной строкой: bash и прочие *sh. Однострочники, скрипты, позволяющие решать большие и малые задачи администрирования и настройки Юникс систем. Zsh для современного MacOS, Bash для …

Фото Трюки Bash

Терминал/Консоль

Команды и инструкции терминала (консоли) Linux, MacOS, Windows и прочих операционных систем. Трюки и особенности командных оболочек, скрипты для администрирования Unix. Программирование и скриптование Windows и Linux, тонкая настройка Macos. …

Фото Терминал/Консоль

Также может быть вам интересно:

  • Так ли безопасен Linux? Несколько коммитов с уязвимосятми в stable
  • Пример своей консольной команды в Django проекте
  • Как на Bash посчитать число строк в проекте (директории)
  • И снова sudo, и снова «решето»
  • О многозадачности и планировщике задач (шедулер)

Свежее на «Цифре»
MessageId или как дебажить систему с минимумом проблем
Программы, 09.09.2023
Проверочный список для выпуска промышленных приложений с иллюстрациями
Работа и управление, 30.07.2023
В Google Pixel и Windows Snipping Tool есть возможность восстановления обрезанных изображений
Новости, 23.03.2023
Два подарка «под ёлочку» от Heroes of Might and Magic
Новости, 25.12.2022
Вышел Pulsar – редактор кода на основе Atom
Новости, 25.12.2022
Ленивый backup PostgreSQL
Программы, 17.12.2022
Google анонсировала OSV-Scanner: сканер уязвимостей в программных проектах
Новости, 16.12.2022

Фото Найдена уязвимость в утилите ping для FreeBSD

Найдена уязвимость в утилите ping для FreeBSD

Во FreeBSD найдена уязвимость, позволяющая выполнить код от пользователя root. Самое забавное, что на этот раз «дыра» была обнаружена в …

Фото Как запустить программу в терминале в фоне, без вывода какого либо текста

Как запустить программу в терминале в фоне, без вывода какого либо текста

Запускаем программу в терминале в фоновом режиме и разбираемся, как и почему это работает в Linux / Unix терминале.

Фото Как установить часовой пояс в Linux

Как установить часовой пояс в Linux

В рамках первичной настройки Операционной Системы важно установить и по какому времени вы живёте, ведь при следующем обновлении времени через …

Фото Как найти самые большие папки и файлы в Linux

Как найти самые большие папки и файлы в Linux

Когда кончается место на жестком диске, возникает закономерный вопрос: на что же оно было потрачено, какие файлы разрослись больше положенного?

Фото Команда grep – полезные ключи и примеры использования

Команда grep – полезные ключи и примеры использования

У команды «grep» довольно много различных особенностей. особенно, если учесть, что с английского это «решето» – а что может войти …

Фото Как создать неизменяемый файл в Linux / MacOS / FreeBSD

Как создать неизменяемый файл в Linux / MacOS / FreeBSD

Само собой, root может всё (если введёт пару команд), однако, это вполне легальный способ запретить изменение файла.

Фото Как удалить все Docker образы и контейнеры

Как удалить все Docker образы и контейнеры

Не всегда нужно удалять всё, но объяснение данного «рецепта» объяснит как в целом удалять образы и контейнеры.

Bash < потоки ввода >вывода && управляющие конструкции || коротко о главном

Небольшая заметка о конструкциях Bash, в которых путается большинство новичков. А именно: >,

Фото Лучше плохо, но сейчас. Взгляд на пути развития ПО

Лучше плохо, но сейчас. Взгляд на пути развития ПО

Сейчас такие языки как Perl и Ruby чувствуют себя не лучшим образом. Но ещё 10 – 15 лет назад они …

Зачем нужен DKMS?

Прочитал о выходе нового драйвера NVidia, и что в нем «обеспечена возможность динамической пересборки модуля ядра Linux с использованием DKMS». Почитал про DKMS тут и тут. Не понял где профит.

1. Заявляется что «DKMS позволяет драйверам устройств автоматически пересобираться, когда ядро уже собрано». А без DKMS они как собираются — перед тем как ядро собрано? При условии правильного линка /usr/src/linux , в Gentoo (уверен что и в другом дистрибутиве) emerge nvidia-drivers тоже сделает то, что нужно.
2. Заявляется «автоматическая рекомпиляция всех модулей в случае установки новой версии ядра». Но оно ж не мониторит систему на предмет нового ядра! Просто когда ты установил новое ядро, будь добр, переустанови «внешние» драйвера.

Kroz ★★★★★
14.07.12 09:27:45 MSK

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *