Las sugerencias para hacer que los parámetros sysfs persistan en los reinicios

10

Estoy experimentando con grandes cambios en los parámetros de tiempo de ejecución del sistema Linux expuestos a través del sistema de archivos virtual sysfs.

¿Cuál es la forma más eficiente de mantener estos parámetros para que persistan durante los reinicios en un sistema de estilo RHEL / CentOS?

¿Es simplemente un caso de volcado de comandos en /etc/rc.local? ¿Hay un script de inicio que sea adecuado para esto? También estoy pensando en la estandarización desde una perspectiva de gestión de la configuración. ¿Hay un sysfs limpio equivalente a sysctl?

ewwhite
fuente

Respuestas:

6

Si se tratara de mí, probablemente me creo una /etc/sysfs.conf, y un /etc/init.d/sysfsutilsscript de inicio. Entonces podría mantener todas mis configuraciones y opciones relacionadas con sysfs separadas de todo lo demás. Con una secuencia de comandos de inicio, se podría administrar y manejar utilizando las expresiones idiomáticas estándar para administrar servicios y configuraciones a través de secuencias de comandos de inicio SysV (incluso service sysfsutils [start|stop|reload|restart|status]en RHEL / CentOS (con un poco de trabajo adicional)).

Incluso si no me molestara con el /etc/init.d/sysfsutilsscript, aún pondría las opciones /etc/sysfs.confy luego llamaría / procesaría el contenido de ese archivo desde un script separado ( /etc/rc.localcomo última opción / perezosa).

Nota: Debian y las distribuciones basadas en Debian (Ubuntu, etc.) ya hacen esto, y envían un /etc/sysfs.confarchivo de configuración y un script de inicio con su paquete sysfsutils. Tomar esos dos archivos de una caja de Debian / Ubuntu (o el paquete fuente de Debian para sysfsutils) probablemente sería una buena manera de comenzar a replicarlo usted mismo.

Christopher Cashell
fuente
Es una opción, pero tendría miedo de los cambios / actualizaciones del sistema operativo que podrían interferir con esa configuración.
ewwhite
@ewwhite: si desea garantizar que ninguna actualización / cambio del sistema operativo proporcionado por el proveedor va a interferir con él, estará limitado a trabajar en /usr/localo /opt. Probablemente estaría dispuesto a arriesgarlo para una pequeña cantidad de máquinas (con todos los bits importantes respaldados). Para una gran cantidad de cuadros, duplicaría la configuración descrita anteriormente, pero debajo /usr/local, con enlaces simbólicos de /etc/y /etc/init.d, respectivamente. Y / o probablemente construiría un RPM para hacer la instalación / distribución del archivo.
Christopher Cashell
5

También puede probar las reglas de udev según lo que desee establecer. Por ejemplo, en mi sistema configuré mis SSD para usar el deadlineprogramador al /etc/udev/rules.d/60-ssd-scheduler.rulescontener:

# set deadline scheduler for non-rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="deadline"

Debería poder hacer coincidir cualquier atributo sysfs a través del mecanismo ATTR.

Raman
fuente
Interesante. Nunca lo he considerado.
ewwhite
estas reglas se ven bien, ¿por qué las distribuciones no envían esto?
把 友情 留 在 无 盐
4

Prueba el sysfsutilspaquete. En particular, /etc/sysfs.confdebería ayudar con esto.

johnshen64
fuente
2
En realidad, rc.local tampoco es un mal método en mi opinión.
johnshen64
Tenga en cuenta que /etc/sysfsutils.confy el script para aplicarlo no forma parte del paquete ascendente (como se explica en la respuesta de Christopher). Solo está presente en algunas distribuciones, no en Arch Linux, por ejemplo. Me configurado SystemD a buscar unarc.local y utilicé eso en mi escritorio Arco.
Peter Cordes
3

Para Fedora / RHEL / CentOS: el método predeterminado para configurar sysfs y mantenerlo durante los reinicios es usar tuned. sintonizado es una infraestructura de sintonización de sistema general. Para los parámetros sysfs , cree una [sysfs]sección en su archivo de configuración y proporcione una línea por variable que desee establecer y que persista en los reinicios.

Además, como señaló Lennart Poettering : systemd tiene una capacidad nativa para proporcionar configuraciones de sysfs al soltar un fragmento en/etc/tmpfiles.d/

Subhendu Ghosh
fuente
enlace muerto: fedorahosted está retirado ahora . tunedes muy difícil de google (se pierde en el ruido de la palabra común en inglés que también se usa mucho cuando se habla de la configuración de sysfs), pero una búsqueda rápida encontró esta página al respecto: docs.fedoraproject.org/en-US/Fedora / 20 / html /… .
Peter Cordes