# Problème avec sh

## Gargamel

Salut

./configure

-bash: ./configure: /bin/sh: bad interpreter: Permission denied

la seul moyen que j'ai pour regler ce problème c'est de faire sh ./configure

Mais ca ne règles qu'a moitié la solution car le 'make' m'affiche chaque fois differentes erreures pour toutes les sources que j'ai essayer de compiler. Et chaque fois je peux lire /bin/sh: bad interpreter: Permission denied dans les logs de make.

Cepandant ce qu'il y as de bizarre c'est que chaque emerge que je fais marche !!

Ps : c'est vraiment ch*** de ne pas pouvoir installer d'autres logiciels que ceux qu'il y as dans portage ='-(

@+

Merci d'avance de votre aide.

----------

## sebest

si sh ./configure fonctionne ça veut dire que le bit executable n'est pas present sur ce fichier, tu peux le verifier avec ls -la.

Un chmod -R u+x dans le repertoire de ton soft devrait resoudre ce probleme.

----------

## sebest

questions:

1) de quelle maniere extrait tu tes archives

2) quelle est le filesystem sur lequel tu extraits tes archives, si c'est de la fat32, ça pourrait expliquer tes problemes.

----------

## Gargamel

je l'extrais en faisant 'tar -xvzf ....' j'ai essayer avec -p mais rien a faire ca marche pas nan plus !

Mon filesystem c'est du Ext3!

Et j'ai fait u+r -R ~/xawdecode-1.6.7

voyant que ca ne marchait po et que ca m'enervait (je sais un peu bourrin mais bon  :Smile: )

----------

## Gargamel

Petite aide :

lorsque je veux lancer quelconque script '#!/bin/sh'

il me met une erreure, toujours la mem '/bin/sh: bad interpreter: Permission denied'

Et pour lancer ce script je fais sh <nom_du_script>

----------

## -JeaN-

Salut,

Essaies de faire :

```
emerge bash

chsh /usr/bin/bash
```

Je pense que la plupart des scripts de configurations marchent mieux avec bash, à essayer..

----------

## Gargamel

gargamel@tux gargamel $ emerge bash -p

These are the packages that I would merge, in order:

Calculating dependencies ...done!

[ebuild   R  ] sys-apps/bash-2.05b-r3

je l'ai deja  :Smile: 

----------

## Gargamel

Par contre lorsque je fais: 

gargamel@tux gargamel $ chsh /usr/bin/bash

chsh: Unknown user /usr/bin/bash

='-(

----------

## b_Q

T'as cd dans le répertoire créé suite à tar -xvzf .... ?

Il faut bien relire la première réponse sebert.

Des points sur les i pour un seul fichier !

$echo $SHELL

/bin/bash

...

$echo "echo Le fichier est exécutable" > fichier-exec

$./fichier-exec

bash: ./fichier-exec: Permission non accordée

$ls -l fichier-exec

-rw-r--r--    1 b        b              31 2003-02-23 00:18 fichier-exec

$chmod ugo+x fichier-exec

$ls -l fichier-exec

-rwxr-xr-x    1 b        b              31 2003-02-23 00:18 fichier-exec

$./fichier-exec

Le fichier est exécutable

----------

## -JeaN-

 *Gargamel wrote:*   

> Par contre lorsque je fais: 
> 
> gargamel@tux gargamel $ chsh /usr/bin/bash
> 
> chsh: Unknown user /usr/bin/bash
> ...

 

Il se peut que ton bash se trouve dans /bin/bash tout simplement  :Wink: 

Je te conseilles tout ça parce qu'il se peut que certain script sh utilises des fonctions de bash( bourne again shell ), que sh( bourne shell ) ne fournit pas.  :Wink: 

J'avais donné des lignes de commande fausses  :Sad: 

----------

## Gargamel

J'ai regarder dans mon /etc/passwd et j'ai bien /bin/bash pour moi

Et ce n'est pas un probleme de bash->sh car meme un script on ne peut plus simple ne fonctionne pas !

je pencherais plutot vers un probleme de fichier de conf mais je ne trouve pas lequel !

='-(

Je sans que je vais etre obliger de me taper un reinstall de ma gentoo , dommage celle que j'avais etait juste de debut novembre ='-(

et c'est assez embettant d'etre (limiter) a faire des 'sh <sripts>' et "seulement" les logiciels qui sont dans portage !

@+

----------

## TGL

 *Gargamel wrote:*   

>  Je sans que je vais etre obliger de me taper un reinstall de ma gentoo , dommage celle que j'avais etait juste de debut novembre ='-( 

 

Je pense pas qu'il faille déjà en arriver à ces extremités. Procédons par ordre...

Première chose, ton test avec le prog qui fait un "echo ...", c'est normal qu'il ne marche pas puisque tu n'avais pas mis de "#!/bin/sh" au début. Rééssaye avec:

```
#!/bin/sh

echo "plop"
```

Deuxième chose: sh et bash, c'est pareil :

```
thomas@gromit etc $ qpkg -f /bin/sh

sys-apps/bash *

thomas@gromit etc $ ll /bin/sh

lrwxrwxrwx    1 root     root            4 2002-09-06 20:19 /bin/sh -> bash

thomas@gromit etc $ ll /bin/bash

-rwxr-xr-x    1 root     root       588340 2002-09-06 20:19 /bin/bash
```

Vérifier tes perms sur /bin/bash serait donc une bonne idée. Réemerger bash aussi, sait-on jamais.

Et puis après on verra...

----------

## TGL

Oh, et puis tant qu'on est à tout reprendre bien au début, c'est quoi tes perms sur le "configure" que tu ne pouvais pas executer?

----------

## TGL

Et tant qu'on est dans les trucs de base, tu roulerais pas avec un noyaux utilisant grsec par hasard ?

----------

## Mat_le_ouf

 *Gargamel wrote:*   

> "seulement" les logiciels qui sont dans portage !

 

Tu peux tout à fait installer des logiciels à partir des sources toit même sous Gentoo!

Il te suffit de bien préciser le prefix au moment de la configuration, par exemple :

```
$ ./configure --prefix=/opt/nom_du_prog

$ make && make install
```

Et normalement tout fonctionne bien (évidemment sans parler des éventuels problèmes de dépendance et cie...)

----------

## sergio

J'ai déjà eu ce problème :

J'avais décompressé un tarball (stage3) qui n'etait pas adapté à mon processeur et donc au moment de faire le chroot j'avais ce message.

La solution revient à decompresser le bon "stage1" et si possible celui du live CD adapté à ton processeur (i686, athlon, pentium3, etc...) et ensuite de refaire la phase de bootstrap....

A+

----------

## Gargamel

Oki merci 

je vais tester ca de suite  :Smile: 

@+

----------

