Advertisement
Guest User

Untitled

a guest
Jan 25th, 2019
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.63 KB | None | 0 0
  1. #!/bin/sh
  2. ### BEGIN INIT INFO
  3. # Provides:
  4. # Required-Start: $remote_fs $syslog
  5. # Required-Stop: $remote_fs $syslog
  6. # Default-Start: 2 3 4 5
  7. # Default-Stop: 0 1 6
  8. # Short-Description: Start daemon at boot time
  9. # Description: Enable service provided by daemon.
  10. ### END INIT INFO
  11.  
  12. user="atlas"
  13. backupdir="/home/atlas/server/backup"
  14.  
  15. name=`basename $0`
  16. pid_file="/var/run/$name.pid"
  17. stdout_log="/home/atlas/server/logs/$name.log"
  18. stderr_log="/home/atlas/server/logs/$name.err"
  19.  
  20. get_pid() {
  21. cat "$pid_file"
  22. }
  23.  
  24. is_running() {
  25. [ -f "$pid_file" ] && ps `get_pid` > /dev/null 2>&1
  26. }
  27.  
  28. do_start() {
  29.  
  30. screen -dmS A4 /home/atlas/server/ShooterGame/Binaries/Linux/ShooterGameServer Ocean?ServerX=0?ServerY=3?listen?AltSaveDirectoryName=A4?ServerAdminPassword=MvXAdminsee?MaxPlayers=45?ReservedPlayerSlots=10?Port=6255?QueryPort=58255?RCONPort=58330?SeamlessIP=89.163.145.180 -log -server -BattlEye > /dev/null
  31. screen -dmS B3 /home/atlas/server/ShooterGame/Binaries/Linux/ShooterGameServer Ocean?ServerX=1?ServerY=2?listen?AltSaveDirectoryName=B3?ServerAdminPassword=MvXAdminsee?MaxPlayers=45?ReservedPlayerSlots=10?Port=6155?QueryPort=58155?SeamlessIP=89.163.145.180 -log -server -BattlEye > /dev/null
  32. screen -dmS C2 /home/atlas/server/ShooterGame/Binaries/Linux/ShooterGameServer Ocean?ServerX=2?ServerY=1?listen?AltSaveDirectoryName=C2?ServerAdminPassword=MvXAdminsee?MaxPlayers=45?ReservedPlayerSlots=10?Port=6055?QueryPort=58055?SeamlessIP=89.163.145.180 -log -server -BattlEye > /dev/null
  33. screen -dmS D1 /home/atlas/server/ShooterGame/Binaries/Linux/ShooterGameServer Ocean?ServerX=3?ServerY=0?listen?AltSaveDirectoryName=D1?ServerAdminPassword=MvXAdminsee?MaxPlayers=45?ReservedPlayerSlots=10?Port=5955?QueryPort=57955?SeamlessIP=89.163.145.180 -log -server -BattlEye > /dev/null
  34. }
  35.  
  36. do_stop() {
  37.  
  38. screen -X -S A4 quit
  39. screen -X -S B3 quit
  40. screen -X -S C2 quit
  41. screen -X -S D1 quit
  42. }
  43.  
  44.  
  45.  
  46. su ${user}
  47.  
  48. case "$1" in
  49. start)
  50. if is_running; then
  51. echo "Already started"
  52. else
  53. echo "Starting $name"
  54. do_start
  55.  
  56. echo $! > "$pid_file"
  57. if ! is_running; then
  58. echo "Unable to start, see $stdout_log and $stderr_log"
  59. exit 1
  60. fi
  61. fi
  62. ;;
  63. stop)
  64. if is_running; then
  65. echo -n "Stopping $name.."
  66.  
  67. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 1 minute heruntergefahren" >> /dev/null
  68. sleep 30
  69. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 30 sekunden heruntergefahren" >> /dev/null
  70. sleep 20
  71. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 10 sekunden heruntergefahren" >> /dev/null
  72. sleep 10
  73. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird heruntergefahren" >> /dev/null
  74.  
  75. do_stop
  76.  
  77. for i in {1..10}
  78. do
  79. if ! is_running; then
  80. break
  81. fi
  82.  
  83. echo -n "."
  84. sleep 1
  85. done
  86. echo
  87.  
  88. if is_running; then
  89. echo "Not stopped; may still be shutting down or shutdown may have failed"
  90. exit 1
  91. else
  92. echo "Stopped"
  93. if [ -f "$pid_file" ]; then
  94. rm "$pid_file"
  95. fi
  96. fi
  97. else
  98. echo "Not running"
  99. fi
  100. ;;
  101. restart)
  102. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 1 minute neugestartet" >> /dev/null
  103. sleep 30
  104. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 30 sekunden neugestartet" >> /dev/null
  105. sleep 20
  106. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 10 sekunden neugestartet" >> /dev/null
  107. sleep 10
  108. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird neugestartet" >> /dev/null
  109. do_stop
  110. if is_running; then
  111. echo "Unable to stop, will not attempt to start"
  112. exit 1
  113. fi
  114. do_start
  115. ;;
  116. status)
  117. if is_running; then
  118. echo "Running"
  119. else
  120. echo "Stopped"
  121. exit 1
  122. fi
  123. ;;
  124. update)
  125. if is_running; then
  126. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 1 minute fuer die taegliche Wartung heruntergefahren. Es kann einige Minuten dauern bis der Server wieder erreichbar ist."
  127. sleep 30
  128. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 30 sekunden heruntergefahren" >> /dev/null
  129. sleep 20
  130. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 10 sekunden heruntergefahren" >> /dev/null
  131. sleep 10
  132. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird heruntergefahren" >> /dev/null
  133. do_stop
  134. fi
  135.  
  136. /home/atlas/steamcmd/steamcmd.sh +login anonymous +force_install_dir /home/atlas/server +app_update "1006030" +quit >> "$stdout_log" 2>> "$stderr_log" &
  137.  
  138. start
  139. ;;
  140. backup)
  141. echo -n "backing up atlas-data ..."
  142. tar cfz $backupdir/backup_ark_`date +%Y%m%d`.tar.gz /home/atlas/server/ShooterGame/Saved/ >> "$stdout_log" 2>> "$stderr_log"
  143. echo "done"
  144. ;;
  145. *)
  146. echo "Usage: $0 {start|stop|restart|status|update|backup}"
  147. exit 1
  148. ;;
  149. esac
  150.  
  151. exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement