Skip to content

Instantly share code, notes, and snippets.

@unchama
Created October 9, 2019 14:00
Show Gist options
  • Save unchama/19f6a10bd14332190646e781d4317afd to your computer and use it in GitHub Desktop.
Save unchama/19f6a10bd14332190646e781d4317afd to your computer and use it in GitHub Desktop.
Minecraftサーバ自動起動バッチ(linux版)
#!/bin/bash
#MCサーバー起動用シェル 自動再起動付き
#サーバーjarと同一ディレクトリに突っ込んで実行してね
#オプションはよしなにいじってね
readonly SERVERDIR=`dirname $0`
while true; do
cd ${SERVERDIR}
# release(わかる人向け,起動時にjarを置き換える,使うならコメントアウト)
# find queued_release -name "*.jar" | xargs -i cp {} ./plugins
echo "Starting Minecraft Server ${SERVERDIR} ..."
java \
-Dfile.encording=UTF-8 \
-verbose:gc \
-server \
-Xms10G \
-Xmx10G \
-XX:MetaspaceSize=512M \
-XX:+UseG1GC \
-XX:+UseStringDeduplication \
-XX:+DisableExplicitGC \
-XX:+UseCompressedOops \
-XX:+OptimizeStringConcat \
-XX:+UseTLAB \
-jar spigot-1.14.4.jar
now=`date +%k`
if [ 4 -le $now -a $now -lt 5 ]; then
#毎日4時~5時の間は再起動時間を長くする
echo "Restarting in 10 minutes..."
sleep 10m
else
echo "Restarting in 10 seconds..."
sleep 10s
fi
echo "Restarting..."
done
#!/bin/bash
#OS起動時に自動で流すならcronに@rebootで仕込むなどする
#screenを起動
#起動したscreenにMC起動コマンド流し込み
screen -AmdS mcsrv01 \
&& sleep 5s \
&& screen -r mcsrv01 -p 0 -X exec <サーバー起動シェルまでのフルパス>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment