Introducción
Uno de los problemas más comunes a los que se enfrentan tanto los usuarios novatos como los administradores de sistemas en distribuciones basadas en Linux (como Ubuntu, Debian o CentOS) es el frustrante mensaje Permission denied (Permiso denegado). Este error ocurre cuando el usuario actual intenta acceder, modificar o ejecutar un archivo o directorio para el cual no cuenta con los privilegios necesarios según el sistema de permisos de Linux.
Causas Principales del Error Permission Denied
Las razones más frecuentes por las que aparece este fallo son:
- Falta de privilegios de superusuario (root) para ejecutar comandos del sistema.
- Permisos de lectura, escritura o ejecución incorrectos en los archivos o carpetas (chmod).
- El propietario actual del archivo no coincide con el usuario que intenta acceder a él (chown).
- Restricciones de seguridad aplicadas por módulos como SELinux o AppArmor.
Método 1: Usar sudo para elevar privilegios temporalmente
Si estás intentando instalar un paquete, modificar archivos del sistema o ejecutar un script que requiere privilegios elevados, la solución más rápida es anteponer el comando sudo.
- Abre tu terminal de Linux.
- Identifica el comando que te devolvió el error, por ejemplo:
apt update. - Vuelve a escribir el comando añadiendo sudo al inicio:
sudo apt update. - Introduce la contraseña de tu usuario (nota que no se mostrarán caracteres mientras escribes por seguridad) y presiona Enter.
Método 2: Modificar los permisos con chmod
Si el problema es que un archivo (como un script de Bash) no tiene permisos de ejecución, puedes otorgárselos utilizando el comando chmod.
- Verifica los permisos actuales del archivo ejecutando:
ls -l nombre_archivo. - Para otorgar permisos de ejecución a todos los usuarios, utiliza el comando:
sudo chmod +x nombre_archivo. - Si necesitas asignar permisos específicos de lectura, escritura y ejecución (por ejemplo, 755), usa:
sudo chmod 755 nombre_archivo. - Vuelve a intentar ejecutar tu archivo o script para comprobar que el error ha desaparecido.
Método 3: Cambiar el propietario del archivo con chown
A veces, los archivos son creados por el usuario root y no puedes editarlos con tu usuario estándar. En este caso, debes cambiar la propiedad del archivo.
- Comprueba quién es el propietario actual del archivo con:
ls -l. - Cambia el propietario del archivo o directorio asignándolo a tu usuario actual mediante el comando:
sudo chown -R tu_usuario:tu_usuario nombre_carpeta. - Verifica que el cambio se haya aplicado correctamente volviendo a listar los detalles del archivo.