Retourner aux forums || Retourner au forum Linux.redhat

Linux.redhat : /bin/sh: bad interpreter: Permission non accordée

Posté par dubis () le 03 juillet 2007
0
Bonjour,

Voci mon script que j'ai appelé test.sh :
#!/bin/sh
echo "SH fonctionne"


Et voici le message d'erreur quand je le lance :
-bash: ./test.sh: /bin/sh: bad interpreter: Permission non accordée


Est ce que quelqu'un a déjà rencontré ce probleme et l'a resolu ?

Merci de votre aide.

> Lire le message (14 commentaires, moyenne: 1,9).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

pas chez moi

Posté par NeoX () le 03/07/2007 à 13:26. (lien). Évalué à 1.

neox@amd64-full-linux:~$ which sh
/bin/sh
neox@amd64-full-linux:~$ vi test.sh
neox@amd64-full-linux:~$ chmod 755 test.sh
neox@amd64-full-linux:~$ ./test.sh
SH fonctionne
neox@amd64-full-linux:~$

neox@amd64-full-linux:~$ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 2007-04-13 22:05 /bin/sh -> dash
neox@amd64-full-linux:~$ ls -l /bin/dash
-rwxr-xr-x 1 root root 86088 2007-03-05 07:00 /bin/dash
neox@amd64-full-linux:~$

--
Apprendre par les autres, c'est bien.
Apprendre par soi-meme (RTFM, man, et notre ami google) c'est mieux
  • [^]Re: pas chez moi

    Posté par NeoX () le 03/07/2007 à 13:27. (lien). Évalué à 1.

    heu, je suis sur ubuntu 7.04 32bits

    --
    Apprendre par les autres, c'est bien.
    Apprendre par soi-meme (RTFM, man, et notre ami google) c'est mieux
  • [^]qu'est ce qui passe chez moi

    Posté par dubis () le 03/07/2007 à 13:40. (lien). Évalué à 1.

    :~$ls -l test.sh
    -rwxr-xr-x 1 alonso 70000 32 jui 3 15:12 test.sh

    :~$ls -l /bin/sh
    lrwxrwxrwx 1 root root 4 mai 30 15:20 /bin/sh -> bash

    :~$uname -a
    Linux veloce 2.6.9-55.ELsmp #1 SMP Fri Apr 20 16:36:54 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux

    Merci de votre aide

    • [^]caractères fantomes ?

      Posté par daggett () le 03/07/2007 à 16:44. (lien). Évalué à 5.

      Pas vraiment sûr que ça vienne de là (l'erreur serait "bad interpreter: Aucun fichier ou répertoire de ce type"), mais au cas où: il n'y a pas de caractère invisible qui viendrait polluer le nom de l'interpréteur ? fait un "od -c" sur ton script, tu devrait avoir exactement ça:

      $ od -c tt.sh
      0000000 # ! / b i n / s h \n e c h o "
      0000020 S H f o n c t i o n n e " \n
      0000037


      Si tu as un \r\n au lieu d'un \n à la fin du /bin/sh par contre, c'est un saut de ligne MS-DOS et le \r est interprété comme faisant partie du nom du shell, qui n'existe alors pas.

partoche en noexec ?

Posté par Batchyx () le 03/07/2007 à 13:43. (lien). Évalué à 4.

tu à peut être pas les droits d'éxecution sur ta partition.

fait un mount sans arguments et regarde si ta partition est montée en noexec, si c'est le cas ajoute donc un exec pour ta partition dans /etc/fstab.

  • [^]Re: partoche en noexec ?

    Posté par Dan () le 03/07/2007 à 14:45. (lien). Évalué à 2.

    Ouais, ça me fat ça sur la partition FAT32.

    Sinon, /bin/sh en général c'est un lien vers le shell que t'utilises, donc je pense que c'est mieux de marquer bash ou tcsh ou zsh ou je sais pas quoi.

    • [^]Re: partoche en noexec ?

      Posté par Lol Zimmerli (Jabber id, page perso, ) le 03/07/2007 à 15:06. (lien). Évalué à 2.

      Oui et non : man bash, § APPEL :

      Si bash est appelé sous le nom sh, il essaye d'imiter le comportement de démarrage des versions
      historiques de sh aussi fidèlement que possible, tout en restant conforme aux spécifications
      POSIX.

      --
      En fait, Bernardo n'était pas muet; c'est Zorro qui était sourd.

heu ditess....

Posté par jeje99 (page perso, ) le 03/07/2007 à 14:37. (lien). Évalué à 1.

chmod u+x test.sh
./test.sh


ça marche pas ?

  • [^]Re: heu ditess....

    Posté par NeoX () le 03/07/2007 à 21:40. (lien). Évalué à 1.


    [^]qu'est ce qui passe chez moi
    Posté par dubis (envoyer un message privé) le 03/07/2007 à 15:40. (lien). Évalué à 1.

    :~$ls -l test.sh
    -rwxr-xr-x 1 alonso 70000 32 jui 3 15:12 test.sh


    apparemment cela ne suffit pas

    --
    Apprendre par les autres, c'est bien.
    Apprendre par soi-meme (RTFM, man, et notre ami google) c'est mieux
    • [^]C'est le NFS

      Posté par dubis () le 04/07/2007 à 06:48. (lien). Évalué à 1.

      Bonjour,

      Merci à tous de vos prompts réponses.

      J'avais oublié de souligner que les HOME utilisateurs sont montés en NFS. J'ai donc déplacé le HOME dans le fichier "passwd" et cela a réglé le problème. Il me reste à savoir pourquoi j'ai un problème droit sur le NFS

      Voici l'extrait du fstab :
      serveur:/export/home /home nfs rw,user,auto 0 0

      Encore merci

      • [^]Re: C'est le NFS

        Posté par NeoX () le 04/07/2007 à 07:23. (lien). Évalué à 2.

        soit rajouté exec dans les options du fstab

        soit regarder dans le fichier export de nfs savoir si tu autorise l'execution.

        --
        Apprendre par les autres, c'est bien.
        Apprendre par soi-meme (RTFM, man, et notre ami google) c'est mieux
        • [^]Re: C'est le NFS

          Posté par dubis () le 04/07/2007 à 07:43. (lien). Évalué à 1.

          Merci John,

          Je viens de rajouter exec à la ligne suivante de mon fstab :

          serveur:/export/home /home nfs rw,user,exec,auto 0 0

          Ca fonctionne ! L'erreur "-bash: ./test.sh: /bin/sh: bad interpreter: Permission non accordée" a disparue. Je peux executer les script avec tous mes utilisateurs.

          Encore merci.

          • [^]Re: C'est le NFS

            Posté par NeoX () le 04/07/2007 à 07:58. (lien). Évalué à 3.

            tu peux aussi simplifier tes options en mettant default ou defaults
            comme les autres lignes.

            et rajouter les options specifiques à NFS si besoin :
            http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/ref-gu(...)

            --
            Apprendre par les autres, c'est bien.
            Apprendre par soi-meme (RTFM, man, et notre ami google) c'est mieux
            • [^]Re: C'est le NFS

              Posté par dubis () le 04/07/2007 à 08:27. (lien). Évalué à 1.

              Jhon,

              Pour info,l'option defaults fonctionne aussi.....

              hostname:/export/home /home nfs defaults 0 0


              Merci

Revenir en haut de page || Retourner aux forums || Retourner au forum Linux.redhat