significa que lista ejemplos ejecutar completa comandos comando basicos linux bash

que - lista completa de comandos linux pdf



El comando Bash:(){: |: &}; generará procesos para la muerte del kernel. ¿Puedes explicar la sintaxis? (2)

Eso define una función llamada : que se llama dos veces (Código : | : . Lo hace en el fondo ( & ). Después de ; la definición de la función está hecha y la función : comienza.

Entonces cada instancia de: comienza dos nuevas: y así sucesivamente ... Como un árbol binario de procesos ...

Escrito en el plano C que es:

while(1) { fork(); }

Me encontré con esta página y no puedo entender cómo funciona esto.

Este comando "genera de manera exponencial subprocesos hasta que su caja se bloquea".

¿Pero por qué? Lo que menos asimilo son los dos puntos.

user@host$ :(){ :|:& };:


:(){ :|:& };:

..define una función llamada : que se genera a sí misma (dos veces, una canalización a la otra) y los fondos mismos.

Con saltos de línea:

:() { :|:& }; :

Cambiar el nombre de la función : a forkbomb :

forkbomb() { forkbomb | forkbomb & }; forkbomb

Puede evitar dichos ataques utilizando ulimit para limitar el número de procesos por usuario:

$ ulimit -u 50 $ :(){ :|:& };: -bash: fork: Resource temporarily unavailable $

De forma más permanente, puede usar /etc/security/limits.conf (en Debian y otros, al menos), por ejemplo:

* hard nproc 50

Por supuesto, eso significa que solo puede ejecutar 50 procesos, ¡puede aumentar esto dependiendo de lo que la máquina esté haciendo!