« 2011年2月 | メイン | 2011年6月 »

2011年4月 アーカイブ

2011年2月 |2011年4月| 2011年6月

2011年4月 5日

攻強皇國機甲

公共広告機構...立派になったねー

OVA版ねw

2011年4月12日

cronからlaunchへの変更

ダイナミックDNSへのIP監視と登録用のスクリプトを定期的に走らせているのですが、OSX 10.6ではcronが使えなくなり、変わりにlaunchを使うようにななったそうです。

スクリプトは、家サーバのIPアドレス更新サンプルスクリプトを使用していました。
このスクリプトを、/usr/local/sbin/ddsn_ip/ddns_ip.plとして設置して実行権を出しておきます(それと、tmpディレクトリを作成しておきます)。

sudo perl /usr/local/sbin/ddsn_ip/ddns_ip.pl

こんな感じで実行するスクリプトです。 これをlaunchで一時間に一回走らせて、IPに変更があったら家サーバに告るわけです。

launchにddns_ip.plを走らせるための設定ファイルをXMLで書きます。

<?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>ddns.ip.set</string>
 
 <key>ProgramArguments</key>
    <array>
      <string>/usr/bin/perl</string>
      <string>/usr/local/sbin/ddsn_ip/ddns_ip.pl</string>
    </array>

  <key>StartInterval</key>
    <integer>3600</integer>
</dict>
</plist>

よくわからないけど、こんな感じ。

Labelで指定したddns.plがlaunch内で呼び出すときの呼び名になります。
ProgramArgumentsで呼び出すプログラムとその引数を指定します。
今回はperlを呼び出して、その引数にスクリプトのパス(/usr/local/sbin/ddsn_ip/ddns_ip.pl)を指定します。
StartInterval、3600秒ごとにスクリプトが実行されます。

このXMLを/System/Library/LaunchAgents/ddns_ip.plistとして設置します。 所有者をrootに変更しておきます。

sudo chown root:wheel ddns_ip.plist
-rw-r--r-- 1 root wheel ddns_ip.plist

最後に、launchedに登録して起動させます。

sudo launchctl load /System/Library/LaunchAgents/ddns_ip.plist
sudo launchctl start hddns.ip.set

loadの時はファイル名を、startの時は、ラベル名を指定します。

登録されているラベルの一覧を取得するには

sudo launchctl list

止めるには

sudo launchctl unload /System/Library/LaunchAgents/ddns_ip.plist

2011年2月 |2011年4月| 2011年6月

カテゴリー

PAMO Menu
イラスト 綾波レイ MIWO 独白 掲示板