Vía Braianet llega éste post "yes > config &", gracias Braian, como siempre colaborando y mostrando tu conocimiento con el publico.
Este sera un post muy breve orientado a los principiantes en los sistemas GNU/Linux.
¿Alguna vez en un IRC
alguien les dijo que tipeen yes > config &
?, ¿qué es esto?.
Bien paso a explicar, este es un parecido a una fork bomb
(aunque no tiene nada que ver con la funcion fork
), se basa de tres partes, el comando en si (yes
), la redireccion (>
) y la ejecución en el background
(&
).
- yes: produce una secuencia infinita de
yes
(si) - >: redirecciona la
salida estándar
(la terminal, en este caso) - config: la redirección va a parar a un archivo llamado
config
- &: ejecuta el proceso en el
background
(segundo plano, invisible a nuestros ojos).
Bien, como hemos visto yes
, al producir una secuencia inifita de si mismo, sera redireccionado a un archivo llamado config
, el cual sera ejecutado en el background
invisible a los ojos del usuario. Este archivo, comenzara a crecer inmediatamente hasta colapsar la capacidad de almacenamiento quoteada
para el usuario, y peor aun (si no estuviera quoteada
), de la partición, en la cual fue ejecutada. No quedandole otro remedio, al usuario inexperto que reiniciar.
Veamos:
$: yes > config &
[1] 20711
Vemos que la consola nos devuelve la siguiente información, [ 1 ]
, este es el numero de job
del proceso, osea, es un número natural, que identifica a el proceso que se esta ejecutando en el background
, y el siguiente número 20711
es el PID
, (Identificador del proceso), esta información es muy util, ya que al no poder enviarle una señal de interrupción
desde el teclado, deberemos interrumpilo desde la línea de comandos. Para esto, en otra terminal
escribimos:
$: pgrep yes
20711
Lo que hemos hecho es buscar el proceso yes
, y este nos devuelve el numero de PID
<, necesario para poder matarlo, y asi evitar que siga ejecutandose, asi que rapídamente en la shell
escribimos:
$: kill 20711
Y listo!, ya hemos matado al proceso yes
y detenido la ejecución de esta forkbomb
.
Ahora, un dato extra para saber la cantidad que ocupo el archivo generado (config
) y conocer realmente lo rapido que se propaga esta secuencia infinita de yes
escribimos:
$: du -h /home/usuario/config
157M /home/usuario/config
Por supuesto, que debemos cambiar por la ruta
(path
) donde nosotros hemos ejecutado el comando, y donde se encuentra el archivo config
, viendo esto, podemos decir que en mi caso (una ejecucion de 25 segundos aproximadamente), el archivo crecio de 0 a 157 Mb
., osea a una velocidad increible.
Espero que esto le sirva a todos los novatos, y a los que estan un poco mas avanzados, que no sean tan estúpidos de hacerles ejecutar esto, ya que asi, los alejan cada vez mas del software libre.
Un Saludo, Eric.Enlaces de interés:
- Lo peor del boxeo.
- Calameo - convierte tus archivos en publicaciones ...
- Entradas Programadas En Blogger.
- Algunas de las cosas que se puede hacer en Firefox...
- Frase del día #4.
Vía Braianet llega éste post "yes > config &", gracias Braian, como siempre colaborando y mostrando tu conocimiento con el publico.
Este sera un post muy breve orientado a los principiantes en los sistemas GNU/Linux.
¿Alguna vez en un IRC
alguien les dijo que tipeen yes > config &
?, ¿qué es esto?.
Bien paso a explicar, este es un parecido a una fork bomb
(aunque no tiene nada que ver con la funcion fork
), se basa de tres partes, el comando en si (yes
), la redireccion (>
) y la ejecución en el background
(&
).
- yes: produce una secuencia infinita de
yes
(si) - >: redirecciona la
salida estándar
(la terminal, en este caso) - config: la redirección va a parar a un archivo llamado
config
- &: ejecuta el proceso en el
background
(segundo plano, invisible a nuestros ojos).
Bien, como hemos visto yes
, al producir una secuencia inifita de si mismo, sera redireccionado a un archivo llamado config
, el cual sera ejecutado en el background
invisible a los ojos del usuario. Este archivo, comenzara a crecer inmediatamente hasta colapsar la capacidad de almacenamiento quoteada
para el usuario, y peor aun (si no estuviera quoteada
), de la partición, en la cual fue ejecutada. No quedandole otro remedio, al usuario inexperto que reiniciar.
Veamos:
$: yes > config &
[1] 20711
Vemos que la consola nos devuelve la siguiente información, [ 1 ]
, este es el numero de job
del proceso, osea, es un número natural, que identifica a el proceso que se esta ejecutando en el background
, y el siguiente número 20711
es el PID
, (Identificador del proceso), esta información es muy util, ya que al no poder enviarle una señal de interrupción
desde el teclado, deberemos interrumpilo desde la línea de comandos. Para esto, en otra terminal
escribimos:
$: pgrep yes
20711
Lo que hemos hecho es buscar el proceso yes
, y este nos devuelve el numero de PID
<, necesario para poder matarlo, y asi evitar que siga ejecutandose, asi que rapídamente en la shell
escribimos:
$: kill 20711
Y listo!, ya hemos matado al proceso yes
y detenido la ejecución de esta forkbomb
.
Ahora, un dato extra para saber la cantidad que ocupo el archivo generado (config
) y conocer realmente lo rapido que se propaga esta secuencia infinita de yes
escribimos:
$: du -h /home/usuario/config
157M /home/usuario/config
Por supuesto, que debemos cambiar por la ruta
(path
) donde nosotros hemos ejecutado el comando, y donde se encuentra el archivo config
, viendo esto, podemos decir que en mi caso (una ejecucion de 25 segundos aproximadamente), el archivo crecio de 0 a 157 Mb
., osea a una velocidad increible.
Espero que esto le sirva a todos los novatos, y a los que estan un poco mas avanzados, que no sean tan estúpidos de hacerles ejecutar esto, ya que asi, los alejan cada vez mas del software libre.
Un Saludo, Eric.Enlaces de interés:
0 COMENTARIOS:
Publicar un comentario
Bienvenido a ERICLINUX.
Gracias por tu comentario.
Nota: solo los miembros de este blog pueden publicar comentarios.