Advertisement
Guest User

Untitled

a guest
Jan 25th, 2019
111
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. script /dev/null
  31. sleep 1
  32. su $user 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
  33. sleep 1
  34. su $user 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
  35. sleep 1
  36. su $user 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
  37. sleep 1
  38. su $user 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
  39. }
  40.  
  41. do_stop() {
  42.  
  43. su $user screen -X -S A4 quit
  44. sleep 1
  45. su $user screen -X -S B3 quit
  46. sleep 1
  47. su $user screen -X -S C2 quit
  48. sleep 1
  49. su $user screen -X -S D1 quit
  50. }
  51.  
  52.  
  53.  
  54.  
  55. case "$1" in
  56. start)
  57. if is_running; then
  58. echo "Already started"
  59. else
  60. echo "Starting $name"
  61. do_start
  62.  
  63. echo $! > "$pid_file"
  64. if ! is_running; then
  65. echo "Unable to start, see $stdout_log and $stderr_log"
  66. exit 1
  67. fi
  68. fi
  69. ;;
  70. stop)
  71. if is_running; then
  72. echo -n "Stopping $name.."
  73.  
  74. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 1 minute heruntergefahren" >> /dev/null
  75. sleep 30
  76. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 30 sekunden heruntergefahren" >> /dev/null
  77. sleep 20
  78. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 10 sekunden heruntergefahren" >> /dev/null
  79. sleep 10
  80. /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird heruntergefahren" >> /dev/null
  81.  
  82. do_stop
  83.  
  84. if is_running; then
  85. echo "Not stopped; may still be shutting down or shutdown may have failed"
  86. exit 1
  87. else
  88. echo "Stopped"
  89. if [ -f "$pid_file" ]; then
  90. rm "$pid_file"
  91. fi
  92. fi
  93. else
  94. echo "Not running"
  95. fi
  96. ;;
  97. restart)
  98. su $user /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 1 minute neugestartet" >> /dev/null
  99. sleep 30
  100. su $user /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 30 sekunden neugestartet" >> /dev/null
  101. sleep 20
  102. su $user /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 10 sekunden neugestartet" >> /dev/null
  103. sleep 10
  104. su $user /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird neugestartet" >> /dev/null
  105. do_stop
  106. if is_running; then
  107. echo "Unable to stop, will not attempt to start"
  108. exit 1
  109. fi
  110. do_start
  111. ;;
  112. status)
  113. if is_running; then
  114. echo "Running"
  115. else
  116. echo "Stopped"
  117. exit 1
  118. fi
  119. ;;
  120. update)
  121. if is_running; then
  122. su $user /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."
  123. sleep 30
  124. su $user /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 30 sekunden heruntergefahren" >> /dev/null
  125. sleep 20
  126. su $user /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird in 10 sekunden heruntergefahren" >> /dev/null
  127. sleep 10
  128. su $user /home/atlas/scripts/rcon -PMvXAdminsee -a89.163.145.180 -p58330 ServerChat "[A4-B3-C2-D1] : Der Server wird heruntergefahren" >> /dev/null
  129. do_stop
  130. fi
  131.  
  132. su $user /home/atlas/steamcmd/steamcmd.sh +login anonymous +force_install_dir /home/atlas/server +app_update "1006030" +quit >> "$stdout_log" 2>> "$stderr_log" &
  133.  
  134. start
  135. ;;
  136. backup)
  137. echo -n "backing up atlas-data ..."
  138. tar cfz $backupdir/backup_ark_`date +%Y%m%d`.tar.gz /home/atlas/server/ShooterGame/Saved/ >> "$stdout_log" 2>> "$stderr_log"
  139. echo "done"
  140. ;;
  141. *)
  142. echo "Usage: $0 {start|stop|restart|status|update|backup}"
  143. exit 1
  144. ;;
  145. esac
  146.  
  147. exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement