¿Cómo agregar los parámetros del módulo del núcleo?

20

¿Cómo agregar un parámetro de módulo de kernel en Ubuntu 11.04?

¿Puedo usar el /etc/modulearchivo? Si es así, ¿cómo?

waterloo2005
fuente
1
¿Te refieres a parámetros como i915.modeset=1?
Lekensteyn
Me refiero a 'opciones thinkpad_acpi fan_control = 1' en un archivo bajo /etc/modprobe.d/ o 'thinkpad_acpi fan_control = 1' en / etc / modules?
waterloo2005

Respuestas:

19

/etc/modulesParece ser cargado por /etc/init/module-init-tools.conf. El primer argumento es el nombre del módulo, otros argumentos son los parámetros. Agregar lo siguiente a /etc/modulesparece estar bien:

thinkpad_acpi fan_control=1

Para cargar este módulo y establecer estos parámetros en la etapa inicial del arranque, agregue la línea anterior al /etc/initramfs-tools/modulesarchivo. Después de un cambio en ese archivo, debe regenerar el disco ram:

sudo update-initramfs -u

Como una posible alternativa, puede intentar agregar las opciones a la línea del kernel (no lo he probado yo mismo, pero parece funcionar para configuraciones como i915.modeset=1. Edite /etc/default/gruby encuentre la línea con GRUB_CMDLINE_LINUX_DEFAULT="quiet splash". Reemplácela por algo como:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash thinkpad_acpi.fan_control=1"

Para obtener una lista de opciones para un módulo de kernel:

modinfo -p thinkpad_acpi

Esto no funcionó i915, para eso tuve que ejecutar:

modinfo i915 | grep ^parm

Para obtener el valor actual de un parámetro de módulo, ejecute:

sudo cat /sys/module/MODULE/parameters/PARAM

Para el fan_controlparámetro del thinkpad_acpimódulo, debe ejecutar:

sudo cat /sys/module/thinkpad_acpi/parameters/fan_control

Si esta función devuelve un error, verifique si el módulo se cargó y si la opción existe o no.

Lekensteyn
fuente
2
¿Cómo saber que un parámetro del módulo ha tenido efecto? gracias
waterloo2005
@ waterloo2005: Puedes usar /syspara eso. Ver la respuesta revisada.
Lekensteyn
Me parece que no agrego parámetros en / etc / modules. Solo necesito agregarlos en /etc/modprobe.d/. Gracias
waterloo2005
La distinción entre /etc/modulesy /etc/modprobe.d: el primero se aplica a los módulos cargados en la etapa inicial del arranque (justo después de que comienza Plymouth), el último se carga más tarde (por initscripts)
Lekensteyn
¿Dónde puedo encontrar instrucciones oficiales al respecto? gracias
waterloo2005
10

Configuración de opciones de módulo utilizando archivos en /etc/modprobe.d/

Los archivos en el directorio /etc/modprobe.d/ se pueden usar para pasar la configuración del módulo a udev, que usará modprobe para administrar la carga de los módulos durante el arranque del sistema. Los archivos de configuración en este directorio pueden tener cualquier nombre, dado que terminan con la extensión .conf. La sintaxis es:

/etc/modprobe.d/myfilename.conf
---------------------------------------------------------
options modname parametername=parametervalue

Por ejemplo:

/etc/modprobe.d/thinkfan.conf
---------------------------------------------------------
# On ThinkPads, this lets the 'thinkfan' daemon control fan speed
options thinkpad_acpi fan_control=1

Fuente: módulos del núcleo - ArchWiki


Hasta donde yo sé, puede usar el método mencionado para los módulos que se cargan automáticamente en el momento del arranque (para evitar la descarga y recarga de módulos con parámetros especiales, ya que este podría ser el caso de los módulos de controlador), y el /etc/modulesarchivo para los módulos que son no se carga automáticamente en el momento del arranque.

usuario2366867
fuente
7

Con Ubuntu 16.04 ya no se pueden incluir los parámetros del módulo del núcleo /etc/modules. Se genera un error en el registro de arranque que dice que no puede encontrar "my_kernel_mod myparam = x".

En su lugar, uno solo debe poner el nombre del módulo del núcleo /etc/modulesy poner las opciones en /etc/modprobe.d/myfilename.conf (como se sugirió anteriormente ).

Pierz
fuente