あなたの習慣について教えてください!!

Mac OSXでログアウトしても、プログラムをプロセスとして動作させるにはどうやったらいいでしょうか?

nohupコマンド等で実現可能なのでしょうか?
それとも何かスクリプトを組まないといけないのでしょうか?

よろしくお願いいたします。

A 回答 (3件)

#2です。

一度挫折しましたがLingonをダウンローして使ってみました。

私の場合は起動ディスクのアクセス権修復を定期的に実行させるのとddns(動的なIPにドメインを割り振るサービス)を必要に応じて実行させるという作業をCronniX(cronのGUI)で設定していましたが、これをLingonを使って自分用のLaunchAgentに置き換えることができました。

Lingonで以下の手順でユーザー定義のデーモン(常駐プログラム)を設定できるようです。常駐プログラムですからログアウトしていても動くはずです。
1.Lingonを起動してツールバーからAssistantを選択
2.Keep an application/script always runnningを選択しNextボタンを押す
3.ラベル欄にLaunchdのプロパティリスト名を入力
4.Launch only when I log inのチェックボックスをオフにする
5.Must run as rootのチェックボックスをオンにしてNextボタンを押す
6.Applictation/Script欄に常駐させたいアプリケーションまたはスクリプトのパスを入力(Pathボタンで設定可能)しCreatボタンを押す
7.ユーザー認証ダイアログが表示されるのでパスワードを入力

以上で基本的なユーザー定義のデーモン用プロパティリストが作成できます。詳細な調整はツールバーのEditでできますが、そのためには#2で紹介したManual Page For launchd.plist(5)をある程度理解する必要があると思われます。
    • good
    • 0

私は挫折しました(苦笑)が、Mac OS X 10.4以降であればLaunchdというのがありまして、Launch Agentというのを作るとできるらしいです。

以下全て英語のページです。

An Introduction to Tiger Terminal, Part 5
http://www.macdevcenter.com/pub/a/mac/2005/11/15 …
上記はLaunchdについて分かりやすく説明しています。

LingonというソフトでLaunchdを制御できるそうです。
Lingon by Peter Borg
http://lingon.sourceforge.net/

さらに詳細をお知りになりたければAppleのLaunchdに関するデベロッパ向けの文書があります。
Getting Started with launchd
http://developer.apple.com/macosx/launchd.html

Manual Page For launchd.plist(5)
http://developer.apple.com/documentation/Darwin/ …

結論としてスクリプトとプロパティリストを作る必要があるということですね。
    • good
    • 0

コマンドのことはわかりませんが、「ファーストユーザスイッチ」機能で実現できます。

Mac OS X 10.3以降の機能です。

(1) システム環境設定>アカウントで、錠前アイコンをクリックして、設定変更可能モードにします。
(2) 対象のユーザを選択して「ログインオプション」をクリックします。
(3) 「ファーストユーザスイッチを有効にする」にチェックを入れます。

正しくは、「グアウトしても、プログラムをプロセスとして動作させる」状態にはなっていません。同時に複数のユーザがログイン状態になっていて、画面を占有しているユーザを切り替えるという手法をとっています。Windows XPのマルチユーザと同じ手法と考えていいでしょう。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!