Cómo modificar el valor del nivel de ejecución de Linux

  

Primero, lo que es initinit es uno de los programas indispensables en la operación del sistema Linux. Es un proceso de nivel de usuario iniciado por el kernel. Una vez que se arranca el kernel (se ha cargado en la memoria, se ha iniciado la ejecución y se han inicializado todos los controladores de dispositivos y estructuras de datos, etc.), se inician otros procesos o servicios de nivel de usuario iniciando un inicio de programa de nivel de usuario. Por lo tanto, init es siempre el primer proceso (su PID es siempre 1). El kernel lo buscará en algunos lugares donde se ha utilizado init en el pasado, y su ubicación correcta (para sistemas Linux) es /sbin /init. Si el núcleo no puede encontrar init, intentará ejecutar /bin /sh. Si la ejecución falla, el sistema no se iniciará. En segundo lugar, el nivel de ejecución Nivel de ejecución es el nivel operativo del sistema operativo
se está ejecutando actualmente. Este nivel varía de 1 a 6 y tiene diferentes funciones. Los niveles funcionales son los siguientes: # 0 - Apagado (no configure initdefault en 0) # 1 - Modo de usuario único # 2 - Multiusuario, no NFS # 3 - Modo multiusuario completo (nivel de ejecución estándar) # 4 - No Use # 5 - X11 (xwindow) # 6 - Reinicie (no establezca initdefault en 6 — — configure el initdefault de linux que desactivó a 0 o 6 es un ataque de denegación de servicio) Hay tres niveles de ejecución ABC, pero no hay ningún punto en RHLinux. Estos niveles se especifican en el archivo /etc /inittab. Este archivo es el archivo principal que busca el programa de inicio. El primer servicio que se ejecuta es el archivo ubicado en el directorio /etc/rc.d. En la mayoría de las distribuciones de Linux, los scripts de inicio se encuentran en /etc/rc.d/init.d. Estos scripts están conectados al directorio /etc/rc.d/rcn.d con el comando ln.
(La n aquí es el nivel de ejecución 0-6.) 3. La configuración del nivel de ejecución La configuración del nivel de ejecución se realiza en la línea /etc /inittab de la siguiente manera: 12: 2: espera: /etc /init.d /rc 2 Los campos se explican de la siguiente manera: id: runlevels: action: processid: es una secuencia de cuatro caracteres especificada arbitrariamente, que debe ser única dentro de este archivo; use la versión anterior de libc5 (debajo de 5.2.18) o la biblioteca a.out El sysvinit compilado está limitado a 2 caracteres. Nota: los procesos de inicio de sesión como getty deben coincidir con el campo id con el número tty. Por ejemplo, tty1 requiere id = 1, y muchas versiones anteriores del proceso de inicio de sesión siguen esta regla. Niveles de ejecución: indica que esta línea es adecuada para ejecutar ese nivel (aquí hay 2, puede haber más de una, lo que indica que debe ejecutarse en el nivel de ejecución correspondiente); además, los tres procesos sysinit, boot y bootwait ignoran esta configuración. Acción: indica la forma en que init debe ejecutar el comando del campo de proceso al ingresar los niveles de ejecución correspondientes. Los valores y explicaciones de los campos comunes se encuentran en el apéndice. La espera en el ejemplo significa que el proceso debe ejecutarse una vez y esperar a que finalice. Proceso: El comando específico que se debe ejecutar. El comando /etc/init.d/rc en el ejemplo inicia el proceso /comando que debe ejecutarse en el nivel de ejecución 2 y es responsable de terminarlo al salir del nivel de ejecución (excepto los programas que aún se están ejecutando en el nivel de ejecución entrante). El nivel de ejecución cambia, y el programa en ejecución no especifica que necesita ejecutarse en el nuevo nivel de ejecución, luego init enviará primero una señal SIGTERM para terminar, luego SIGKILL. Los valores de acción válidos son los siguientes: respawn: indica que init debe monitorear este proceso, incluso si se termina, debe reiniciarse. Espere: init debe ejecutar este proceso una vez y esperar a que termine antes de continuar con el siguiente paso. Una vez: init necesita ejecutar este proceso una vez. Inicio: se ejecuta con el sistema, por lo que el valor del nivel de ejecución no es válido. Bootwait: se ejecuta con el sistema y init debe esperar a que finalice. Off: No tiene ningún sentido. Initdefault: el nivel de ejecución predeterminado después de que se inicie el sistema, ya que se activa el nivel de ejecución correspondiente, se activa el proceso correspondiente, por lo que no hay ningún significado para especificar el campo de proceso. Si este registro no existe en el archivo inittab, el sistema solicitará el nivel de entrada en la consola cuando se inicie. Sysinit: el comando que se ejecutará cuando se inicie el sistema. Por ejemplo, este comando borrará /tmp. Puede ver el script /etc/rc.d/rc.sysinit para ver qué está ejecutando. Powerwait: permite a init apagar el sistema cuando se apaga la alimentación. Por supuesto, la premisa es que hay U P S y un software que supervisa U P S e informa a init que se ha cortado la alimentación. RH linux no lista esta opción por defecto. Powerfail: igual que powerwait, pero init no espera a que finalice el proceso en ejecución. RH linux no lista esta opción por defecto. Powerokwait: la operación que se debe realizar cuando el software de monitoreo de energía informa "recuperación de energía". Powerfailnow: la operación que init debe realizar cuando detecta que la energía de los ups está a punto de agotarse, lo que es diferente de powerwait /powerfail. Ctrlaltdel: permite a init reiniciar el sistema cuando el usuario presiona C t r l + A l t + D el en el teclado de la consola. Tenga en cuenta que si el sistema se coloca en un lugar público, el administrador del sistema puede configurar la combinación de teclas Ctrl + Alt + Del para otros comportamientos, como ignorar. Estoy listo para imprimir una palabra de juramento ^ o ^. Kbrequest: no es perfecto monitorear la acción tomada cuando se presiona una tecla de combinación de teclado específica. Ondemand: se ejecutará un proceso marcado con un nivel de ejecución ondemand siempre que se llame al nivel de ejecución ondemand especificado. Sin embargo, no se producirá ningún cambio en el nivel de ejecución (los niveles de ejecución ondemand son ‘ a ’, ‘ b ’ y ‘ c ’), (también en inglés) , sin embargo, no sé cómo traducir. 惭愧! Agregado: 1. Acerca de ingresar al modo de usuario único, generalmente establezca el valor predeterminado de inicialización a 1 o especifique un comando de <quo; single " or " emergency " en grub /lilo Se implementan parámetros de línea. De hecho, hay una forma más limpia, edite: kernel /vmlinuz-2.6.9-22.EL ro root = /bin /sh, así que init iniciará un shell directamente, no se inicia ningún otro proceso, está lo suficientemente limpio ! 2, puede hacer su propio nivel de ejecución en el inicio, si su sistema usa lilo, la parte correspondiente en el comando de inicio es: LILO: linux 5 Si está usando GRUB, puede presionar y mantener al inicio La tecla e ingresa al modo de configuración, y la posición correspondiente se muestra como: kernel /vmlinuz ro root = /dev /hda1 53. Cuando el sistema se está ejecutando, el comando telinit (o init) puede cambiar el nivel de ejecución. Cambio del modo de operación usando el comando telinit (usuario root): $ /sbin /telinit Normalmente, el propósito de cambiar el modo de ejecución es reiniciar algunos procesos de la aplicación, como XFree86, cambiar el modo de operación de 5 a 3 terminará con XFree86 y todo lo relacionado. El proceso, y luego cambia el modo de ejecución a 5, XFree86 se puede iniciar de manera muy limpia. Antes de realizar este trabajo, asegúrese de que se haya guardado todo el trabajo en XFree86, use usuario root: $ /sbin /telinit 3 $ /sbin /telinit 5 Después de escribir el comando, su pantalla puede mostrar algunos servicios para iniciar o detener. Informacion

Copyright © Conocimiento de Windows All Rights Reserved