%20%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%E3%81%8B%3F.png)
launchd の経験はありませんが、Tor と Polipo を 24 時間ごとに自動的に再起動するサービスとして設定したいと考えています。どうすればいいでしょうか?
答え1
Tor の場合、この launchd plist を使用して、システムの起動時に開始することができます。(ユーザーがログインする必要がないため、24 時間 365 日稼働するブリッジまたはノードを実行しているサーバーやユーザーに最適です。)
このファイルを保存します/Library/LaunchDaemons/org.torproject.tor.plist
(そのためには root 権限が必要なので を使用しますsudo
)。
<?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>Disabled</key>
<false/>
<key>Label</key>
<string>org.torproject.tor</string>
<key>ProgramArguments</key>
<array>
<string>/path/to/your/binary/of/tor</string>
<string>-f</string>
<string>/path/to/your/torrc</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>OnDemand</key>
<false/>
<key>UserName</key>
<string>userNameToRunTorUnder-UsuallyTorOrYourOwnUsershortname</string>
<key>GroupName</key>
<string>daemon</string>
</dict>
</plist>
次の情報を、ご使用のシステムに一致するものに置き換えてください。
/path/to/your/binary/of/tor
これは通常、/usr/local/bin/tor
tor をソースからインストールした場合、または/Applications/Vidalia.app/Contents/MacOS/tor
Vidalia の tor バイナリを使用する場合に発生します。または、which tor
システム上でそれを探します。
/path/to/your/torrc
別のユーザーとしてtorを実行している場合は、.torrc
そのユーザーのホームディレクトリにあるはずです。絶対パスこのファイルに追加します。たとえば、ユーザー名がトルそして、/Users/tor
そのパスは/Users/tor/.torrc
userNameToRunTorUnder-UsuallyTorOrYourOwnUsershortname
これは実行時のユーザー名ですtor
。別のユーザー(おそらくトル) の場合はそれを使用しますが、それ以外の場合は他のユーザー名を使用できます。これが自分だけの場合、独自のユーザー名にしてください。(つまり、ホーム ディレクトリの名前です。)
launchd アイテムの権限が launchd の要件に従って安全であることを確認します。
sudo chown root:wheel /Library/LaunchDaemons/org.torproject.tor.plist
sudo chmod 755 /Library/LaunchDaemons/org.torproject.tor.plist
そしてそれを起動します
sudo launchctl load -w /Library/LaunchDaemons/org.torproject.tor.plist
非常によく似たアイテムを使ってpolipoを起動することができます。このLaunchdアイテムを次のように保存します。/Library/LaunchDaemons/fr.jussieu.pps.polipo.plist
<?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>Disabled</key>
<false/>
<key>Label</key>
<string>fr.jussieu.pps.polipo</string>
<key>ProgramArguments</key>
<array>
<string>/path/to/your/binary/of/polipo</string>
<string>-c</string>
<string>/path/to/your/polipo.conf</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>OnDemand</key>
<false/>
<key>UserName</key>
<string>userNameToRunPolipoUnder-UsuallyPolipoOrYourOwnUsershortname</string>
<key>GroupName</key>
<string>daemon</string>
</dict>
</plist>
再度、以下の情報をシステムに合ったものに置き換えてください。
/path/to/your/binary/of/polipo
Vidalia のものを使用する場合は、/Applications/Vidalia.app/Contents/MacOS/polipo を使用します。それ以外の場合は、 で polipo バイナリがどこにあるかを確認しますwhich polipo
。(たとえば、MacPorts はこれを にインストールします/opt/local/bin/polipo
)
/path/to/your/polipo.conf
繰り返しになりますが、Vidaliaが提供するファイルを使用したい場合や/Applications/Vidalia.app/Contents/Resources/polipo.conf
、絶対パスカスタム構成に追加します。
userNameToRunPolipoUnder-UsuallyPolipoOrYourOwnUsershortname
これは、実行時と同じユーザー名にすることもできますtor
が、別のユーザー名にすることもできます。私はデーモンを分離することを好みます。
再度、launchd アイテムの権限が launchd の要件に従って安全であることを確認します。
sudo chown root:wheel /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist
sudo chmod 755 /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist
そしてそれを起動します
sudo launchctl load -w /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist
注意: この設定ではない要求に応じて、デーモンを 24 時間ごとに再起動します。 の安定性に問題が生じたことがないので、必要ないと思いますtor
。(私は数年間 Mac OS X でノードを実行しています。)
tor
するないシステムのスリープをまったく処理しません。したがって、Mac をスリープ状態にした場合、tor
回路を確実に再構築するには再起動する必要があります。
この説明は、とにかく起動して実行中の Mac を対象としています。これをユーザーとして実行し、root
権限を必要とせずにグラフィカルにログインした場合にのみ実行することができます。
そうなはずです。
tor
PS:ブロックや検閲が行われる場所へのアクセス、オンラインでの匿名性とプライバシーの保護を目的としていることに留意してください。BitTorrent を実行するのはなぜtor
良い考えではないのか。
答え2
リンゴン廃止されましたが、まだ機能しており、経験がない場合には launchd を管理するのに最適なツールです。