web-dev-qa-db-ja.com

LaunchdはOS X YosemiteでJenkinsサーバーを起動しません

OS X 10.9では、Jenkins CIはlaunchdによって自動的に開始されていました。 10.10への更新後、開始されなくなりました。

Jenkinsは、jenkins-ci.orgのOS Xインストーラーを使用してインストールされました。 v1.584を実行していました。この問題が表面化した後、v1.585を使用して再インストールしましたが、役に立ちませんでした。

Org.jenkins-ci.plistで指定されたログファイルに出力はありません。 Syslogには、org.jenkins-ciサービスが「初期化できませんでした:14A389:xpcproxy + 14045 [1344] [1016C726-9ACF-3A24-9C51-A279F5C6B167]:0xd」を示すメッセージがいくつかあります。

ジェンキンスを壊したヨセミテの変更点は何ですか?

ログメッセージの最後の「0xd」はエラーコードですか?

Launchctlを使用して手動でロードして起動しようとしました。コンソールにエラーは出力されませんでしたが、jenkinsはまだ実行されていません。

この問題はジェンキンスに限ったことではありません。 10.10へのアップデート以降も失敗する別の起動アイテムがあります:TrendMicroアンチウイルス。

28
msc

これが決定的な答えです。

  1. Javaがインストールされていることを確認してください。少なくとも私の場合、10.10インストーラーはAppleのJava 6を削除しました。インストールされたJavaは/usr/bin/Java*リンクを満たす必要があります。これらは/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commandsを指します。 Oracle Javaをインストールする場合、この要件を満たすためにJREではなくJDKが必要です。

  2. chown jenkins /var/log/jenkins/jenkins.log

  3. /var/log/jenkinsがjenkinsによって所有され、誰でも検索できることを確認してください(モード755)。すでにこの状態になっている可能性があります。

  4. ファイル/etc/newsyslog.d/jenkins.confを編集して、変更します

    /var/log/jenkins/jenkins.log 644 3 * $D0 J

    /var/log/jenkins/jenkins.log jenkins:jenkins 644 3 * $D0 J

    これにより、夜間のログローテーション中に作成された新しいログファイルがjenkinsによって所有されることが保証されます。これを行わない場合、毎日ステップ2を繰り返す必要があります。

launchdは10秒ごとにジェンキンを起動しようとするため、@ kjonesの回答のステップ4はおそらく不要です。

投稿したログメッセージの最後の「0xd」は、実際にはエラーコードです:Permission Denied。

launchdの変更点/var/log/jenkins/jenkins.logは、Standard{Error,Out}Pathorg.jenkins-ci.plistとして指定されます。私の理論では、Yosemiteがlaunchdの前にファイルを開き、STDOUTとSTDERRを設定してから、プロセスの所有者を「jenkins」に変更し、jenkins-runner.shを実行します。 Yosemiteでは、launchdはプロセスの所有権を変更するまでファイルを開かないようです。そのため、ファイルがルートによって所有されている場合は「許可が拒否されました」。

49
msc

ここに私が取らなければならなかったステップがあります:

  1. AppleのOS X Javaをインストールする

  2. Org.jenkins-ci.plistに実行権限を追加します

    Sudo chmod + x /ライブラリ/LaunchDaemons/org.jenkins-ci.plist

  3. Jenkinsを/ var/log/jenkinsの所有者として設定します

    Sudo chown jenkins/var/log/jenkins

  4. ジェンキンスを開始

    launchctl start /Library/LaunchDaemons/org.jenkins-ci.plist

17
kjones

これは私の終わりに問題を修正しました:

1)最新のJava Java 8の更新を https://www.Java.com/en/download/help/mac_10_10から取得しました.xml

2)Sudo chown jenkins /var/log/jenkins/jenkins.log

3)Sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

2
Mayur Nagekar