Autorisation refusée lors de l'exécution du fichier sh


9

J'essaie d'utiliser un fichier sh pour démarrer facilement un écran avec ma console de serveur minecraft. J'ai nommé ce fichier mc.sh. J'ai un autre fichier sh dans le même répertoire que mc.sh qui fonctionne bien.

Voici ce qui se trouve dans mc.sh:

screen -S minecraft java -Xms1024M -Xmx1024M -jar spigot.jar nogui

Voici ce qui se trouve dans l'autre fichier sh:

#!/bin/sh    
java -Xms512M -Xmx1024M -XX:MaxPermSize=128M -jar spigot.jar

Le message d'erreur que je reçois est -bash: ./mc.sh: Permission denied. Les autorisations pour mc.shsont-rw-rw-r-- 1


Mettez 4 espaces devant la ligne de code et il se formatera correctement même avec un #;) Veuillez aussi montrer les permissions de "mc.sh" ( ls -l mc.shdepuis le répertoire).
Rinzwind

Vous pouvez commencer par ajouter le message d'erreur que vous obtenez, ainsi que la sortie de "ls -l * .sh" dans le répertoire où vous avez les scripts shell. (30 secondes de retard! 😊)
mgor

Réponses:


22

Les autorisations n'ont pas le bit d'exécution défini, donc bash n'exécutera pas le script. Vous pouvez définir le bit et exécuter le script:

chmod u+x mc.sh
./mc.sh

ou laissez bash l'exécuter pour vous:

bash mc.sh

-1

Vous pouvez ouvrir le terminal (appuyez sur Ctrl + Alt + T) et cd dans le répertoire cible:

cd / path_to_target

Pour autoriser le fichier "your_file_name" à s'exécuter:

chmod + x votre_nom_fichier

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.