welche Berechtigungen sollten jenkins haben, die zum ausführen von shell-Befehlen, ohne unsicher?

Ich habe ein Skript (test.sh) auf einem lokalen server, der funktioniert gut, wenn Sie ausgeführt in einem terminal. Das Skript entfernt ein Verzeichnis, und erstellt ein Verzeichnis local. Es stellt dann eine Verbindung zu einem remote-server mit "ssh -i $private_key .." und kopiert eine Datei gibt.

Wenn ich das Skript in jenkins mit

sh test.sh

es funktioniert nicht. Ich bekomme den folgenden Fehler:

rm: .. Permission denied
mkdir: .. Permission denied
Warning: Identity file /.ssh/private_key not accessible: Permission denied.

Jenkins ist auf dem gleichen server wie das script.

Ich sehe, Jenkins ist ein anderer Benutzer und kann nicht alles, was ich mache als root, wie kann ich die Berechtigungen setzen zu können, ohne alle Sicherheit. Insbesondere bei den private_key, es wäre dumm, um die Berechtigungen zu einfach - es ist derzeit auf 600 (lese-und Schreibrechte für den Eigentümer) und der Besitzer ist root.

  • Versuchen Sie zu verwenden Schlüssel installiert haben, um anderen Benutzern .ssh-Verzeichnis (nicht die, die Jenkins läuft)? Das ist die falsche bit dann.
InformationsquelleAutor user1338413 | 2013-01-04
Schreibe einen Kommentar