Cómo Solucionar el Error 'Permission Denied' en Scripts de Bash en Linux Paso a Paso

Cómo Solucionar el Error 'Permission Denied' en Scripts de Bash en Linux Paso a Paso
Anuncio relacionado

Introducción al error Permission Denied en Linux

Uno de los problemas más comunes a los que se enfrentan los usuarios y administradores de sistemas en distribuciones basadas en Linux como Ubuntu, Debian o CentOS es el temido mensaje bash: ./script.sh: Permission denied. Este error ocurre cuando intentamos ejecutar un archivo de comandos o script que carece de los permisos de ejecución necesarios en el sistema de archivos.

¿Cuáles son las causas de este error?

El sistema de seguridad de Linux está basado en permisos estrictos para los usuarios (propietario, grupo y otros). Las causas principales de este fallo son:

  • El archivo recién descargado o creado no tiene habilitado el bit de ejecución.
  • El usuario actual no es el propietario del archivo y el grupo u otros no tienen permisos de lectura/ejecución.
  • Se intenta ejecutar el script sin la ruta correcta o sin privilegios de superusuario (sudo) cuando el directorio raíz lo requiere.

Método 1: Otorgar permisos de ejecución con chmod (Solución recomendada)

La forma más rápida y limpia de solucionar este inconveniente es modificar los permisos del archivo utilizando el comando chmod en la terminal.

  1. Abre tu terminal de Linux.
  2. Navega hasta la carpeta donde se encuentra tu script utilizando el comando cd, por ejemplo: cd /home/usuario/scripts.
  3. Ejecuta el siguiente comando para otorgar permisos de ejecución al propietario del archivo: chmod +x script.sh
  4. Si necesitas que cualquier usuario del sistema pueda ejecutarlo, utiliza: chmod 755 script.sh
  5. Vuelve a intentar ejecutar tu script con normalidad: ./script.sh

Método 2: Cambiar la propiedad del archivo con chown

Si el error persiste, es probable que no tengas los derechos de propiedad sobre el archivo, especialmente si fue creado por el usuario root o copiado desde otra partición.

  1. Abre la terminal de comandos.
  2. Verifica el propietario actual del archivo ejecutando: ls -l script.sh
  3. Cambia el propietario del archivo a tu usuario actual utilizando el comando chown: sudo chown $USER:$USER script.sh
  4. Introduce tu contraseña de administrador si se te solicita.
  5. Aplica nuevamente el permiso de ejecución: chmod +x script.sh
Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
WordPress

Cómo Solucionar el Error 'ERR_TOO_MANY_REDIRECTS' en WordPress de Forma Definitiva

Descubre por qué ocurre el bucle de redirección infinita en tu sitio de WordPress y aplica nuestros métodos probados para solucionarlo rápidamente.

Leer guía completa →
Linux

Cómo Solucionar el Error de Dpkg Locked en Ubuntu y Debian Paso a Paso

Te has encontrado con el mensaje 'E: Could not get lock /var/lib/dpkg/lock-frontend'? Descubre cómo solucionarlo de forma rápida y segura.

Leer guía completa →
Apps

Cómo Solucionar el Error de Sincronización en OneDrive de Forma Definitiva

¿Tus archivos no se suben a la nube? Aprende a identificar las causas y soluciona el fallo de sincronización en OneDrive de manera rápida.

Leer guía completa →