Benötige ich DKMS?

14

Meine Ubuntu-basierte Distribution enthielt einige vorinstallierte VirtualBox-Komponenten. Ich habe sie deinstalliert und das DKMS-Paket automatisch entfernt.

Nach dem, was ich gesehen habe, sieht es nach einem nützlichen Paket aus, aber brauche ich es? Sachen wie VirtualBox und CDemu installieren es von selbst und Ubuntu wird nicht standardmäßig installiert ausgeliefert, daher wird es vermutlich nur von einigen Programmen "benötigt", die Module oder ähnliches installieren.

Ich bin kein langer GNU / Linux-Benutzer, daher habe ich nicht viel Erfahrung, ich habe nicht einmal Erfahrung mit dem Kompilieren.

Jetzt steht ein Linux-Kernel-Update an, aber ich weiß nicht, ob ich es aktualisieren soll, ohne dass DKMS installiert ist.

Justauser
quelle
Verwenden Sie proprietäre Treiber, z. B. NVIDIA-Grafikkarten oder ähnliche spezielle Treiber, die nach der Installation von Ubuntu installiert wurden?
mchid
Nein, nur die kostenlosen Treiber.
Justauser
Als zusätzliche Anmerkung: Auf einem modernen Computer müssen Standardanwendungen (wie DKMS) nicht deinstalliert werden. Im Gegensatz zu (beispielsweise) Windows verlangsamen nicht verwendete Anwendungen Ihren Computer nicht, und auf einem modernen System ist der von ihnen belegte Speicherplatz unbedeutend.
Paddy Landau

Antworten:

15

Wenn Sie keine dkms-Module installiert haben, benötigen Sie das dkms-Paket nicht. Es ist nicht standardmäßig in Ubuntu installiert.

Wenn Sie einige proprietäre Treiber wie Nvidia, AMD oder Broadcom installieren, wird auch das dkms-Paket automatisch installiert.

Um zu überprüfen, ob Sie dkms-Module haben, die Sie ausführen können

dkms status

Wenn der dkms nicht installiert ist, funktioniert dieser Befehl nicht, aber Sie können in das /var/lib/dkms/Verzeichnis schauen .

Quellen von dkms-Paketen sind in gespeichert /usr/src/

Pilot6
quelle
Wie überprüfe ich, ob ich einige Module habe? Sie haben Recht, ich habe versucht, einen proprietären NVIDIA-Treiber zu installieren, und er wollte DMKS installieren. Wenn ich ihn also wirklich brauchte, wird er vom Paket-Manager für mich installiert.
Justauser
@ Justauser Zur Antwort
hinzugefügt
Ich habe versucht, DKMS zu installieren, nur um den Befehl zu versuchen, es kam mit nichts. Und es gab keinen dkms-Ordner in / var / lib / In / usr / src /, es gibt 2 Ordner mit Bezug zu Linux-Headern
Justauser
Sie haben also keine dkms-Module.
Pilot6
7

Ich vermute, Sie haben sich bereits ein wenig mit DKMS beschäftigt. Es wird zum Aktualisieren von Kernelmodulen verwendet, die sich außerhalb der normalen Kernelquelle befinden. Oft sind es Treiber und Pakete wie VirtualBox, die DKMS benötigen. Möglicherweise brauchen Sie DKMS nicht unbedingt, aber es ist praktisch, wenn Sie es installiert haben, insbesondere wenn Sie zusätzliche Pakete installiert haben. Wenn Sie es jedoch nicht installiert haben, wird Ihr Kernel-Upgrade nicht zerstört.

Es gibt weitere Informationen über DKMS hier , und eine nützliche Antwort ubuntu auf fragt hier .

Arronisch
quelle
Ich habe diese Antwort bereits gesehen, aber sie ist zu technisch. Was meinen Sie mit "zusätzlichen Paketen"? Du meinst manuell installiert? Und was bedeutet es "Kernelmodule, die sich außerhalb der normalen Kernelquelle befinden"?
Justauser
2
Zusätzliche Pakete bedeuten andere Software, die Sie installiert haben. Einige Pakete, wie VirtualBox, müssen mit dem Kernel interagieren und daher Module im Kernel installieren, damit sie ausgeführt werden können. Wenn der Kernel aktualisiert wird, funktioniert das Paketmodul möglicherweise nicht mehr oder wird möglicherweise überschrieben. Die DKMS stellt sicher, dass Module, die durch Zusatzpakete in den Kernel geladen werden, bei einem Kernel-Update entsprechend behandelt werden und die Software weiterhin funktioniert.
Arronical
5

Kurze Antwort: Wenn Sie Vitualbox auch nach einem Kernel-Update verwenden möchten, benötigen Sie DKMS sowie Kernel-Header, die zu Ihrem Kernel passen.

Lange Antwort: Dieses System hilft Ihnen beim Kompilieren von Treibern (auch Kernelmodule genannt), damit diese mit Ihrem aktuellen Kernel ausgeführt werden können. Wenn Sie ein Modul nicht neu kompilieren, kann es vorkommen, dass das Modul nicht geladen werden kann und daher die von ihm bereitgestellte Funktion nicht mehr verfügbar ist. In Ihrem Fall: Wenn Sie Virtual Box-Module nicht neu kompilieren, ist Virtual Box nach dem Update nicht verfügbar. Es wird gestartet, kann jedoch keine VM starten.

frlan
quelle
5

Ubuntu bootet problemlos ohne DKMS.

Wenn alles, was Sie verwenden, von DKMS abhängt, es aber nicht Depends:in der Verpackung hat, werden Sie feststellen, dass Sie DKMS neu installieren und einen Fehler melden können.

DKMS ist für Pakete gedacht, die ein Kernel-Modul in Quellform (oder binär mit einem Quell-Wrapper) bereitstellen, sodass sie das Modul nicht bei jeder Kernel-Neuerstellung aktualisieren müssen. Der Standardkernel selbst funktioniert immer, unabhängig von der DKMS oder nicht.

Peter Cordes
quelle