Referencia de parámetros de inicio del núcleo

En la siguiente tabla, se describen algunos parámetros de inicio del núcleo que se utilizan habitualmente.

Opción

Descripción

0, 1, 2, 3, 4, 5 o 6, o systemd.unit=runlevelN.target

Especifica el destino de estado del sistema equivalente a systemd más cercano para que coincida con un nivel de ejecución de SysV heredado. N puede tomar un valor entero entre 0 y 6.

Systemd asigna destinos de estado del sistema para imitar el sistema de inicialización de SysV heredado.

Para obtener una descripción de los destinos de estado del sistema, consulte Systemd Targets.

1, s, S, single o systemd.unit=rescue.target

Especifica el shell de rescate. El sistema se inicia en modo de usuario único y solicita la contraseña root.

3 o systemd.unit=multi-user.target

Especifica el destino systemd para la conexión no gráfica y multiusuario.

5 o systemd.unit=graphical.target

Especifica el destino systemd para el inicio de sesión gráfico de varios usuarios.

-b, emergency o systemd.unit=emergency.target

Especifica el modo de emergencia. El sistema se inicia en modo de usuario único y solicita la contraseña root. Se inician menos servicios que en el modo de rescate.

KEYBOARDTYPE=kbtype

Especifica el tipo de teclado, que se escribe en /etc/sysconfig/keyboard en initramfs.

KEYTABLE=kbtype

Especifica la distribución del teclado, que se escribe en /etc/sysconfig/keyboard en initramfs.

LANG=language_territory.codeset

Especifica el idioma y el codeset del sistema, que se escribe en /etc/sysconfig/i18n en initramfs.

max_loop=N

Especifica el número de dispositivos de bucle (/dev/loop*) que están disponibles para acceder a archivos como dispositivos de bloque. Los valores por defecto y máximos de N son 8 y 255.

nouptrack

Desactiva las actualizaciones de Ksplice Uptrack para que no se apliquen al núcleo.

quiet

Reduce la salida de depuración.

rd_LUKS_UUID=UUID

Activa una partición de configuración de clave unificada (LUKS) de Linux cifrada con el UUID especificado.

rd_LVM_VG=vg/lv_vol

Especifica un grupo de volúmenes LVM y un volumen que se van a activar.

rd_NO_LUKS

Desactiva la detección de una partición LUKS cifrada.

rhgb

Especifica el uso de la pantalla gráfica de inicio de Red Hat para indicar el progreso del inicio.

rn_NO_DM

Desactiva la detección de RAID de asignador de dispositivos (DM).

rn_NO_MD

Desactiva la detección de RAID de varios dispositivos (MD).

ro root=/dev/mapper/vg-lv_root

Especifica que el sistema de archivos raíz se montará en modo de solo lectura y especifica el sistema de archivos raíz por la ruta de dispositivo de su volumen LVM (donde vg es el nombre del grupo de volúmenes).

rw root=UUID=UUID

Especifica que el sistema de archivos raíz (/) se montará en modo de lectura y escritura en el momento del inicio y especifica la partición raíz por su UUID.

selinux=0

Desactiva SELinux y toca el archivo /.autorelabel para que los contextos de archivo de SELinux se vuelvan a etiquetar automáticamente la próxima vez que inicie con SELinux activado.

No desactive SELinux en entornos de producción. En su lugar, establezca SELinux en modo permisivo.

enforcing=0 Establece SELinux en modo permisivo hasta que se reinicie. En el modo permisivo, los contextos de archivo se etiquetan automáticamente y se registran las denegaciones, pero las aplicaciones pueden seguir funcionando.

Use el modo permisivo de SELinux para depurar problemas de SELinux.

SYSFONT=font

Especifica la fuente de la consola, que se escribe en /etc/sysconfig/i18n en initramfs.

Parámetros que controlan el rendimiento del sistema

Los siguientes parámetros controlan varios aspectos del rendimiento del sistema:

Parámetro Descripción
fs.file-max

Especifica el número máximo de archivos abiertos para todos los procesos. Aumente el valor de este parámetro si ve mensajes sobre el agotamiento de los identificadores de archivos.

kernel.io_uring_disabled

