Ist es möglich, ein Skript auszuführen, wenn keine Berechtigung zum Lesen vorhanden ist? Im Root-Modus habe ich ein Skript erstellt und möchte, dass der andere Benutzer dieses Skript ausführt, aber nicht liest. Ich habe chmod
gemacht um das Lesen und Schreiben zu verbieten, aber die Ausführung zuzulassen, aber im Benutzermodus sah ich die Meldung, die besagt:Erlaubnis verweigert.
Akzeptierte Antwort:
Das Problem ist, dass nicht das Skript ausgeführt wird, sondern der Interpreter (bash
, perl
, python
, etc.). Und der Dolmetscher muss das Drehbuch lesen. Dies unterscheidet sich von einem „normalen“ Programm wie ls
, indem das Programm direkt in den Kernel geladen wird, wie es der Interpreter tun würde. Da der Kernel selbst die Programmdatei liest, muss er sich nicht um den Lesezugriff kümmern. Der Interpreter muss die Skriptdatei lesen, so wie eine normale Datei gelesen werden müsste.