瀏覽代碼

Mediagoblin init script

Bob Mottram 10 年之前
父節點
當前提交
d9f329b2be
共有 1 個檔案被更改,包括 66 行新增0 行删除
  1. 66
    0
      install-freedombone.sh

+ 66
- 0
install-freedombone.sh 查看文件

@@ -2836,7 +2836,73 @@ function install_mediagoblin {
2836 2836
       echo '[[mediagoblin.media_types.stl]]' >> /srv/$MEDIAGOBLIN_DOMAIN_NAME/mediagoblin/mediagoblin_local.ini
2837 2837
   fi
2838 2838
 
2839
+  su -c "cd /srv/$MEDIAGOBLIN_DOMAIN_NAME/mediagoblin/mediagoblin; ./bin/pip install scikits.audiolab" - mediagoblin
2840
+  su -c "cd /srv/$MEDIAGOBLIN_DOMAIN_NAME/mediagoblin/mediagoblin; ./bin/gmg dbupdate" - mediagoblin
2841
+
2842
+  # create an init script
2843
+  echo '#!/bin/bash' > /etc/init.d/mediagoblin
2844
+  echo '# /etc/init.d/mediagoblin' >> /etc/init.d/mediagoblin
2845
+  echo '' >> /etc/init.d/mediagoblin
2846
+  echo '### BEGIN INIT INFO' >> /etc/init.d/mediagoblin
2847
+  echo '# Provides:          mediagoblin' >> /etc/init.d/mediagoblin
2848
+  echo '# Required-Start:    $remote_fs $syslog' >> /etc/init.d/mediagoblin
2849
+  echo '# Required-Stop:     $remote_fs $syslog' >> /etc/init.d/mediagoblin
2850
+  echo '# Default-Start:     2 3 4 5' >> /etc/init.d/mediagoblin
2851
+  echo '# Default-Stop:      0 1 6' >> /etc/init.d/mediagoblin
2852
+  echo '# Short-Description: starts mediagoblin' >> /etc/init.d/mediagoblin
2853
+  echo '# Description:       Other methods may work, but I found this the easiest' >> /etc/init.d/mediagoblin
2854
+  echo '### END INIT INFO' >> /etc/init.d/mediagoblin
2855
+  echo '' >> /etc/init.d/mediagoblin
2856
+  echo '# Author: Bob Mottram <bob@robotics.uk.to>' >> /etc/init.d/mediagoblin
2857
+  echo '' >> /etc/init.d/mediagoblin
2858
+  echo '#Settings' >> /etc/init.d/mediagoblin
2859
+  echo "SERVICE='mediagoblin'" >> /etc/init.d/mediagoblin
2860
+  echo "LOGFILE='/srv/$MEDIAGOBLIN_DOMAIN_NAME/mediagoblin.log'" >> /etc/init.d/mediagoblin
2861
+  echo 'COMMAND="./lazyserver.sh > $LOGFILE"' >> /etc/init.d/mediagoblin
2862
+  echo "USERNAME='mediagoblin'" >> /etc/init.d/mediagoblin
2863
+  echo 'NICELEVEL=15 # from 0-19 the bigger the number, the less the impact on system resources' >> /etc/init.d/mediagoblin
2864
+  echo 'HISTORY=1024' >> /etc/init.d/mediagoblin
2865
+  echo "MG_LOCATION='/srv/$MEDIAGOBLIN_DOMAIN_NAME/mediagoblin'" >> /etc/init.d/mediagoblin
2866
+  echo 'INVOCATION="nice -n ${NICELEVEL} ${COMMAND}"' >> /etc/init.d/mediagoblin
2867
+  echo "PATH='/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/core_perl:/sbin:/usr/sbin:/bin'" >> /etc/init.d/mediagoblin
2868
+  echo '' >> /etc/init.d/mediagoblin
2869
+  echo 'mg_start() {' >> /etc/init.d/mediagoblin
2870
+  echo '  echo "Starting $SERVICE..."' >> /etc/init.d/mediagoblin
2871
+  echo '  cd ${MG_LOCATION}' >> /etc/init.d/mediagoblin
2872
+  echo '  su --command "screen -h ${HISTORY} -dmS ${SERVICE} ${INVOCATION}" $USERNAME' >> /etc/init.d/mediagoblin
2873
+  echo '}' >> /etc/init.d/mediagoblin
2874
+  echo '' >> /etc/init.d/mediagoblin
2875
+  echo 'mg_stop() {' >> /etc/init.d/mediagoblin
2876
+  echo '  echo "Stopping $SERVICE"' >> /etc/init.d/mediagoblin
2877
+
2878
+  echo '  su --command "screen -p 0 -S ${SERVICE} -X stuff "'"'"^C"'"'"" $USERNAME' >> /etc/init.d/mediagoblin
2879
+  echo '}' >> /etc/init.d/mediagoblin
2880
+  echo '' >> /etc/init.d/mediagoblin
2881
+  echo '#Start-Stop here' >> /etc/init.d/mediagoblin
2882
+  echo 'case "$1" in' >> /etc/init.d/mediagoblin
2883
+  echo '  start)' >> /etc/init.d/mediagoblin
2884
+  echo '    mg_start' >> /etc/init.d/mediagoblin
2885
+  echo '    ;;' >> /etc/init.d/mediagoblin
2886
+  echo '  stop)' >> /etc/init.d/mediagoblin
2887
+  echo '    mg_stop' >> /etc/init.d/mediagoblin
2888
+  echo '    ;;' >> /etc/init.d/mediagoblin
2889
+  echo '  restart)' >> /etc/init.d/mediagoblin
2890
+  echo '    mg_stop' >> /etc/init.d/mediagoblin
2891
+  echo '    sleep 10s' >> /etc/init.d/mediagoblin
2892
+  echo '    mg_start' >> /etc/init.d/mediagoblin
2893
+  echo '    ;;' >> /etc/init.d/mediagoblin
2894
+  echo '    *)' >> /etc/init.d/mediagoblin
2895
+  echo '  echo "Usage: $0 {start|stop|restart}"' >> /etc/init.d/mediagoblin
2896
+  echo '  exit 1' >> /etc/init.d/mediagoblin
2897
+  echo '  ;;' >> /etc/init.d/mediagoblin
2898
+  echo 'esac' >> /etc/init.d/mediagoblin
2899
+  echo '' >> /etc/init.d/mediagoblin
2900
+  echo 'exit 0' >> /etc/init.d/mediagoblin
2901
+
2839 2902
   /etc/init.d/nginx restart
2903
+  chmod +x /etc/init.d/mediagoblin
2904
+  update-rc.d mediagoblin defaults
2905
+  service mediagoblin start
2840 2906
 
2841 2907
   echo 'install_mediagoblin' >> $COMPLETION_FILE
2842 2908
 }