Saltar al contenido

Permiso denegado al ejecutar scripts .sh

Luego de de esta extensa recopilación de información solucionamos esta obstáculo que suelen tener algunos usuarios. Te brindamos la respuesta y deseamos serte de gran ayuda.

Solución:

Aquí hay un enlace que explica cómo cambiar el permiso del archivo (y la propiedad)

Si desea omitir estos (por ahora, por supuesto), puede crear un directorio/carpeta en su directorio de inicio de usuario y trabajar en su C programas (u otros) allí.


Puede abrir la terminal (pulse Control + alternativa + T) y cd al directorio de destino:

cd /path/to/target

Para dar permiso de ejecución al archivo “the_file_name” (si el sistema de archivos lo permite con los derechos RW):

chmod +x the_file_name

Necesitas dar permiso de ejecución y lectura. Sigue esto:

    chmod u+r+x filename.sh
    ./filename.sh

Cuando creamos un nuevo archivo de script, por defecto tiene permiso de lectura y escritura. Pero si queremos ejecutarlos, debemos dar permiso de ejecución como se muestra arriba.

Tenga en cuenta que el bit de ejecución por sí solo no es suficiente para los scripts de shell: también se debe poder leer el archivo para ejecutarlo (al contrario de los binarios que solo necesitan el bit de permiso de ejecución).

Abra su aplicación de terminal presionando CTRL + ALT + T o con el atajo apropiado en el entorno gráfico (como Terminal o xTerm).
En la ventana del uniforme que aparece en pantalla verás un carácter parpadeante, es el terminal cursor: simplemente haga clic en la ventana y escriba para ingresar texto (típicamente comandos) y presione ENTER para confirmar la entrada.
Antes del cursor siempre aparece su posición actual en el sistema de archivos desde el root directory (“/”) y su casa (donde están sus archivos personales) se llama “~”.
Para cambiar el uso de directorio/carpeta cd EXISTENTFOLDER (reemplace EXISTENTFOLDER con el nombre de la carpeta); si te sientes perdido, simplemente escribe cd para volver a su directorio de inicio en un abrir y cerrar de ojos!
Ahora resolvamos tu problema:

  1. Utilizar el cd comando para encontrar el directorio con su código fuente. Usar TAB para ayudarte. si ejecutas ls -lhverá una lista de posibles rutas a seguir y archivos para ejecutar.

  2. Cuando haya encontrado el archivo bloqueado, ejecute chmod +x FILENAME (reemplace FILENAME con el nombre de su archivo de código fuente).

  3. Si tiene varios archivos bloqueados, ejecute chmod +x * para desbloquear todos los archivos en el directorio actual. Nunca chmod +x archivos peligrosos o inseguros.

  4. Ejecutar ./FILENAME YOUREVENTUALARGUMENTS para ejecutar su archivo ejecutable.

  5. Recuerde que si su programa compilado intenta leer/escribir fuera de su directorio de inicio, deberá ejecutarlo como root mediante el uso sudo ./FILENAME YOUREVENTUALARGUMENTS.

Si desea tener un manual para ejecutar un comando man COMMAND (reemplace COMMAND con el nombre de comando exacto, Linux distingue entre mayúsculas y minúsculas).

Algunas conchas tienen un Open terminal here comando para simplificar tu vida, búscalo en el futuro y recuerda que el shell de comandos puede ser tu mejor amigo, si lo usas bien. 😀

Es todo. Si necesita más ayuda, comente aquí.
Si te estoy ayudando, presiona la flecha ARRIBA a la izquierda; si lo resuelves marca esta respuesta como la mejor respuesta.

Tenga una buena experiencia en Linux y Ubuntu.

Comentarios y valoraciones del artículo

Puedes defender nuestra función exponiendo un comentario o dejando una valoración te damos las gracias.

¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 3)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *