¿"Necesito" DKMS?

14

Mi distribución basada en Ubuntu vino con algunas cosas de VirtualBox preinstaladas, así que lo desinstalé y eliminé automáticamente el paquete DKMS.

Por lo que vi, parece un paquete útil, pero ¿lo necesito? Cosas como VirtualBox y CDemu lo instalan por su cuenta, y Ubuntu no se entrega con él instalado por defecto, por lo que supongo que es "necesario" solo por algunos programas que instalan módulos o algo así.

No soy un usuario largo de GNU / Linux, así que no tengo mucha experiencia, ni siquiera tengo experiencia compilando.

Ahora tengo una actualización del kernel de Linux pendiente, pero no sé si debería actualizarla sin DKMS instalado.

Justauser
fuente
¿Está utilizando controladores propietarios, como, entre otros, gráficos de nvidia o algo especial como el que se instaló después de instalar ubuntu?
mchid
No, solo los controladores gratuitos.
Justauser
Como nota adicional: no es necesario en una computadora moderna desinstalar aplicaciones predeterminadas (como DKMS). A diferencia de (por ejemplo) Windows, las aplicaciones no utilizadas no ralentizan su computadora, y en un sistema moderno, el espacio que ocupan es insignificante.
Paddy Landau

Respuestas:

15

Si no tiene instalados los módulos dkms, no necesita el paquete dkms. No está instalado por defecto en Ubuntu.

Cuando instala algunos controladores propietarios, como Nvidia, AMD o Broadcom, el paquete dkms también se instala automáticamente.

Para verificar si tiene algún módulo dkms, puede ejecutar

dkms status

Si el dkms no está instalado, este comando no funcionará, pero puede buscar en el /var/lib/dkms/directorio.

Las fuentes de los paquetes dkms se almacenan en /usr/src/

Piloto6
fuente
¿Cómo verificar si tengo algunos módulos? Tienes razón, intenté instalar el controlador NVIDIA patentado y quería instalar DMKS, así que supongo que si realmente lo necesitaba, el administrador de paquetes lo instalará por mí.
Justauser
@Justauser agregado a la respuesta
Pilot6
Traté de instalar DKMS solo para probar el comando, vino sin nada. Y no había carpeta dkms en / var / lib / In / usr / src /, hay 2 carpetas relacionadas con linux-headers
Justauser
Entonces no tienes módulos dkms.
Pilot6
7

Supongo que ya has mirado un poco en DKMS, se usa para actualizar los módulos del kernel que están fuera de la fuente normal del kernel. A menudo, los controladores y paquetes como VirtualBox necesitan DKMS. Es posible que no 'necesite' necesariamente DKMS, pero es útil tenerlo instalado, especialmente si ha instalado paquetes adicionales, aunque no tenerlo instalado no arruinará la actualización de su núcleo.

Hay más información sobre DKMS aquí , y una respuesta útil sobre ask ubuntu aquí .

Arronico
fuente
Ya he visto esa respuesta, pero es demasiado técnica. ¿Qué quieres decir con "paquetes adicionales"? ¿Quieres decir instalado manualmente? ¿Y qué significa "módulos del núcleo que están fuera de la fuente normal del núcleo"?
Justauser
2
Los paquetes adicionales significan otro software que has instalado. Algunos paquetes, como VirtualBox, deben interactuar con el kernel y, por lo tanto, instalar módulos en el kernel para que puedan ejecutarse. Cuando se actualiza el kernel, es posible que el módulo de paquetes ya no funcione o se sobrescriba. DKMS asegura que si hay módulos cargados en el núcleo mediante paquetes suplementarios, se tratan adecuadamente cuando el núcleo se actualiza y el software continúa funcionando.
Arronical
5

Respuesta corta: si desea utilizar Vitualbox también después de la actualización del núcleo, necesitará DKMS y los encabezados del núcleo que se ajusten a su núcleo.

Respuesta larga: este sistema le ayuda a compilar controladores (también conocidos como módulos del núcleo) para que puedan ejecutarse con su núcleo actual. Si no vuelve a compilar un módulo, sucederá que el módulo no se puede cargar y, por lo tanto, la función proporcionada por él ya no estará disponible. En su caso: si no recompila los módulos de caja virtual, Virtualbox no estará disponible después de la actualización. Se iniciará, pero no puede iniciar ninguna VM.

frlan
fuente
5

Ubuntu arrancará bien sin DKMS.

Si todo lo que usó dependía de DKMS pero no lo tenía como un Depends:paquete, lo notará y podrá reinstalar DKMS y presentar un error.

DKMS es para paquetes que proporcionan un módulo de núcleo en forma de origen (o binario con un contenedor de origen), por lo que no tienen que actualizar el módulo para cada reconstrucción de núcleo. El núcleo estándar en sí mismo siempre funciona, independientemente de DKMS o no.

Peter Cordes
fuente