minecraft.sh 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. #!/bin/bash
  2. echo -n "$(tput setaf 5)"
  3. echo -e "Minecraft Ubuntu Server Builder/install v1.0"
  4. echo -e
  5. echo -n "$(tput setaf 7)"
  6. echo -e "Installation java:"
  7. if ! [ -x "$(command -v java)" ]
  8. then
  9. sudo apt-get update
  10. sudo apt-get install curl wget git -y
  11. if ! [ -f openjdk-18_linux-x64_bin.tar.gz ]
  12. then
  13. curl -O https://download.java.net/java/GA/jdk18/43f95e8614114aeaa8e8a5fcf20a682d/36/GPL/openjdk-18_linux-x64_bin.tar.gz
  14. fi
  15. cat <<'EOF'>> openjdk-18_linux-x64_bin.tar.gz.md5
  16. f3fc42bd35c3f5e9aff967c9862a153a openjdk-18_linux-x64_bin.tar.gz
  17. EOF
  18. if md5sum -c openjdk-18_linux-x64_bin.tar.gz.md5
  19. then
  20. tar xf openjdk-18_linux-x64_bin.tar.gz
  21. rm openjdk-18_linux-x64_bin.tar.gz.md5
  22. else
  23. echo "erreur"
  24. fi
  25. if [ -d /opt/jdk-18 ]
  26. then
  27. sudo rm -r /opt/jdk-18/
  28. fi
  29. sudo mv jdk-18 /opt/
  30. if [ -f /etc/profile.d/jdk18.sh ]
  31. then
  32. sudo rm /etc/profile.d/jdk18.sh
  33. fi
  34. sudo tee /etc/profile.d/jdk18.sh <<EOF
  35. export JAVA_HOME=/opt/jdk-18
  36. export PATH=\$PATH:\$JAVA_HOME/bin
  37. EOF
  38. source /etc/profile.d/jdk18.sh
  39. fi
  40. version=$(java -version 2>&1 | head -1 | cut -d'"' -f2 | sed '/^1\./s///' | cut -d'.' -f1)
  41. if [ $version -ge 18 ]
  42. then
  43. echo "Java version >= 18 ... ok"
  44. else
  45. echo "error"
  46. exit 1
  47. fi
  48. echo "Done."
  49. echo -e "Download Minecraft server structure:"
  50. cd /home/wareck/
  51. wget -c http://folivier.homelinux.org/cube/pack/minecraft.tar.xz
  52. tar xvfJ minecraft.tar.xz
  53. rm minecraft.tar.xz
  54. cd minecraft
  55. echo -e ""
  56. echo -e "Chargement BuildTools:"
  57. if ! [ -d build ]; then mkdir build ;fi
  58. cd build
  59. wget -c https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar
  60. echo -e "Done."
  61. echo -e ""
  62. echo -e "Compilation Spigot:"
  63. java -jar BuildTools.jar
  64. git clone https://github.com/Tiiffi/mcrcon.git
  65. cd mcrcon
  66. make
  67. sudo make install
  68. cd ..
  69. sudo rm mcrcon
  70. rsync --append --progress --recursive * /home/wareck/minecraft/
  71. echo -e "Done"
  72. cd ..
  73. echo -e "\nGeneration fichier service:"
  74. if [ -f minecraft.service ]
  75. then
  76. rm minecraft.service
  77. fi
  78. cat <<'EOF'>> minecraft.service
  79. #!/bin/sh -e
  80. ### BEGIN INIT INFO
  81. # Provides: minecraft
  82. # Required-Start: networking
  83. # Default-Start: 3 4 5
  84. # Default-Stop: 0 6
  85. ### END INIT INFO
  86. cd /home/wareck/minecraft/
  87. su wareck -c "screen -dmS minecraft /opt/jdk-18/bin/java -jar -Xmx1024M -Xms1024M spigot-1.18.2.jar nogui"
  88. exit 0
  89. EOF
  90. chmod +x minecraft.service
  91. sudo cp minecraft.service /etc/init.d/
  92. sudo sudo update-rc.d minecraft.service defaults
  93. echo -e "Done"