3

私は今、Mac Os で jenkins 用に別のユーザーを作成し、このユーザーで実行しようとしています。新しいユーザーを作成しました:

# Create the group
sudo dscl . create /Groups/jenkins
sudo dscl . create /Groups/jenkins PrimaryGroupID 300
# Create the user
sudo dscl . create /Users/jenkins
sudo dscl . create /Users/jenkins PrimaryGroupID 300
sudo dscl . create /Users/jenkins UniqueID 300
sudo dscl . create /Users/jenkins UserShell /bin/bash
# Set the users pasword
sudo dscl . passwd /Users/jenkins 123qweASD
# Add the user to the group
sudo dscl . append /Groups/jenkins GroupMembership jenkins

そして、私はjenkinsユーザーとしてjenkinsを実行しようとしています:

sudo su - jenkins -c run_jenkins.sh

エラーが発生しました:

su: no directory

jenkins ユーザーのディレクトリを作成した後:

sudo dscl . -create /Users/jenkins NFSHomeDirectory /Users/jenkins

次のエラーが続きました:

su: unknown login: jenkins

一般質問:

  1. ホームディレクトリなしで、デーモン用の_wwwのようなユーザーを作成するにはどうすればよいですか
  2. この新しいユーザーとしてスクリプトを実行するにはどうすればよいですか?

手伝ってくれてありがとう!

4

3 に答える 3

8

man launchd.plist

 UserName <string>
 This optional key specifies the user to run the job as. This key is only
 applicable when launchd is running as root.

 GroupName <string>
 This optional key specifies the group to run the job as. This key is only
 applicable when launchd is running as root. If UserName is set and Group-
 Name is not, the the group will be set to the default group of the user.
于 2011-11-03T18:52:14.363 に答える
1

の絶対値を使用する必要がある場合がありますrun_jenkins.sh(その を想定/Users/jenkins/run_jenkins.sh):

sudo su - jenkins -c /Users/jenkins/run_jenkins.sh
于 2011-11-02T17:49:57.983 に答える
0

su -通常のログインをエミュレートするため、アカウントを通常のログイン用に設定する必要があります(シェルとホームディレクトリを定義するなど)。何らかの理由でこれが必要な場合を除いて、sudoに実行させてください。

sudo -u jenkins run_jenkins.sh
于 2011-11-02T19:37:39.767 に答える