Advertisement
Guest User

Restart Server.sh

a guest
Jan 15th, 2013
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 7.85 KB | None | 0 0
  1. PATH=/home/newlanders/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/newlanders/bin:/usr/local/java/jdk1.7.0_07/bin:/home/newlanders/bin:/usr/local/java/jre1.7.0_07/bin
  2. #!/bin/bash
  3. touch /home/newlanders/logs/$(date +%Y-%m-%d).log
  4. echo $(date +%Y/%m/%d) $(date +%H:%M) wkr script >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  5. PIDS=`ps cax | grep java | grep -o '^[ ]*[0-9]*'`
  6. if [ ! -z "$PIDS" ];
  7. then
  8.     echo $(date +%Y/%m/%d) $(date +%H:%M) restart warning 1 >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  9.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  10.     screen -X -S mcserver stuff "cbutd plugin $(echo -ne '\r')"
  11.     screen -X -S mcserver stuff "say Restarting in 5 minutes! $(echo '\r')"
  12.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  13.     sleep 1m
  14. fi
  15. PIDS=`ps cax | grep java | grep -o '^[ ]*[0-9]*'`
  16. if [ ! -z "$PIDS" ];
  17. then
  18.     echo $(date +%Y/%m/%d) $(date +%H:%M) restart warning 2 >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  19.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  20.     screen -X -S mcserver stuff "say Restarting in 4 minutes! $(echo '\r')"
  21.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  22.     sleep 1m
  23. fi
  24. PIDS=`ps cax | grep java | grep -o '^[ ]*[0-9]*'`
  25. if [ ! -z "$PIDS" ];
  26. then
  27.     echo $(date +%Y/%m/%d) $(date +%H:%M) restart warning 3 >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  28.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  29.     screen -X -S mcserver stuff "say Restarting in 3 minutes! $(echo '\r')"
  30.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  31.     sleep 1m
  32. fi
  33. PIDS=`ps cax | grep java | grep -o '^[ ]*[0-9]*'`
  34. if [ ! -z "$PIDS" ];
  35. then
  36.     echo $(date +%Y/%m/%d) $(date +%H:%M) restart warning 4 >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  37.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  38.     screen -X -S mcserver stuff "say Restarting in 2 minutes! $(echo '\r')"
  39.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  40.     sleep 1m
  41. fi
  42. PIDS=`ps cax | grep java | grep -o '^[ ]*[0-9]*'`
  43. if [ ! -z "$PIDS" ];
  44. then
  45.     echo $(date +%Y/%m/%d) $(date +%H:%M) restart warning 5 >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  46.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  47.     screen -X -S mcserver stuff "say Restarting in 1 minutes! $(echo '\r')"
  48.     screen -X -S mcserver stuff " $(echo -ne '\r')"
  49.     sleep 1m
  50. fi
  51. PIDS=`ps cax | grep java | grep -o '^[ ]*[0-9]*'`
  52. if [ ! -z "$PIDS" ];
  53. then
  54.     echo $(date +%Y/%m/%d) $(date +%H:%M) stop signal >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  55.     screen -X -S mcserver stuff "$(echo -ne '\r')"
  56.     screen -X -S mcserver stuff "kickall Stoping Server For Daily Restart, Will be back online in around 20 secconds! $(echo '\r')"
  57.     screen -X -S mcserver stuff "$(echo -ne '\r')"
  58.     screen -X -S mcserver stuff "stop $(echo -ne '\r')"
  59.     IS=0
  60.     TIMEOUTDATE=$(date +1%Y%j%H%M%S)
  61.     until [ $IS -gt 1 ]; do
  62.     echo $(date +%Y/%m/%d) $(date +%H:%M) waiting >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  63.     PIDS=`ps cax | grep java | grep -o '^[ ]*[0-9]*'`
  64.     if [ ! -z "$PIDS" ];
  65.     then
  66.         if [ $(date +1%Y%j%H%M%S) -gt $(($TIMEOUTDATE+100)) ];
  67.         then
  68.             echo $(date +%Y/%m/%d) $(date +%H:%M) timeout >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  69.             killall -9 java
  70.             rm /home/newlanders/server/server.log.lck
  71.         fi
  72.     else
  73.         echo $(date +%Y/%m/%d) $(date +%H:%M) done waiting >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  74.         IS=2
  75.     fi
  76.     sleep 1s
  77.     done
  78. fi
  79. killall screen
  80. screen -wipe
  81. numb1=10
  82. done1=0
  83. until [ $done1=1 ];
  84. do
  85.     if [ -a /home/newlanders/server/logarchives/$(date +%Y-%m-%d)-$numb1.log ];
  86.     then
  87.         numb1=$(($numb1+1))
  88.     else
  89.         done1=1
  90.     fi
  91. done
  92. cp /home/newlanders/server/server.log /home/newlanders/server/logarchives/$(date +%Y-%m-%d)-$numb1.log
  93. numbno1=10
  94. doneno1=0
  95. until [ $doneno1=1 ];
  96. do
  97.     if [ -a /home/newlanders/vserver/logarchives/$(date +%Y-%m-%d)-$numbno1.log ];
  98.     then
  99.         numbno1=$(($numbno1+1))
  100.     else
  101.         doneno1=1
  102.     fi
  103. done
  104. cp /home/newlanders/vserver/server.log /home/newlanders/vserver/logarchives/$(date +%Y-%m-%d)-$numbno1.log
  105. numb2=10
  106. done2=0
  107. until [ $done2=1 ]; do
  108.     if [ -a /home/newlanders/server/nocolorlogarchives/$(date +%Y-%m-%d)-$numb2.log ];
  109.     then
  110.         numb2=$(($numb2+1))
  111.     else
  112.         done2=1
  113.     fi
  114. done
  115. mv /home/newlanders/server/server.log /home/newlanders/server/nocolorlogarchives/$(date +%Y-%m-%d)-$numb2.log
  116. for remove in 's/\[37;1m//g' 's/\[31;22m//g' 's/\[34;22m//g' 's/\[32;22m//g' 's/\[36;22m//g' 's/\[35;22m//g' 's/\[33;22m//g' 's/\[37;22m//g' 's/\[30;1m//g' 's/\[30;22m//g' 's/\[32;1m//g' 's/\[36;1m//g' 's/\[31;1m//g' 's/\[35;1m//g' 's/\[33;1m//g' 's/\[37;1m//g' 's/\[0;39m//g' 's/\[34;1m//g' 's/\[5m//g' 's/\[9m//g' 's/\[3m//g' 's/\[21m//g' 's/\[4m//g' 's/\[m//g' 's/\[33m//g' 's/\[0m//g' 's/§a//g' 's/§b//g' 's/§c//g' 's/§d//g' 's/§e//g' 's/§f//g' 's/§1//g' 's/§2//g' 's/§3//g' 's/§4//g' 's/§5//g' 's/§6//g' 's/§7//g' 's/§8//g' 's/§9//g' 's/§0//g' 's/§r//g' 's/§l//g' 's/§n//g' 's/§o//g' 's/§k//g' 's/§m//g' 's/Â//g' '/Unknown\ command. Type "help" for help./ d' '/CH: Running original command from a MCCommandSender ----> \/autoc1 -ne/ d' '/CH: Running original command from a MCCommandSender ----> \/autoc2 -ne/ d' '/The time was set to 06:00 or 6:00AM or 0ticks in: Flat/ d' '/The time was set to 06:00 or 6:00AM or 0ticks in: Creative/ d' '/\[INFO\] Connection reset/ d'
  117. do
  118. sed -i "$remove" /home/newlanders/server/nocolorlogarchives/$(date +%Y-%m-%d)-$numb2.log
  119. done
  120. if [ -d /home/newlanders/server/bukkitupdate/plugins/changelog/ ];
  121. then
  122.     rm -r /home/newlanders/server/bukkitupdate/plugins/changelog/
  123. fi
  124. touch /home/newlanders/logs/$(date +%Y-%m-%d).log
  125. echo $(date +%Y/%m/%d) $(date +%H:%M) Unzipping >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  126. cd /home/newlanders/server/bukkitupdate/plugins/
  127. for f in worldedit*.zip; do continue; done
  128. if [ -f "$f" ]
  129. then
  130.     unzip "$f" WorldEdit.jar >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  131. fi
  132. for f in worldguard*.zip; do continue; done
  133. if [ -f "$f" ]
  134. then
  135.     unzip "$f" WorldGuard.jar >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  136. fi
  137. for f in Essentials*.zip; do continue; done
  138. if [ -f "$f" ]
  139. then
  140.     unzip "$f" Essentials.jar >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  141.     unzip "$f" EssentialsChat.jar >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  142.     unzip "$f" EssentialsSpawn.jar >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  143. fi
  144. for uu in /home/newlanders/server/bukkitupdate/plugins/*.zip
  145. do
  146.     if [ -f $uu ]
  147.     then
  148.         rm -v $uu >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  149.     fi
  150. done
  151. for pluginmove in /home/newlanders/server/bukkitupdate/plugins/*.jar
  152. do
  153.     mv $pluginmove /home/newlanders/server/plugins/
  154.     echo $(date +%Y/%m/%d) $(date +%H:%M) auto-update-moving $pluginmove >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  155. done
  156. for bukkitmove in /home/newlanders/server/bukkitupdate/*.jar
  157. do
  158.     mv $bukkitmove /home/newlanders/server/
  159.     echo $(date +%Y/%m/%d) $(date +%H:%M) update move $bukkitmove >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  160. done
  161. for i in /home/newlanders/server/plugins/Essentials/userdata/*
  162. do
  163. grep "ipaddress" $i -i -c | grep 0 -q && mv -v $i /home/newlanders/server/plugins/Essentials/npcdata/ >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  164. done
  165. numb0=10
  166. done0=0
  167. until [ $done0=1 ];
  168. do
  169.     if [ -a /home/newlanders/server/plugins/NoCheatPlus/$(date +nocheatplus-%Y-%m-%d)-$numb0.log ];
  170.     then
  171.         numb0=$(($numb0+1))
  172.     else
  173.         done0=1
  174.     fi
  175. done
  176. mv /home/newlanders/server/plugins/NoCheatPlus/nocheatplus.log /home/newlanders/server/plugins/NoCheatPlus/$(date +nocheatplus-%Y-%m-%d)-$numb0.log
  177. echo $(date +%Y/%m/%d) $(date +%H:%M) starting >> /home/newlanders/logs/$(date +%Y-%m-%d).log
  178. screen -dmS mcserver /home/newlanders/server/start.sh
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement