4

plist ファイルを作成し、/Library/LaunchDaemons に配置しました。

 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-    1.0.dtd">
<plist version="1.0">
<dict>
 <key>Label</key>
 <string>com.dotcafe.DCDMySQLBackup</string>
 <key>ProgramArguments</key>
 <array>
  <string>/Users/robdando/Webserverbackup/grab.sh</string>
 </array>
 <key>StartInterval</key>
 <integer>900</integer>
</dict>
</plist>

ターミナルから手動でファイルにスクリプトを取得しましたが、必要に応じて15分ごとに実行するようには見えません。スクリプトが呼び出すスクリプトはftpサーバーにログオンし、mysqlデータベースのバックアップを取得します。

事前に乾杯。

4

2 に答える 2

2

ジョブを正しい にロードしましたかlaunchd? ファイルを配置した場所に基づいて、実行する必要があるように見えますsudo launchctl load /Library/LaunchDaemons/com.dotcafe.DCDMySQLBackup.plist。その後、できますsudo launchctl start com.dotcafe.DCDMySQLBackupか?

カレンダーベースのジョブがロードされ、編集launchd時に正常に動作していたにもかかわらず、実行されるべきときに実行されないという問題がありました。launchctl start私は自分のユーザーとして毎日ジョブを実行しようとしていたので、私の解決策はそれをジョブに変えることでしたcron

于 2010-12-07T21:52:14.927 に答える
-1

Programキーを指定していないため、何も実行できません。grab.shおそらく、引数なしで起動したいでしょう。

を指定していないため、権限の問題がある可能性があると思いますUserName。また、.bash_profileプログラムが使用する環境変数をエクスポートすると、launchd での実行時に問題が発生する可能性があります。(grab.sh が相対パスを使用しないと仮定します。) プログラムの起動スクリプトを作成できます。このスクリプトは をロード.bash_profileして実行しgrab.shます。

于 2010-12-07T16:48:02.680 に答える