Servicios del Kernel y configuración

El kernel es el encargado de iniciar el SO y esta presente en todos los sistemas Linux. Controla, entre otras cosas, el acceso al hardware, las E/S y las colas de espera por recursos.

Este permite personalizar la inicializacion del sistema usando parámetros durante el booteo.

Tareas principales:

  • Inicializacion y booteo
  • Planificación de procesos
  • Gestión de memoria
  • Control acceso al hardware
  • E/S entre aplicaciones y dispositivos de almacenamiento
  • Implementación de archivos locales y de red
  • Control de seguridad: a nivel local (permisos de sistema de archivos) y de red
  • Control de la red

Comando para ver la linea de comandos usada para bootear el sistema:

Lista de parámetros que se pueden utilizar al iniciar el kernel:

Algunos parámetros no requieren argumentos y basta con solo nombrarlos. Otros requieren utilizarse como param=valor .

  • ro: monta directorio raíz en modo solo lectura
  • root: sistema de archivos raiz
  • rd_LVM_LV: activa sistema de archivos root en el volumen logico especificado
  • rd_NO_LUKS: deshabilita la detección de cifrado LUKS
  • rd_NO_DM: deshabilita la detección de DM RAID
  • LANG: es el lenguaje del sistema
  • SYSFONT: es la fuente de consola
  • KEYTABLE: es el nombre del archivo de configuración del teclado
  • rhgb: para soporte de booteo gráfico en sistema Red Hat
  • quiet: deshabilita la mayoría de los mensajes de registro

Los parámetros que empiezan con rd se usan solo en sistemas basados en Red Hat.

sysctl

Este comando se usa para leer y ajustar parámetros del kernel en tiempo de ejecución.
sysctl -a  devuelve la lista de todos los parámetros.

Donde cada valor corresponde a una ruta en /proc/sys reemplazando las barras diagonales por puntos.

Para cambiar el valor de un parámetro se usa:

Lo cual sería igual que ejecutar:

Nota: No se posible usar sudo con echo. Ese comando también podría ejecutarse siendo root y así evitar usar sh.

Mas info de como usar sysctl: man 2 sysctl

Si existe el archivo /etc/sysctl.conf es posible realizar ahí ajustes en el inicio del sistema de forma permanente.
Con el comando sudo sysctl -p se aplicarán los cambios que se encuentren en el archivo de configuración de forma inmediata.
Nota: En distros recientes que usan systemd (como RHEL7) el archivo de configuración está en /usr/lib/sysctl.d/00-system pero el original aún es soportado.

Deja un comentario