Prozesse beenden

Hallo

Ich habe auf meinem Webspace mittels PHP einige Prozesse gestartet. Diese laufen jetzt auf dem Server im Hintergrund. Jetzt möchte ich sie beenden und wollte dafür ps und dann kill benutzen. kill ist kein Problem, allerdings erhalte ich bei ps „/bin/ps permission denied“. Also hab ich selbst ein ps kompiliert und wollte das verwenden, da erhalte ich aber „ps: cannot open ‚/proc‘: Permission denied“. Jetzt die Frage: Wie komme ich an die Prozessnummer ran?

Johannes


Jetzt möchte ich sie beenden und wollte dafür ps und dann kill
benutzen. kill ist kein Problem, allerdings erhalte ich bei ps
„/bin/ps permission denied“.

Was hat ‚/proc‘ für Permissions? Bei meinem Ubuntu stehen die auf „dr-xr-xr-x“, d.h. eigentlich kann jeder User das ps-Kommando ausführen.
Wie sieht es aus, wenn Du „ps“ als „root“ ausführst?

Also hab ich selbst ein ps
kompiliert und wollte das verwenden, da erhalte ich aber „ps:
cannot open ‚/proc‘: Permission denied“. Jetzt die Frage: Wie
komme ich an die Prozessnummer ran?

Johannes

Keep :smiley:
Horst

Was hat ‚/proc‘ für Permissions? Bei meinem Ubuntu stehen die
auf „dr-xr-xr-x“, d.h. eigentlich kann jeder User das
ps-Kommando ausführen.
Wie sieht es aus, wenn Du „ps“ als „root“ ausführst?

Naja, es ist ein SuSE 10.2, allerdings ist es ein Webserver. Da ist es verständlich, dass die Rechte arg eingeschränkt sind. Schon ein Runterfahren wäre ja eine Katastrophe. Mit meinen eingeschränkten Rechten kann ich nicht einmal ls ausführen. Ich muss mir also erst eins kompilieren und selbst aufspielen, um die Dateirechte auszulesen. Mit rootrechten sieht es sehr schlecht aus, ist ja nur ein angemieteter Serverplatz. Ich wollte halt wissen, ob ich ohne Zugriff auf /proc meine eigenen Prozesse einsehen kann.
Johannes

Hallo,

Was hat ‚/proc‘ für Permissions? Bei meinem Ubuntu stehen die
auf „dr-xr-xr-x“, d.h. eigentlich kann jeder User das
ps-Kommando ausführen.
Wie sieht es aus, wenn Du „ps“ als „root“ ausführst?

Naja, es ist ein SuSE 10.2, allerdings ist es ein Webserver.
Da ist es verständlich, dass die Rechte arg eingeschränkt
sind. Schon ein Runterfahren wäre ja eine Katastrophe. Mit
meinen eingeschränkten Rechten kann ich nicht einmal ls
ausführen. Ich muss mir also erst eins kompilieren und selbst
aufspielen, um die Dateirechte auszulesen.

Sorry, aber das ist höchstwahrscheinlich ein grauenhaftes Sicherheitskonzept. Du solltest mit den Permissions der Dateien und Verzeichnisse dafür sorgen, dass Benutzer bestimmte Dinge dürfen oder eben nicht, nicht durch die Zugriffsrechte auf die Binaries.
Wenn du kein ls hast, bekommst du mit Shell-Mitteln die selben Informationen, z.B. kannst du

echo \*

ausprobieren…

Mit rootrechten
sieht es sehr schlecht aus, ist ja nur ein angemieteter
Serverplatz. Ich wollte halt wissen, ob ich ohne Zugriff auf
/proc meine eigenen Prozesse einsehen kann.
Johannes

Ich weiß nicht, ob das überhaupt geht.

Grüße,
Moritz

Hallo

Mit echo * kann ich schon mal das aktuelle Verzeichnis auslesen (wenn auch ohne Angabe der Rechte) Mit ‚cd / && echo *‘ bekomm ich aber nur einen *. Was mach ich da falsch?

Wird ein Programm beendet, wenn man es löscht?

Hallo,

Wird ein Programm beendet, wenn man es löscht?

Nein.

Mit meinen eingeschränkten Rechten kann ich nicht einmal ls
ausführen.

Na, da wird sich der Admin von dem Ding schon was dabei gedacht haben.

Ich muss mir also erst eins kompilieren und selbst
aufspielen, um die Dateirechte auszulesen.

Und wenn er feststellt, dass Du versuchst, seine Sicherheitsmassnahmen zu umgehen, wird er gar nicht gluecklich sein. Hast Du ein backup?

Ich wollte halt wissen, ob ich ohne Zugriff auf
/proc meine eigenen Prozesse einsehen kann.

Nein. Wozu auch, bei einem webserver? Wenn der Admin halbwegs was drauf hat, sind Deine Prozesse laengst weg.

Gruss vom Frank.

neuer Plan
Ich hätte da noch eine andere Idee. Wenn ich in ein Shellscript am Anfang mit echo $$ die Prozessnummer der Shell ausgebe, dann mit diesem Script einige weitere Prozesse starte und nach Ablauf des Scripts auf diese Prozessnummer einen kill-Befehl anwende, werden dann die anderen gestarteten Prozesse mit beendet?

Habe gerade ein bisschen experimentiert. Offensichtlich sind die Prozesse voneinander unabhängig. kill auf den ersten Prozess beendet die weiteren nicht.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]