# Kann keine Skripte als USER Starten.

## JoHo42

HI @ all,

ich kann keine Skripte als user starten.

Wenn ich dies versuche kommt immer "permission denied"

z.B.

drwxr-xr-x   2 joho42 users   72 Sep 14 20:50 .

drwx------  57 joho42 users 3144 Sep 14 21:49 ..

-rwxr-xr-x   1 joho42 users  591 Sep 14 21:24 mails.pl

Meldung:

bash: ./mails.pl: /usr/bin/perl: bad interpreter: Permission denied oder

bash: ./counter2.sh: Permission denied

Das Homeverzeichnis liegt auf eine Home Partition mit

folgendem /etc/fstab eintrag:

/dev/hda3               /home           reiserfs        user                    1 1

So warum geht das mal wieder nicht.

Ich hatte mir auch selber mal ein kleines Skript als user

geschrieben und dies konnte ich auch nur als root ausführen.

Gruss Jörg

----------

## moe

welche Berechtigungen hat denn /usr/bin/perl?

Gruss Maurice

----------

## JoHo42

Das ist die Berechtigung von perl....

-rwsr-sr-t  3 root root 1008012 Aug  5 08:51 /usr/bin/perl

Gruss Jörg

----------

## moe

Hmm, warum das? Also bei mir ist /usr/bin/perl ein link auf /usr/bin/perl5.8.4 mit diesen Berechtigungen

-rwxr-xr-x  1 root root /usr/bin/perl5.8.4

Gruss Maurice

----------

## JoHo42

Die Dateien perl und perl5.8.4 sind gleich groß scheint eine kopie zu sein.

-rwxr-xr-x   3 root   root    1008012 Aug  5 08:51 perl

-rwxr-xr-x   3 root   root    1008012 Aug  5 08:51 perl5.8.4

So jetzt scheint die Berechtigung wieder im ursprungszustand zu sein.

Ich hatte die nämlich beim rumspielen verstellt.

Mein Skript läßt sich trotzdem nicht ausführen.

Gruss Jörg

----------

## moe

/usr/bin/perl ist bei dir kein symlink??

Was passiert denn, wenn du als User einfach perl startest?

----------

## JoHo42

Nichts ich muss das mit <strg><c> abrechen.

Mich wundert es aber auch das ich keine anderen Scripte als User starten kann.

----------

## moe

Das ist ja nicht "nichts", sondern der perl Interpreter, der auf deine Eingaben wartet.. Also kann man perl wohl als User ausführen..

Ich würd jetzt noch auf die noexec Option für /home tippen, aber deinen fstab-Eintrag hsat du ja schon gepostet..

Was meinst du denn mit anderen Skripten, auch perl-Skripte oder gehen generell keine Skripte (bash, python, php, ruby usw..)?

----------

## equinox0r

 *JoHo42 wrote:*   

> bash: ./counter2.sh: Permission denied

 

scheint so  :Wink: 

ich tät sagen es liegt am reiser ...

----------

## JoHo42

Generell ich habe mal seti ins user kopiert die Rechte geändert und das ließ sich auch nicht starten.

ich habe als user mal wie gesagt ein bash script geschrieben und es ließ sich nur als root starten.

Und was mache ich jetzt gegen reiserfs ich habe alles auf reiser bzw formatiert gesetzt.

----------

## moe

Naja, ohne das explizit einzustellen, verbietet reiser es ja nicht als user Scripte auszuführen.. Aber um auszuschliessen, dass es an der Partition/dem Mountpoint/reiserfs liegt, pack doch mal ein Script in ein anderes Verzeichnis (/tmp sollte entsprechende Rechte standardmässig haben) und versuche es da als user auszuführen..

----------

## JoHo42

Oh ich kann das Script im /tmp Verzeichnis nach dem kopieren auch als User starten.

Ich gehe morgen hin und formatiere die Platte neu vielleicht geht das dann alles wieder.

Gruss Jörg

Danke für die Schnelle und gute Hilfe

----------

## equinox0r

naja mit kanonen auf spatzen zu schiessen is vielleicht nicht unbedingt die beste lösung auch wenn mir jetzt nicht mehr dazu einfällt  :Sad: 

----------

## JoHo42

So jetzt ist die /home Partition auf ext2 Formatiert und es ist immer noch nicht möglich Scripte zu starten.

Jetzt habe ich keine weiteren Ideen.

So die Scripte kann ich schon mal mit

/bin/bash script.sh starten aber direkt ./script.sh geht immer noch nicht.

Obwohl oben in der ersten Zeile im Script:

#!/bin/bash

steht.

Gruss Jörg

----------

## moe

Hmm, das klingt immer noch so als würde in den mount-Optionen noexec stehen.. Verwendest du vielleicht selinux oder irgendwas in der Richtung, was generell Ausführung in /homt verbietet? Falls selinux sowas macht, kenne das nicht so genau..

----------

## JoHo42

Ich weiß nicht was selinux ist und deshalb glaube ich auch nicht das ich das benutze.

Ich hoffe es zumindestens nicht.

Gruss Jörg

----------

## dreadhead

Wenn die Partition mit der option defaults gemountet wird wird sie auch automatsch mit noexec gemauntet. nimm in dem Fall das defauls raus und such dier die gewünschten optionen aus der manpage zu mount.

----------

## Deever

 *dreadhead wrote:*   

> Wenn die Partition mit der option defaults gemountet wird wird sie auch automatsch mit noexec gemauntet.

 

Nää!  :Wink: 

SCNR,

/dev

----------

## Deever

@JoHo42: Sicher, dass es nicht am Zeilenende liegt?

Gruß,

/dev

----------

## JoHo42

Das Script:

#!/bin/bash

befehl

befehl

Das ende ist auf jedenfall ein Zeilen Ende.

Gruss Jörg

----------

## Deever

Hä? Ich meine DOS/Mac-Zeilenende...was zeigt denn nano als letztes Zeichen einer Zeile an?

----------

## py-ro

Hi,

füge inefacht als Test die Option exec hinten an deine mount Options in der fstab

bye

Py

----------

## friedegott

Paste mal die Ausgabe von

```
head -n 1 counter2.sh | hexdump -C
```

um das Zeilenende zu pruefen  :Smile:  Wenn du CRLF anstatt LF als Zeilenende hast, wuerde das auch die "Bad Interpreter" Fehlermeldung erklaeren...

MfG

----------

## JoHo42

Hi Leute,

mit der exec funktion bin ich schon mal sehr geholfen, weil es geht.

Ein bißchen doof aber das ist das Problem.

Gruss JÖrg

----------

## Fauli

Aus der mount Manpage:

-o user

This option implies the options noexec, nosuid, and nodev (unless overridden by subsequent options, as in the option line user,exec,dev,suid).

----------

