Re: sh-skript nicht mehr ausführbar

From: Christoph Sandhaus <mailings_at_draupadi.de>
Date: Thu, 5 Jul 2007 18:27:42 +0200

Am Donnerstag, 5. Juli 2007 16:06 schrieb Frank Weißer:

Hallo Frank:

Kleiner Verdacht: am Ende der ersten Zeile steht "^M", Zeilenumbruch von
Windows.
Öffne mal die Datei mit vi und dem Schalter "-b":
  vi -b makefloppy.sh

Sollte am Ende wirklich dieses Zeichen stehen:
der Zeilenumbruch wird bei der Suche nach dem Interpreter mit eingelesen und
dann funktioniert es nicht.

Alternative.
rufe das Skript explizit mit einem Interpreter auf, dann wird die erste Zeile
ignoriert:
  sh makefloppy.sh

Funktioniert das, ist mit hoher Wahrscheinlichkeit ein Sonderzeichen in der
ersten Zeile.

Prüfung:
ist "/bin/bash" wirklich ausführbar?
Starte eine weitere Shell durch den Aufruf
  /bin/bash
Wenn augenscheinlich nichts passiert, so ist trotzdem eine neue Subshell
gestartet worden, die du mit "exit" wieder verläßt. Dann funktiert
"/bin/bash" auf jeden Fall.

Die Aussage "keine Berechtigung" ist ebenfalls sehr verdächtig. Wie sind die
Flags von "/bin/bash2? Poste mal die Ausgabe von
  ls -la /bin/bash
  ls -la makefloppy.sh
  id

Viele Grüße,
Christoph

> Hi!
>
> Ich hab hier grad ein Phänomen:
>
> Rufe ich ein Skript auf, das bisher einwandfrei funzte, so bekomme ich
> die Meldung:
>
> streuner1:work# ./makefloppy.sh
> bash: ./makefloppy.sh: /bin/bash: bad interpreter: Keine Berechtigung
>
> Ein
> # /bin/sh
> funktioniert und ich kann dann auch Befehle ausführen
>
> Dem Skript habe ich gleich zu Beginn echo mitgegeben, um zu sehen, wo's
> hakt:
>
> #!/bin/bash
> echo Programm laeuft
>
> Das Echo krieg ich schon nicht mehr zu sehen :-(
>
> Ich habe die ursprüngliche .tgz nochmal in ein neues Verzeichnis
> entpackt und das Skript aufgerufen: selber Misserfolg.
>
> Es läuft ein Debian Etch.
>
> Was ist da los?
>
> readU
> Frank
Received on Thu Jul 05 2007 - 18:27:42 CEST

This archive was generated by hypermail 2.2.0 : Thu Jul 05 2007 - 18:27:44 CEST