Inicio APP y Software ¿Qué es sudo rm -rf en Linux y es peligroso?

¿Qué es sudo rm -rf en Linux y es peligroso?

852
0

Los comandos del terminal pueden intimidar a los nuevos usuarios de Linux. Ejecutar cualquier cosa sin conocer el resultado puede tener consecuencias irrevocables. En Linux, los comandos peligrosos suelen ser el resultado de un simple error al escribir.

Conocer lo que hace cada parte de un comando de Linux y los peligros potenciales ayuda a evitar tales situaciones. Un ejemplo típico es el comando sudo rm -rf, que es muy útil cuando se usa correctamente, pero puede tener consecuencias si se escribe mal o se usa incorrectamente.

Este artículo explica el comando sudo rm -rf en Linux, qué hace y cómo usarlo correctamente.

Prerrequisitos

  • Acceso a la línea de comandos/terminal.
  • Un usuario con privilegios sudo.
  • Archivos o directorios para eliminar.

Sintaxis de sudo rm -rf

El comando sudo rm -rf es a menudo evitado por los usuarios y citado como un comando peligroso. La sintaxis del comando es:

sudo rm -rf <directorio o archivo>

A continuación, se detalla cada parte del comando:

  • sudo – eleva los privilegios de un usuario al usuario root. Permite eliminar archivos y directorios propiedad de root.
  • rm – Comando de Linux para eliminar archivos o directorios.
  • -r – La opción indica eliminación recursiva y ayuda a eliminar directorios no vacíos.
  • -f – La opción permite la eliminación sin confirmación, incluso si un archivo no existe.
  • <directorio o archivo> – La ruta de un directorio o archivo a eliminar.

Use el comando para eliminar archivos o directorios no vacíos donde el propietario es root.

Siga los pasos a continuación para crear un caso de uso de ejemplo:

  1. Abra el terminal (CTRL+ALT+T).
  2. Cree un directorio de prueba con un subdirectorio:
    sudo mkdir test1 && sudo mkdir test1/test2

    El creador y propietario de ambos directorios es el usuario root.

  3. Intente eliminar el directorio como un usuario regular:
    rm -rf test1

     

    rm rf en linux 1
    rm rf en linux 1

    La salida muestra el mensaje de permiso denegado.

  4. Use el comando con sudo para eliminar el directorio:
    sudo rm -rf test1

    El comando no muestra un mensaje y elimina automáticamente los directorios sin confirmación.

¿Por qué sudo rm -rf es peligroso?

El comando sudo rm -rf es peligroso cuando no se usa adecuadamente. El comando rm hace su trabajo de eliminar, pero un error al escribir o no saber qué se está eliminando puede hacerlo peligroso.

Advertencia: No ejecute los comandos en los siguientes ejemplos.

Los siguientes ejemplos muestran cómo y cuándo el comando rm -rf es potencialmente peligroso:

  1. Al eliminar directorios, el siguiente error tipográfico es apenas perceptible:
    sudo rm -rf / directory/subdirectory
    rm rf en linux 2
    rm rf en linux 2

    El espacio después de la primera barra inclinada (/) pasa el directorio raíz como parámetro de eliminación. El comando elimina el directorio raíz y todos los subdirectorios debido a la opción -r. El resultado es el mismo que ejecutar lo siguiente:

    sudo rm -rf /
    rm rf en linux 3
    rm rf en linux 3

    Aunque la mayoría de los sistemas modernos muestran un mensaje de advertencia y requieren opciones adicionales, la opción -f anula la confirmación en algunos escenarios.

  2. Eliminar múltiples archivos con diferentes nombres y la misma extensión usando el signo asterisco (*) ayuda a coincidir con cero o más caracteres. El siguiente error tipográfico en el comando resulta en un error:
    sudo rm -rf * .txt
    rm rf en linux 4
    rm rf en linux 4

    Similar al ejemplo anterior, agregar un espacio extra después del asterisco (*) pasa el directorio de trabajo y todos sus subdirectorios para su eliminación. Por lo tanto, el comando se ejecuta de la siguiente manera:

    sudo rm -rf *

    Como resultado, todo desde el directorio actual se elimina sin advertencia. El comando elimina el sistema si el directorio de trabajo actual es root (/).

  3. Una forma peligrosa de sudo -rm rf puede ocurrir al eliminar directorios que terminan en los mismos caracteres:
    sudo rm -rf /* -directory

    Debido al espaciado, el comando se convierte en:

    sudo rm -rf /*

    Dado que el comando elimina el contenido dentro del directorio raíz, no hay advertencias.

rm rf en linux 5
rm rf en linux 5

Después de leer esta guía, sabes sobre los peligros de usar sudo rm -rf. Aunque el comando no es peligroso y tiene un propósito, podría eliminar potencialmente todo tu sistema o datos críticos.

Linux puede ser un sistema operativo difícil de manejar para algunos usuarios, por lo que en Portalmastips nos encanta hacer guías sobre cómo sacarle el máximo provecho. Recientemente, sacamos una guía sobre cómo listar usuarios que seguro te será de ayuda. Pero no te quedes ahí. Revisa el resto de nuestro blog y resuelve las dudas más frecuentes de los usuarios.

Te recomendamos  ¿Cómo eliminar un directorio en Linux?