Especifica la configuración desactivada para crear instancias io_uring. io_uring proporciona una interfaz para manejar operaciones de E/S asíncronas que pueden mejorar el rendimiento del almacenamiento y las redes. io_uring está soportado con UEK y está activado por defecto cuando se ejecuta UEK en Oracle Linux.

Puede definir los siguientes valores para el parámetro io_uring:

  • kernel.io_uring_disabled=0 (valor por defecto). Este valor especifica que todos los procesos pueden crear instancias io_uring.
  • kernel.io_uring_disabled=1. Este valor especifica que solo los procesos con privilegios CAP_SYS_ADMIN pueden crear instancias io_uring.
  • kernel.io_uring_disabled=2. Este valor especifica que la creación de instancias io_uring está desactivada para todos los usuarios.
net.core.netdev_max_backlog

Especifica el tamaño de la cola de atrasos del receptor, que se utiliza si una interfaz recibe paquetes más rápido de lo que el núcleo puede procesarlos. Si esta cola es demasiado pequeña, los paquetes se pierden en el receptor, en lugar de en la red.

net.core.rmem_max

Especifica el tamaño máximo del buffer de socket de lectura. Para minimizar la pérdida de paquetes de red, este buffer debe ser lo suficientemente grande como para manejar los paquetes de red entrantes.

net.core.wmem_max

Especifica el tamaño máximo del buffer de socket de escritura. Para minimizar la pérdida de paquetes de red, este buffer debe ser lo suficientemente grande como para manejar paquetes de red salientes.

net.ipv4.tcp_available_congestion_control

Muestra los algoritmos de prevención de congestión de TCP que están disponibles para su uso. Utilice el comando modprobe si necesita cargar módulos adicionales, como tcp_htcp, para implementar el algoritmo htcp.

net.ipv4.tcp_congestion_control

Especifica qué algoritmo de evitación de congestión de TCP se utiliza.

net.ipv4.tcp_max_syn_backlog

Especifica el número de solicitudes SYN pendientes que se permiten. Aumente el valor de este parámetro si ve advertencias synflood en los logs causados por la sobrecarga del servidor por intentos de conexión legítimos.

net.ipv4.tcp_rmem

Especifica los tamaños de buffer de recepción mínimo, predeterminado y máximo que se utilizan para un socket TCP. El valor máximo no puede ser mayor que net.core.rmem_max.

net.ipv4.tcp_wmem

Especifica los tamaños de buffer de envío mínimo, predeterminado y máximo que se utilizan para un socket TCP. El valor máximo no puede ser mayor que net.core.wmem_max.

vm.swappiness

Especifica la probabilidad de que el núcleo escriba páginas cargadas para intercambiar en lugar de borrar páginas de la caché de páginas del sistema. Si se define en 0, el intercambio sólo se produce para evitar una condición de memoria insuficiente. Cuando se establece en 100, el núcleo intercambia de manera agresiva. Para un sistema de escritorio, la configuración de un valor inferior puede mejorar la capacidad de respuesta del sistema al disminuir la latencia. El valor por defecto es 60.

Este parámetro está destinado a utilizarse con equipos portátiles para reducir el consumo de energía por parte del disco duro. No ajuste este valor en los sistemas de servidor.

Parámetros que controlan los avisos graves del núcleo

Los siguientes parámetros controlan las circunstancias en las que se puede producir un aviso grave del núcleo.

Parámetro Descripción
kernel.hung_task_panic

Si se establece en 1, el núcleo emite un aviso grave si algún núcleo o subproceso de usuario permanece inactivo en el estado TASK_UNINTERRUPTIBLE (estado D) durante más de kernel.hung_task_timeout_secs segundos. Un proceso permanece en estado D mientras espera a que finalice la E/S. No puede detener ni interrumpir un proceso en este estado.

El valor por defecto es 0, lo que desactiva el aviso grave.

Para diagnosticar un thread bloqueado, puede examinar /proc/PID/stack, que muestra la pila de núcleo para los threads de núcleo y de usuario.

kernel.hung_task_timeout_secs

Especifica cuánto tiempo puede permanecer un subproceso de núcleo o usuario en estado D antes de que se genere un mensaje de advertencia o el núcleo emite un aviso grave, si el valor de kernel.hung_task_panic es 1. El valor por defecto es 120 segundos. El valor 0 desactiva el timeout.

