カテゴリ・トーク:EIMS

提供:maruko2 Note.
移動: 案内, 検索

eimsd 自動起動スクリプト

eimsd を /Applications/EIMS3 に配置した場合。

/
|-- Applications
|   |-- EIMS3
|       |-- eimsd           ← eimsd バイナリ
|       |-- eimsd.sh        ← eimsd 起動&停止シェルスクリプト(作成する)
|       |-- eimsd.log       ← eimsd コンソールログ(自動で作成される。)
|       |-- eimsd.pid       ← eimsd の PID ファイル(自動で作成される。)
|       `-- その他のEIMSのファイル
|-- Library
|   |-- StartupItems
|       |-- eimsd
|           |-- eimsd                   ← eimsd 用 Startup Item(作成する)
|           `-- StartupParameters.plist ← eimsd 用 Startup Item(作成する)
/Applications/EIMS3/eimsd.sh
#!/bin/sh
eimsd_dir="/Applications/EIMS3"
 
START() {
  $eimsd_dir/eimsd >> $eimsd_dir/eimsd.log &
  echo $! > $eimsd_dir/eimsd.pid
}
 
STOP() {
  kill -TERM `cat $eimsd_dir/eimsd.pid`
  rm $eimsd_dir/eimsd.pid
}
 
case $1 in
  start  ) START ;;
  stop   ) STOP ;;
  restart) STOP && START ;;
  *      ) echo "Usage: sudo $0 {start|stop|restart}"
esac
/Library/StartupItems/eimsd/eimsd
#!/bin/sh
eimsd_dir="/Applications/EIMS3"
 
. /etc/rc.common
 
StartService() {
  if [ "${eimsd:=-NO-}" = "-YES-" ]; then
    echo "Starting eimsd"
    $eimsd_dir/eimsd.sh start
  fi
}
 
StopService() {
  echo "Stopping eimsd"
  $eimsd_dir/eimsd.sh stop
}
 
RestartService() {
  if [ "${eimsd:=-NO-}" = "-YES-" ]; then
    echo "Restarting eimsd"
    $eimsd_dir/eimsd.sh restart
  fi
}
 
RunService $1
/Library/StartupItems/eimsd/StartupParameters.plist
{
  Description     = "eimsd";
  OrderPreference = "Last";
  Messages =
  {
    start = "Starting eimsd";
    stop  = "Stopping eimsd";
  };
}

作成したファイルのパーミッション変更

chmod a+x /Applications/EIMS3/eimsd.sh
sudo chown -R root:wheel /Library/StartupItems/eimsd
sudo chmod -R 755 /Library/StartupItems/eimsd

/etc/hostconfig に eimsd=-YES- の行を追加。

これで、OS 起動時に eimsd が自動起動するようになる。

LINEで送る このエントリーをはてなブックマークに追加
個人用ツール
名前空間
変種
表示
操作
案内
ツールボックス

注目のページ

このサイトのはてなブックマーク数