Hallo Leute, hört sich auf den ersten Blick an wie ein Anfängerfehler, ises aber nicht: luc@bond:/data/personal_data/cam/test> cat rename.jpg #!/bin/sh for i in *.jpg do newfile=`echo $i|sed s/\.jpg//g` mv $i $newfile done luc@bond:/data/personal_data/cam/test> luc@bond:/data/personal_data/cam/test> ./rename.jpg bash: ./rename.jpg: bad interpreter: Permission denied habe mir dann den cvs-tree von KDE3 geholt, make -f Makefile.cvs und so weiter, und dann: bond:/data/downloads/linux/kde-cvs/kdelibs # ./configure bash: ./configure: bad interpreter: Permission denied bond:/data/downloads/linux/kde-cvs/kdelibs # bond:/data/downloads/linux/kde-cvs/kdelibs # head -1 configure #! /bin/sh bond:/data/downloads/linux/kde-cvs/kdelibs # ls -la configure -rwxr-xr-x 1 luc users 598761 Dec 27 22:26 configure bond:/data/downloads/linux/kde-cvs/kdelibs # ls -la /bin/sh -rwxr-xr-x 2 root root 442760 Sep 24 02:43 /bin/sh Wenn ich dann aber: bond:/data/downloads/linux/kde-cvs/kdelibs # bash configure checking build system type... i686-suse-linux checking host system type... i686-suse-linux <some lines snipped> checking for C compiler default output... a.out checking whether the C compiler works... configure: error: cannot run C compiled programs. If you meant to cross compile, use `--host'. Nun, da weiss ich nicht viel dazu sagen, ausser das es mit einer SuSE 7.2 (ziemliche Minimalinstallation) funktioniert.... Weiss jemand Rat?
Hi Luc, hi Liste, Luc de Louw wrote:
Hallo Leute,
hört sich auf den ersten Blick an wie ein Anfängerfehler, ises aber nicht:
luc@bond:/data/personal_data/cam/test> cat rename.jpg #!/bin/sh for i in *.jpg do newfile=`echo $i|sed s/\.jpg//g` mv $i $newfile done luc@bond:/data/personal_data/cam/test>
luc@bond:/data/personal_data/cam/test> ./rename.jpg bash: ./rename.jpg: bad interpreter: Permission denied
bond:/data/downloads/linux/kde-cvs/kdelibs # ls -la /bin/sh -rwxr-xr-x 2 root root 442760 Sep 24 02:43 /bin/sh
Nun, da weiss ich nicht viel dazu sagen, ausser das es mit einer SuSE 7.2 (ziemliche Minimalinstallation) funktioniert....
Weiss jemand Rat?
Ja, bei SuSE 7.1 und 7.3 ist /bin/sh ein link auf die bash, versuch mal: cd /bin mv sh sh.old ln -s bash sh damit dürfte dein Problem gelöst sein. Zum testen wenn du reine sh-Scripte schreiben mußt, nur #!/bin/sh.old als Interpreter angeben. Die Bash kann alles was die sh-shell kann und noch mehr. hth cu Gerald PS: Erste mail mit neuem System, sollte sie nicht Etiketten-konform ankommen, ändere ich die einstellungen sofort.
Gerald Goebel wrote: <schnip>
Ja, bei SuSE 7.1 und 7.3 ist /bin/sh ein link auf die bash, versuch mal: cd /bin mv sh sh.old ln -s bash sh
damit dürfte dein Problem gelöst sein. Zum testen wenn du reine sh-Scripte schreiben mußt, nur #!/bin/sh.old als Interpreter angeben. Die Bash kann alles was die sh-shell kann und noch mehr.
</schnipp> Leider hats nicht geholfen, derselbe Fehler... immer noch luc@bond:/data/downloads/linux/kde-cvs> ./configure bash: ./configure: bad interpreter: Permission denied Gruss Luc
On 28 Dec 2001 at 10:45, Luc de Louw wrote:
Gerald Goebel wrote:
<schnip>
Ja, bei SuSE 7.1 und 7.3 ist /bin/sh ein link auf die bash, versuch mal: cd /bin mv sh sh.old ln -s bash sh
damit dürfte dein Problem gelöst sein. Zum testen wenn du reine sh-Scripte schreiben mußt, nur #!/bin/sh.old als Interpreter angeben. Die Bash kann alles was die sh-shell kann und noch mehr.
</schnipp>
Leider hats nicht geholfen, derselbe Fehler... immer noch
luc@bond:/data/downloads/linux/kde-cvs> ./configure bash: ./configure: bad interpreter: Permission denied
Hast Du dir so ein script mal mit vi oder od (xd) angesehen? Ist es evtl. von einem DOS/Windows Rechner transferiert worden und enthält ^M am Zeilenende? Mit more oder cat wird dir das nicht angezeigt; wohl aber mit vi. Nur so 'ne Idee Andreas
Leider hats nicht geholfen, derselbe Fehler... immer noch
luc@bond:/data/downloads/linux/kde-cvs> ./configure bash: ./configure: bad interpreter: Permission denied
Hast Du dir so ein script mal mit vi oder od (xd) angesehen? Ist es evtl. von einem DOS/Windows Rechner transferiert worden und enthält ^M am Zeilenende? Mit more oder cat wird dir das nicht angezeigt; wohl aber mit vi.
Auch das isses nicht :-( Trotzdem danke für den tipp... Gruss Luc
Hi, Am Freitag, 28. Dezember 2001 10:45 schrieb Luc de Louw:
Leider hats nicht geholfen, derselbe Fehler... immer noch
luc@bond:/data/downloads/linux/kde-cvs> ./configure bash: ./configure: bad interpreter: Permission denied ^^^^^^^^^^^^^^ Wie sehen den die Rechte aus? Bist Du als root angemeldet?
Ciao Andre
Hallo, Am Freitag, 28. Dezember 2001 10:45 schrieb Luc de Louw:
Gerald Goebel wrote:
<schnip>
Ja, bei SuSE 7.1 und 7.3 ist /bin/sh ein link auf die bash, versuch mal: cd /bin mv sh sh.old ln -s bash sh
damit dürfte dein Problem gelöst sein. Zum testen wenn du reine sh-Scripte schreiben mußt, nur #!/bin/sh.old als Interpreter angeben. Die Bash kann alles was die sh-shell kann und noch mehr.
</schnipp>
Leider hats nicht geholfen, derselbe Fehler... immer noch
Schick mal die Ausgaben von ls -l /bin/sh rpm -qf /bin/sh rpm -Vf /bin/sh Gibt's beim Booten schon irgendwelche Fehlermeldungen (da wird die Bash schließlich auch an vielen Stellen benutzt)? Schöne Grüße aus Bremen hartmut
Hi! On Thu, 27 Dec 2001, Luc de Louw wrote:
Hallo Leute,
hört sich auf den ersten Blick an wie ein Anfängerfehler, ises aber nicht:
luc@bond:/data/personal_data/cam/test> cat rename.jpg #!/bin/sh for i in *.jpg do newfile=`echo $i|sed s/\.jpg//g` mv $i $newfile done luc@bond:/data/personal_data/cam/test>
luc@bond:/data/personal_data/cam/test> ./rename.jpg bash: ./rename.jpg: bad interpreter: Permission denied
Ich vermisse hier ein "chmod +x rename.jpg" - wenn nicht mindestens eines der Execute-Bits gesetzt ist, kann auch root ein Script nicht ausführen... (Ich bekomme dann zumindest unter SuSE 7.2 genau die von Die genannte Fehlermeldung!)
bond:/data/downloads/linux/kde-cvs/kdelibs # ./configure bash: ./configure: bad interpreter: Permission denied
Auch hier: welche Rechte hat ./configure? Martin
Hallo Leute, <snip>
bond:/data/downloads/linux/kde-cvs/kdelibs # ./configure bash: ./configure: bad interpreter: Permission denied
Ich habe das Problem gelöst, und poste das ganze, damit wenn jemand dasselbe problem mal haben sollte ists archiviert. Es waren nicht die Rechte des/der Script(s) sondern die des Filesystems! in /etc/fstab war in der 4ten Spalte kein "defaults" eingetragen Weiss der Geier wieso, aber das fs war gemountet mit dem flag "noexec" Da auf diesem fs keine binaries sondern nur daten liegen, habe ich dies nie bemerkt.... Auf jeden Fall vielen Dank für die Hilfe Gruss Luc
Hallo Luc de Louw, hallo Leute, Am Donnerstag, 27. Dezember 2001 23:17 schrieb Luc de Louw:
hört sich auf den ersten Blick an wie ein Anfängerfehler, ises aber nicht:
sicher?
luc@bond:/data/personal_data/cam/test> cat rename.jpg #!/bin/sh for i in *.jpg do newfile=`echo $i|sed s/\.jpg//g` mv $i $newfile done luc@bond:/data/personal_data/cam/test>
luc@bond:/data/personal_data/cam/test> ./rename.jpg bash: ./rename.jpg: bad interpreter: Permission denied [...] Weiss jemand Rat?
Ich fürchte, es ist doch ein Anfängerfehler: ist die Datei ausführbar? Wenn nicht, mit chmod ändern. Gruß Christian Boltz -- Registrierter Linux-Nutzer #239431 Linux is like a wigwam: no gates, no windows, but an apache inside.
participants (7)
-
Andre Heine
-
Andreas Kyek
-
Christian Boltz
-
Gerald Goebel
-
Hartmut Meyer
-
Luc de Louw
-
Martin Köhling