Borrar archivos en Linux: permisos necesarios

El título de este post puede sugerir que el tema es repetido. Si bien ya lo hemos abordado antes, hoy lo haremos desde un enfoque diferente. En esta ocasión explicaremos cuáles son los permisos necesarios para poder borrar archivos en Linux.

Borrar archivos en Linux

Para empezar, crearemos el siguiente sandbox (ambiente de prueba) con los permisos indicados:

Directorios: /pruebas (propietarios root:root y permisos 755) y /pruebas/archivos (propietarios root:alumno y permisos 770)

mkdir -p /pruebas/archivos
chmod 770 /pruebas/archivos
chgrp alumno /pruebas/archivos

Archivos: /pruebas/archivos/doc1 y /pruebas/archivos/doc2 (ambos con propietarios root:alumno, pero con permisos 644 el primero y 600 el segundo)

touch /pruebas/archivos/doc{1,2}
chown root:alumno /pruebas/archivos/doc{1,2}
chmod 600 /pruebas/archivos/doc2

Nuestro esquema debe quedar como se muestra en la Fig. 1:

ls -lR /pruebas
Preparación del esquema de trabajo para borrar archivos en Linux
Figura 1 – Preparación del esquema de trabajo para borrar archivos en Linux

Pruebas

A continuación, realizaremos las siguientes pruebas utilizando la cuenta alumno:

1.-) Intentar borrar /pruebas/archivos/doc1:

rm /pruebas/archivos/doc1

2.-) Hacer lo mismo con /pruebas/archivos/doc2:

rm /pruebas/archivos/doc2

Como podemos ver en la Fig. 2, el usuario alumno pudo borrar tanto el archivo doc1 como doc2. Lo sorprendente (aunque enseguida veremos que no tanto) es que sobre este último no tenía ningún tipo de permisos. Dicho de otra forma, alumno pudo borrar un archivo sobre el que no tenía acceso de lectura, escritura, o ejecución.

Conclusión

Finalmente, de los ejemplos de arriba se desprenden dos lecciones:

  • Para poder ingresar en un directorio (pensemos en el comando cd), es necesario que tengamos permisos de lectura y ejecución sobre el mismo y todos sus padres. Tanto / como /pruebas y /pruebas/archivos tienen permisos 755.
  • Para poder borrar el contenido de un directorio, se requieren los mismos accesos que en el caso anterior, más permisos de escritura sobre dicho directorio.

Estas son consideraciones importantes que debemos tener en cuenta al crear directorios, agregar contenidos a los mismos, y establecer los dueños y permisos correspondientes.

¡Aprovechá la oportunidad de suscribirte al blog para recibir en tu correo el post nuestro de cada día, novedades, y promociones exclusivas!