ubuntuusers.de

Programmstart ohne Rechte

Status: Gelöst | Ubuntu-Version: Ubuntu 10.04 (Lucid Lynx)
Antworten |

Braindead

Avatar von Braindead

Anmeldungsdatum:
8. August 2010

Beiträge: 158

Wohnort: Saarbrücken

Hi,

vielleicht kann hier mir jemand eine Sache erklären, die ich nicht so ganz verstehe. Warum kann ich ein Shellscript z.B.

#!/bin/bash
echo "test"

auch ohne Ausführungsberechtigung und sogar als Nichtbesitzer der Datei starten, wenn ich dieses mit

. ./test

oder

source ./test

aufrufe. Das verwirrt mich gerade ziemlich.

SG Jürgen

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13174

Hi,

Du sagst mit source bzw. . der aktuellen Shell (die ja schon ausgeführt wird), dass sie alle Befehle in der Datei lesen und ausführen soll. Dafür reichen Leserechte.

Wenn Du hingegen ./test eingibst, sagst Du der Shell, dass sie die Datei als separaten Prozess ausführen soll - die Datei kann ja sowohl ein Skript als auch ein Binary sein. Das Ausführen wird in dem Fall vom Betriebssystem erledigt, das nun wiederum die Ausführungsrechte prüft.

Ciao

robert

curly

Anmeldungsdatum:
2. Mai 2010

Beiträge: 268

source führt ein Shell-Skript in der aktuellen Shell aus anstatt einen child-Prozess mit einer neuen Shell zu starten.

z.B. hier: http://de.wikibooks.org/wiki/Linux-Kompendium:_Shellprogrammierung#Source_.28..29

Braindead

(Themenstarter)
Avatar von Braindead

Anmeldungsdatum:
8. August 2010

Beiträge: 158

Wohnort: Saarbrücken

ok, danke für die Erläuterungen ☺

track

Avatar von track

Anmeldungsdatum:
26. Juni 2008

Beiträge: 7174

Wohnort: Wolfen (S-A)

Das ist die Tücke mit dem source-Befehl . - Der sagt nämlich der aktuellen Shell (genau der, die im Moment hinter Deinem Prompt tätig ist) dass sie den Inhalt der angegebenen Datei als Befehls-Quelle benutzen und (im eigenen Kontext = Prozess !) ausführen soll.

Die Datei wird also nur als Befehlsliste in die eigene Umgebung (egal ob Skript oder Konsole) importiert und da ausgeführt.

track

p.s.:
Oh, sorry, ich war zu spät. Robert und curly haben es oben noch besser erklärt !

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13174

track schrieb:

Oh, sorry, ich war zu spät. Robert und curly haben es oben noch besser erklärt !

Wir können Karneval als Tick, Trick und Track gehen. 😉

tick - äh - robert

Antworten |