kernel.nmi_watchdog

Si se establece en 1 (valor predeterminado), activa el subproceso de vigilancia de interrupción no enmascarable (NMI) en el núcleo. Para utilizar el conmutador de NMI o el analizador de perfiles del sistema OProfile para generar una NMI no definida, establezca el valor de kernel.nmi_watchdog en 0.

kernel.panic

Especifica el número de segundos después de un aviso grave antes de que un sistema se restablezca automáticamente.

Si el valor es 0, que es el valor predeterminado, el sistema se suspende y puede recopilar información detallada sobre el aviso grave para la resolución de problemas.

Para activar el restablecimiento automático, defina un valor distinto de cero. Si necesita una imagen de memoria (vmcore), deje tiempo suficiente para que Kdump cree esta imagen. El valor sugerido es de 30 segundos, aunque los sistemas grandes requieren un tiempo más largo.

kernel.panic_on_io_nmi

Si se establece en 0 (valor predeterminado), el sistema intenta continuar las operaciones si el núcleo detecta una NMI de comprobación de canal de E/S (IOCHK) que normalmente indica un error de hardware incorregible. Si se establece en 1, el sistema genera un aviso grave.

kernel.panic_on_oops

Si se define en 0, el sistema intenta continuar las operaciones si el núcleo detecta una condición oops o BUG. Si se establece en 1 (valor predeterminado), el sistema retrasa unos segundos para que el daemon de log del núcleo, klogd, tenga tiempo para registrar la salida de oops antes de que se produzca el aviso grave.

En un cluster de OCFS2, defina el valor en 1 para especificar que un sistema debe emitir un aviso grave si se produce un error de núcleo. Si falla un subproceso de núcleo necesario para la operación del cluster, el sistema se debe restablecer. De lo contrario, es posible que otro nodo no detecte si un nodo responde lentamente o no puede responder, lo que provoca que las operaciones del cluster se detengan.

kernel.panic_on_unrecovered_nmi

Si se establece en 0 (valor predeterminado), el sistema intenta continuar las operaciones si el núcleo detecta una NMI que podría indicar un error de memoria ECC o una paridad incorregible. Si se establece en 1, el sistema genera un aviso grave.

kernel.softlockup_panic

Si se establece en 0 (valor predeterminado), el sistema intenta continuar con las operaciones si el núcleo detecta un error soft-lockup que hace que el subproceso de vigilancia de NMI no pueda actualizar su registro de hora durante más del doble del valor de kernel.watchdog_thresh segundos. Si se establece en 1, el sistema genera un aviso grave.

kernel.unknown_nmi_panic

Si se establece en 1, el sistema genera un aviso grave si el núcleo detecta una NMI no definida. Puede generar una NMI no definida presionando manualmente un conmutador NMI. Como el thread de vigilancia de NMI también utiliza el NMI no definido, defina el valor de kernel.unknown_nmi_panic en 0 si define kernel.nmi_watchdog en 1.

kernel.watchdog_thresh

Especifica el intervalo entre la generación de una interrupción de supervisión del rendimiento de NMI que el núcleo utiliza para comprobar si hay errores hard-lockup y soft-lockup. Se asume un error de bloqueo estricto si una CPU no responde a la interrupción durante más de kernel.watchdog_thresh segundos. El valor por defecto es 10 segundos. El valor 0 desactiva la detección de errores de bloqueo.

vm.panic_on_oom

Si se establece en 0 (valor predeterminado), el asesino de OOM del núcleo examina toda la lista de tareas y detiene un proceso de acumulación de memoria para evitar un aviso grave. Si se establece en 1, el núcleo genera un aviso grave, pero puede sobrevivir en determinadas condiciones. Si un proceso limita las asignaciones a determinados nodos mediante políticas de memoria o cpusets, y esos nodos alcanzan el estado de agotamiento de memoria, el OOM-killer puede detener un proceso. En este caso, no se produce ningún aviso grave porque es posible que la memoria de otros nodos esté libre y que el sistema en su conjunto aún no tenga memoria suficiente. Si se establece en 2, el núcleo siempre emite un aviso grave cuando se produce una condición de OOM. La configuración de 1 y 2 está pensada para su uso con clusters, según la política de failover definida.