¿Existe una forma estándar de enumerar los valores de los parámetros de un módulo Linux cargado? Básicamente, estoy buscando otra respuesta a esta pregunta sobre los parámetros del módulo del kernel de Linux , porque el módulo que me interesa no tiene una /sys/modules/<module_name>/parameters
interfaz.
77
Respuestas:
Puede hacerlo utilizando este sencillo comando unidireccional, que utiliza los sistemas de archivos virtuales / proc / modules y / sys:
Obtendrá una salida como esta:
Espero que esto ayude.
fuente
alias ls='ls -lah'
. Sin embargo, eliminar el alias o ejecutar la solución como un script funcionó muy bien.Puedes usar el comando
systool -vm <Module name>
. Viene con elsysfsutils
paquete en la mayoría de los sistemas.Así es como se verá la salida, hay una sección
Parameters
:fuente
systool
es parte del paquetesysfsutils
. Y esta es la respuesta, creo, (pero podría tener un resultado de ejemplo)Parameters:
sección solo está presente en la salida para módulos que exponen una/sys/modules/<module_name>/parameters
interfaz. Entonces, desafortunadamente, esto no satisface la premisa de la pregunta.fuente
Puede usar el comando " modinfo (8) " para obtener los parámetros de tiempo de carga disponibles para un módulo. Por ejemplo:
En cuanto a obtener los parámetros de los módulos cargados, intente combinar el comando modinfo con un simple "lsmod | awk '{print $ 1}'"
Como en:
fuente
Saldría feo como comentario, pero hice esta comprobación en mi sistema ...
Para verificar si los módulos sin parámetros en / sys se muestran con parámetros en modinfo pero no pude encontrar ninguno.
No soy un experto, pero la diferencia aquí es que modinfo lee el archivo del módulo en sí para los parámetros al buscar en los encabezados de .modinfo elf, mientras que sys los lee desde su variante de tiempo de ejecución.
Es posible que tenga parámetros que puede modificar en tiempo de ejecución que no aparecen como un valor de parámetro modinfo, pero dado que el formato del módulo debería ser bastante fijo, no imagino que sea posible que pase un parámetro de opción a un módulo al cargar sin que haya una estructura .modinfo para ella vinculada en.
Tengo curiosidad, ¿su módulo sugiere que hay parámetros transitables con modinfo cuando lo verifica de esa manera pero no hay ninguno en / sys para ello? Ciertamente, en mi sistema no pude encontrar ningún ejemplo de esto usando el comando proporcionado anteriormente.
fuente
Para iwlwifi y otros módulos utilicé esto:
y obtengo esta salida:
Entonces supongo que podrías probar algo como:
Hazme saber si esto funciona para ti.
fuente
grep .
probablemente también funcionaría igual de bien con menos tipeo. :)grep . /sys/module/<module_name>/parameters/*
grep -R
y deja el comodín fuera del directorio de parámetros, siempre muestra el nombre del archivo. Puntos de bonificación: también agregue--color
al grep y obtenga el nombre de archivo + valor diferenciado por colores. ;) Por ejemplogrep -R --color '.' /sys/module/block/parameters/
Trabajando fuera del trabajo de Katriel, puedes obtener una línea única (ciertamente fea) combinando los dos en un bucle bash:
fuente
print
es algo asqueroso: use lawhile read
sintaxis en su lugar:lsmod | while read a b; do echo $a:; modinfo $a | grep parm | sed -e 's/parm://'; done
- no cambia el hecho de que modinfo no devuelve los valores de los parámetros, aunque ...