GNU/Linux >> Tutoriales Linux >  >> Linux

¿Por qué el siguiente comando está matando un sistema?

¿Alguien entiende el siguiente código, ejecutándose en bash?

:(){ :|:& };:

Parece ser un “fork ” bomba en Linux.

Respuesta aceptada:

De hecho, no es tan difícil de descifrar.

Este fragmento de código simplemente define una función llamada : que llama a dos instancias de sí mismo en una canalización::|:& . Después de la definición, se inicia una instancia de esta función.

Esto conduce a un rápido aumento del número de procesos de subcapa. Los sistemas desprotegidos (sistemas sin un límite de número de procesos por usuario) se verán gravemente afectados por tales bombas de bifurcación, ya que los procesos legítimos serán rápidamente superados en número y, por lo tanto, privados de la mayoría de los recursos de la CPU.


Linux
  1. Domina el comando ls de Linux

  2. ¿Cómo ejecutar un comando como administrador del sistema (raíz)?

  3. ¿Salida del comando "último"?

  4. ¿Por qué el comando “:(){ :|:&};:” hizo que el sistema se retrasara tanto que tuve que reiniciarlo?

  5. ¿Dónde puedo encontrar el código fuente del comando cp?

Comando de apagado de Linux

Conozca su Sistema (usando la línea de comando)

El comando superior de Linux

Cómo usar el comando fd en el sistema Linux

Cómo instalar y usar el comando Ack en Linux

El comando System Activity Reporter (sar) en Linux