Linux Jargon Buster: ¿Qué es sudo rm -rf? ¿Por qué es peligroso?

Cuando sea nuevo en Linux, a menudo encontrará consejos para no ejecutar nunca sudo rm -rf /. Hay tantos memes en el mundo Linux alrededor sudo rm -rf.

Pero parece que hay algunas confusiones a su alrededor. En el tutorial sobre la limpieza de Ubuntu para hacer espacio libre, aconsejé ejecutar algún comando que implicara sudo y rm -rf. Un lector de It’s FOSS me preguntó por qué aconsejo que si sudo rm -rf es un comando de Linux peligroso que no debe ejecutarse.

Y por eso pensé en escribir este capítulo de la jerga de Linux y aclarar los conceptos erróneos.

sudo rm -rf: ¿qué hace?

Aprendamos las cosas por pasos.

El comando rm se usa para eliminar archivos y directorios en la línea de comandos de Linux.

[email protected]:$ rm agatha
[email protected]:$

Pero algunos archivos no se eliminarán de inmediato debido a que son de solo lectura. permisos de archivo. Deben ser eliminados forzosamente con la opción -f.

[email protected]:$ rm books
rm: remove write-protected regular file 'books'? y
[email protected]:$ rm -f christie
[email protected]:$

Sin embargo, el comando rm no se puede utilizar para eliminar directorios (carpetas) directamente. Tienes que usar la opción recursiva -r con el comando rm.

[email protected]:$ rm new_dir
rm: cannot remove 'new_dir': Is a directory

Y así, en última instancia, el comando rm -rf significa forzar recursivamente la eliminación del directorio dado.

[email protected]:~$ rm -r new_dir
rm: remove write-protected regular file 'new_dir/books'? ^C
[email protected]:$ rm -rf new_dir
[email protected]:$

Aquí hay una captura de pantalla de todos los comandos anteriores:

Ejemplo que explica el comando rm

Si agrega sudo para el comando rm -rf, está eliminando archivos con poder de root. Eso significa que puede eliminar los archivos del sistema que pertenecen al usuario root.

Entonces, sudo rm -rf es un comando de Linux peligroso?

Bueno, cualquier comando que elimine algo podría ser peligroso si no está seguro de lo que está eliminando.

Considerar comando rm -rf como un cuchillo. ¿Es el cuchillo algo peligroso? Posiblemente. Si cortas las verduras con el cuchillo, está bien. Si te cortas los dedos con el cuchillo, está mal, claro.

Lo mismo ocurre con el comando rm -rf. No es peligroso en sí mismo. Después de todo, se usa para eliminar archivos. Pero si lo usa para eliminar archivos importantes sin saberlo, entonces es un problema.

Ahora llegando a ‘sudo rm -rf / ‘.

Tu sabes que con sudo, ejecuta un comando como root, que le permite realizar cambios en el sistema.

/ es el símbolo del directorio raíz. / var significa el directorio var bajo root. / var / log / apt significa directorio apt bajo log, bajo root.

Representación de la jerarquía de directorios de Linux

Según Jerarquía de directorios de Linux, todo en un sistema de archivos de Linux comienza en la raíz. Si elimina la raíz, básicamente está eliminando todos los archivos de su sistema.

Y es por eso que se aconseja no ejecutar sudo rm -rf / comando porque acabará con todo su sistema Linux.

Tenga en cuenta que, en algunos casos, podría estar ejecutando un comando como ‘sudo rm -rf / var / log / apt ‘que podría estar bien. Nuevamente, debes prestar atención a lo que estás borrando, al igual que debes prestar atención a lo que estás cortando con un cuchillo.

Juego con peligro: ¿y si corro? sudo rm -rf / para ver qué pasa?

La mayoría de las distribuciones de Linux proporcionan una protección a prueba de fallos contra la eliminación accidental del directorio raíz.

[email protected]:~$ sudo rm -rf /
[sudo] password for abhishek:
rm: it is dangerous to operate recursively on '/'
rm: use --no-preserve-root to override this failsafe

Quiero decir que es humano cometer errores tipográficos y si accidentalmente escribiste “/ var / log / apt” en lugar de “/ var / log / apt” (un espacio entre / y var, lo que significa que estás proporcionando los directorios / y var para su eliminación ), eliminará el directorio raíz.

Preste atención al usar sudo rm -rf

Eso es bastante bueno. Su sistema Linux se encarga de estos accidentes.

Ahora, ¿qué pasa si estás empeñado en destruir tu sistema con sudo rm -rf /? Tendrá que usarlo. Le pedirá que use –no-preserve-root con él.

No, no hagas eso por tu cuenta. Dejame enseñártelo.

Entonces, tengo un sistema operativo elemental ejecutándose en una máquina virtual. Corro sudo rm -rf / --no-preserve-root y puedes ver las luces apagarse literalmente en el video a continuación (alrededor de 1 minuto).

Suscríbete a nuestro YouTube canal para ver más videos de Linux

¿Claro o todavía confundido?

Linux tiene una comunidad activa en la que la mayoría de la gente intenta ayudar a los nuevos usuarios. La mayoría de la gente porque hay algunos trolls malvados al acecho para meterse con los nuevos usuarios. A menudo sugerirán ejecutar rm -rf / para el más simple de los problemas que enfrentan los principiantes. Estos idiotas obtienen una especie de satisfacción supremacista, creo, por tales actos malvados. Los baneo inmediatamente de los foros y grupos que administro.

Espero que este artículo te haya aclarado las cosas. Es posible que todavía tenga algo de confusión, especialmente porque se trata de root, permisos de archivos y otras cosas con las que los nuevos usuarios podrían no estar familiarizados. Si ese es el caso, avíseme sus dudas en la sección de comentarios e intentaré aclararlas.

Al final, recuerda. No beba y arraigue. Manténgase seguro mientras ejecuta su sistema Linux 🙂