9 votos

¿Cómo puedo configurar el kernel por defecto de los parámetros en CentOS para todos los actuales y futuros de los kernels?

Me gustaría quitar el rhgb y quiet parámetros del kernel que se utiliza por defecto cuando el kernel de arranque en CentOS 6, pero quiero que esto se aplique a todos los kernels instalados, así como cualquiera de los kernels instalados en el futuro. Necesito hacer esto desde una secuencia de comandos, por lo que la edición manual de los archivos no es una opción y cualquier archivo de cambios debe hacerse de la forma más limpia posible.

En Debian/Ubuntu me gustaría cambiar GRUB_CMDLINE_LINUX_DEFAULT en /etc/default/grub y, a continuación, ejecute update-grub. No puedo encontrar un ajuste en /etc/sysconfig/grub o /etc/sysconfig/kernel sin embargo, tampoco hay un update-grub script.

13voto

mgorven Puntos 19205

En Debian/Ubuntu, grub.cfg está totalmente generadas por scripts y cualquier manual de los cambios va a ser una paliza. En RHEL/CentOS sin embargo, grub.cfg es modificado por los scripts, pero los cambios manuales se conservan, y en realidad es la canónica de la ubicación de ciertos valores de configuración.

La herramienta que gestiona grub.cfg es grubby, el cual es llamado por /sbin/new-kernel-pkg cuando los núcleos se han instalado o eliminado. El --copy-default parámetro se pasa a grubby cuando un nuevo kernel instalado, lo que hace es copiar los parámetros del núcleo de la actual kernel por defecto. Establecer el valor predeterminado de los parámetros del kernel para el futuro del kernels instalados es, por lo tanto, mediante la edición de la entrada para el kernel por defecto en grub.cfg.

Si no te la automatización de esto, usted podría simplemente edite grub.cfg manualmente y cambiar todo el núcleo actual de las entradas. Sin embargo, puede utilizar grubby a modificar grub.cfg con el fin de evitar el análisis o la escritura de expresiones regulares. Por ejemplo, este va a quitar el rhgb y quiet parámetros a partir de determinada versión del kernel.

# grubby --update-kernel=/boot/vmlinuz-2.6.32-220.13.1.el6.x86_64 --remove-args="rhgb quiet"

No parece ser una opción a la lista de la configuración actual de los núcleos sin embargo, por lo que tendrás que descubrir de otra manera. Una opción es buscar vmlinuz archivos en /boot/:

#!/bin/sh
for KERNEL in /boot/vmlinuz-*; do
    grubby --update-kernel="$KERNEL" --remove-args="rhgb quiet"
done

1voto

user146279 Puntos 6

Hemos encontrado una solución para CentOS! yum utiliza sucias mismo! (strace, gracias!) grubby tiene la opción "--copia por defecto" y creo que mmm carreras sucias con ella. Lo única cosa que usted debe hacer es añadir en el grub.conf todas las opciones del kernel necesita actual kernel por defecto y reiniciar el sistema. Después de reiniciar, se puede instalar el nuevo kernel!

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: