Spigotは、CraftBukkitに基づく修正されたMinecraftサーバーソフトウェアです。既存のすべてのプラグインおよびmodとの互換性を維持しながら、追加のパフォーマンスの最適化、構成オプション、および機能を提供します。
このチュートリアルでは、Ubuntu20.04ベースのサーバーにSpigotServerをビルドしてインストールし、プラグインをインストールする方法を学習します。
-
最小4GBのRAMと2つのCPUコアを備えたUbuntu20.04を実行しているサーバー。
-
sudo権限を持つroot以外のユーザー。
-
すべてが更新されます。
$ sudo apt update && sudo apt upgrade
-
必要なパッケージをインストールします。
$ sudo apt install wget apt-transport-https gnupg nano screen
最初のステップは、ファイアウォールを構成することです。 Ubuntuにはデフォルトでufw(Uncomplicated Firewall)が付属しています。
ファイアウォールが実行されているかどうかを確認します。
$ sudo ufw status
次の出力が得られるはずです。
Status: inactive
SSHポートを許可して、ファイアウォールが有効にしたときに現在の接続が切断されないようにします。
$ sudo ufw allow OpenSSH
Spigotサーバーのポート25565が接続を受け入れることを許可します。
$ sudo ufw allow 25565
ファイアウォールを有効にする
$ sudo ufw enable Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup
ファイアウォールのステータスをもう一度確認してください。
$ sudo ufw status
同様の出力が表示されるはずです。
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 25565 ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 25565 (v6) ALLOW Anywhere (v6)
Spigotインストーラーが機能するには、JavaとGitが必要です。 Ubuntu 20.04には、Javaの最新バージョンとしてOpenJDK17が同梱されています。次のコマンドを実行してインストールします。
$ sudo apt install openjdk-17-jre-headless
リリースを確認します。
$ java --version openjdk 17.0.1 2021-10-19 OpenJDK Runtime Environment (build 17.0.1+12-Ubuntu-120.04) OpenJDK 64-Bit Server VM (build 17.0.1+12-Ubuntu-120.04, mixed mode, sharing)
Gitをインストールします。
$ sudo apt install git
次のステップは、サーバーを実行するための専用ユーザーを作成することです。
$ sudo adduser minecraft
新しく作成したユーザーに切り替えます。
$ sudo su - minecraft
ステップ4-Spigotをダウンロードしてインストールします
BuildTools.jarアプリケーションを使用してSpigotをビルドします。最初のステップは、ホームディレクトリに切り替えることです。
minecraft:$ cd ~
BuildToolsの新しいディレクトリを作成し、そこに移動します。
minecraft:$ mkdir buildtools && cd buildtools
BuildTools.jar
を取得します ファイル。
minecraft:$ wget -O BuildTools.jar https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar
Spigotの最新の安定バージョンをビルドします。
minecraft:$ java -jar BuildTools.jar --rev latest
使用可能なサーバーリソースによっては、このプロセスが完了するまでに時間がかかる場合があります。
作成されたSpigotjarファイルの名前を確認してください。
minecraft:$ ls apache-maven-3.6.0 BuildData BuildTools.jar BuildTools.log.txt Bukkit CraftBukkit Spigot spigot-1.18.1.jar work
私たちの場合、名前はです。
Spigotサーバー用に別のディレクトリを作成し、それに切り替えます。
minecraft:$ cd ~ && mkdir server && cd server
Spigotjarファイルを新しく作成したサーバーディレクトリに移動します。
minecraft:$ mv ~/buildtools/spigot-1.18.1.jar ~/server/spigot.jar
ステップ5-Spigotサーバーを起動します
Spigotサーバーを起動するには、サーバーを最適化するためにさまざまなJavaパラメーターを渡すことができる起動スクリプトを作成する必要があります。
Spigotの起動スクリプトを作成して開きます。
minecraft:$ sudo nano spigotstart.sh
次のコードをファイルに貼り付けます。
#!/bin/sh java -Xms3G -Xmx3G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar spigot.jar nogui
パラメータ-Xms3G -Xmx3G
4GBのRAM用にJavaヒープスペースを構成しました。私たちの場合、OSやRAMが必要なその他のもののために1GBを空けておきました。これを、Spigotサーバーに割り当てるRAMの量に変更します。サーバーに16GBのRAMがある場合は、14GBまたは15GBのRAMを占有するようにパラメーターを設定する必要があります。
終了したら、 Ctrl + Xを押してファイルを保存します Yと入力します プロンプトが表示されたら。
起動スクリプトを実行可能にします。
minecraft:$ chmod +x spigotstart.sh
Spigotサーバーを初めて起動します。
minecraft:$ ./spigotstart.sh
サーバーは起動せず、代わりに終了し、次のメッセージが表示されます。
[14:14:21] [ServerMain/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
eula.txt
を開きます 編集用。
minecraft:$ nano eula.txt
変数eula
の値を設定します true
に 。
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #Sun Dec 26 13:29:15 UTC 2021 eula=true
終了したら、 Ctrl + Xを押してファイルを保存します Yと入力します プロンプトが表示されたら。
サーバーを起動する前に、サーバーをバックグラウンドでサービスとして実行するように構成しましょう。
サーバーが機能するには、シェルが常に実行されている必要がありますが、これは理想的ではありません。サーバーが起動時に自動的に起動してバックグラウンドで実行できるように、サービスを作成する必要があります。
minecraft
を終了します ユーザー。
minecraft:$ exit
Spigot Serviceファイルを作成し、編集用に開きます。
$ sudo nano /etc/systemd/system/spigot.service
次のコードを貼り付けます。
[Unit] Description=SpigotMC After=network.target [Service] Type=forking User=minecraft Group=minecraft ExecStart=/usr/bin/screen -d -m -S minecraft /home/minecraft/server/spigotstart.sh ExecStop=/usr/bin/screen -S minecraft -p 0 -X stuff "stop$(printf \\r)" WorkingDirectory=/home/minecraft/server [Install] WantedBy=multi-user.target
終了したら、 Ctrl + Xを押してファイルを保存します Yと入力します プロンプトが表示されたら。
サービスデーモンをリロードします。
$ sudo systemctl daemon-reload
サービスを有効にします。
$ sudo systemctl enable spigot
Spigotサービスを開始します。
$ sudo systemctl start spigot
サービスステータスを確認してください。
$ sudo systemctl status spigot ? spigot.service - SpigotMC Loaded: loaded (/etc/systemd/system/spigot.service; disabled; vendor preset: enabled) Active: active (running) since Mon 2021-12-27 09:15:25 UTC; 6s ago Process: 32011 ExecStart=/usr/bin/screen -d -m -S minecraft /home/minecraft/server/spigotstart.sh (code=exited, sta> Main PID: 32012 (screen) Tasks: 25 (limit: 4691) Memory: 3.2G CGroup: /system.slice/spigot.service ??32012 /usr/bin/SCREEN -d -m -S minecraft /home/minecraft/server/spigotstart.sh ??32013 /bin/sh /home/minecraft/server/spigotstart.sh ??32014 java -Xms3G -Xmx3G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockEx> Dec 27 09:15:25 spigot systemd[1]: Starting SpigotMC... Dec 27 09:15:25 spigot systemd[1]: Started SpigotMC.
サーバーが稼働しているので、Minecraftに接続します。 Minecraftゲームを起動します。
マルチプレイヤーをクリックします ボタンを押し、チェックボックスをオンにして将来の警告を無視します。この画面を再度表示しない 。
サーバーの追加をクリックします 次のページのボタン。
サーバーのパブリックIPアドレスと名前を入力します。 完了をクリックします 終了したら。
サーバーがリストに表示されます。
サーバー名をクリックして、サーバーに参加を押します。 ボタンをクリックしてサーバーを起動します。ゲームはまもなく開始されます。
友達にサーバーに参加して遊んでもらうように頼むことができます。
/home/minecraft/server/server.properties
を編集して、サーバーをカスタマイズできます ファイル。以下のプロパティのいくつかを見ていきます。
-
コマンドブロックを有効にする: 使用可能な値は
true
です およびfalse
。enable-command-block=false
-
ゲームモード :利用可能な値は、サバイバル、クリエイティブ、アドベンチャー、および観客です。また、サバイバルの場合は0、クリエイティブの場合は1、アドベンチャーの場合は2、観客の場合は3から始まる整数で定義することもできます。
gamemode=survival
-
難しさ :利用可能な値は、平和的、簡単、通常、および困難です。また、平和の場合は0、簡単の場合は1、通常の場合は2、ハードの場合は3から始まる整数で定義することもできます。
difficulty=easy
-
MOTD :今日のメッセージの略です。サーバーリストページに表示されるメッセージです。文字列値を受け入れます。色、特殊文字、およびフォーマットコードをサポートします。 59文字を超えてはなりません。
motd=A Minecraft Server
-
PVP :プレイヤーモードとプレイヤーモードを有効にします。使用可能な値は
true
です およびfalse
。pvp=true
-
サーバーポート :Minecraftサーバーがリッスンするポートを定義します。デフォルト値は25565です。
server-port=25565
ポート値を別の値に変更する場合は、ファイアウォールで有効にする必要があります。そうしないと、プレーヤーは接続できなくなります。
-
その他のプロパティについては、Minecraftwikiを参照してください。
これらのプロパティを有効にするには、これらのプロパティに変更を加えた後、Spigotサーバーを再起動する必要があります。
$ sudo systemctl restart spigot
プラグインは、SpigotResourcesまたはBukkitプラグインのページからダウンロードできます。
プラグインをSpigotからダウンロードした場合、次の方法はブロックされているため機能しません。 Jarファイルを手動でダウンロードしてサーバーに移動する必要があります。ただし、Bukkitからダウンロードする場合は、次の方法を使用してサーバーに直接ダウンロードします。
.jar
をダウンロードします 上記のページから/home/minecraft/server/plugins
へのプラグインのファイル ディレクトリ。
$ sudo wget -P /home/minecraft/server/plugins/ --content-disposition <plugin url>
フラグ--content-disposition
Content-Disposition
を使用して、ファイルが正しいファイル名でダウンロードされるようにします ヘッダー。
たとえば、WorldEditプラグインをダウンロードする場合、これがダウンロード方法です。
$ sudo wget -P /home/minecraft/server/plugins --content-disposition https://dev.bukkit.org/projects/world edit/files/latest
プラグインをリロードするには、Spigotサーバーを再起動します。
$ sudo systemctl restart spigot
ステップ10-Spigotを更新する
Spigotを更新するには、このガイドの手順4を繰り返して、最新バージョンのBuildTools.jar
を入手する必要があります。 ファイルを作成してから、新しいspigot.jar
を作成します ファイル。必ず古いjarファイルをバックアップし、サーバーを停止してから実行してください。
これで、Ubuntu20.04ベースのシステムにSpigotMinecraftサーバーをインストールして構成するためのチュートリアルは終了です。ご不明な点がございましたら、下のコメント欄に投稿してください。