2011-11-18 20 views
6

Windowsでは、サービスとしてインストールできるアプリケーションを作成することができます。このタイプのアプリケーションはWindowsサービスと呼ばれます。 Mac OS Xでのサービスと同等のものは何ですか?それらはどのように実装されており、どこでそれについて学び始めるのですか?Mac OS X用のWindowsサービスを作成するには?

タスクを自動的に実行し、必要に応じて開始および停止するサービスを作成したいと考えています。

+0

Macは修正されたbsdカーネルを実行していました。彼らはあなたが使うことができるcronのようなツールを持っていますか? http:// benr75。com/pages/using_crontab_mac_os_x_unix_linux – Chris

+2

実際には 'cron'を使うことができますが、その使用は' launchd'のために推奨されなくなりました。 –

+0

OK、私はlaunchdを読んで、正しい解決策であるようです。 thx – willyMon

答えて

9

その他OS X上グーグルクロームの自動更新メカニズム

あなたが始めるのに役立つためのリンクが含まれています。

  • ~/Library/LaunchAgents:ユーザーが提供するユーザごとのエージェントあなたは5つのいずれかの場所に配置されているlaunchd設定ファイルを作成する必要があります。

  • /Library/LaunchAgents:管理者が提供するユーザー単位のエージェント。

  • /Library/LaunchDaemons: によって提供されるシステム全体のデーモン。

  • /System/Library/LaunchAgents:MacのOS Xによって提供さごとのユーザーエージェントが

  • /System/Library/LaunchDaemons:システム全体のデーモンはMac OS X. によって提供さ

デーモンですすべてのクライアントに対して1つのインスタンスが存在するシステム全体のサービス。 エージェントは、ユーザーごとに実行されるサービスです。

Configuration filesは、構文が単純であるproperty list.

の形態であるが、それはそれは間違って取得するのは簡単です。 man pageが好きでない場合、Wikipedia articleにはオプションの概要がよく表示されています。

基本的には、実際のコマンドラインツール(サービス)をどこかにインストールしてから、launchd構成plistを作成し、上記のいずれかの場所に置きます。 launchdが起動時または定期的に、またはさまざまなアクション(フォルダの内容の変更など)に応じてサービスを実行するように、plistを設定できます。

hereの良い記事があります。

+0

/Library内の項目(単一のユーザーの〜/ Libraryではなく)は、ログインしたすべてのユーザーに対して実行されますが、正しいですか? –

+0

はい、そうです。 –

+0

起動時にlaunchdを使ってこのアプリケーションをrootとして実行する方法はありますか? –

4

あなたはlaunchdを見てください。あなたはそれで気の利いたことをたくさんすることができます。 たとえば、steamは、steamが削除されるたびにsteam_deleteヘルパーツールを実行するようにlaunchdに指示しました。このヘルパーツールは、システムから蒸気を完全にアンインストールするのに役立ちます。あなたはlaunchdと友達になるために必要Devdaily launchd examples

+0

ありがとう。 – willyMon

関連する問題