さくらのVPSにspigotインストール(CentOS 7)

「さくらのVPS」+「CentOS 7」に「spigot」をインストール手順をまとめてあります。

spigotサーバについて

「spigot」とは「minecraft_server(マルチ)」に、色々なプラグイン(modみたいなもの)を追加できるようにしたサーバMODです。

「spigot」に追加できるプラグインには、「荒らし対策」「管理ツール」「ゲームルールの追加」等色々な種類がありますので、それを組み合わせることで自分好みの世界を構築することが出来ます。

公式のminecraftマルチサーバ(minecraft_server)では物足りなくなった方や、色々なプラグインをつかってサーバをより快適に管理、運用していきたい方などはこちらを使ってみるのも良いかもしれません。

インストール自体は非常に簡単なので、気軽に試してみましょう。

インストール作業の流れ

ざっくりと作業の流れを説明すると以下のようになります。

  • サーバの用意
  • OSインストール・設定
  • javaインストール
  • screenインストール
  • wgetインストール
  • gitインストール
  • spigot動作用ユーザ作成
  • spigotビルド
  • spigot設定(EULA同意)
  • 起動・停止スクリプト作成
  • 自動起動設定

バニラの「minecraft_server」インストールとの大きな違いは、「git」をインストールすることと、「spigot」の実行ファイルを自分でビルド(実行ファイルを作成)するぐらいです。

なぜわざわざビルドするのか?

サーバMODとして以前は「CraftBukkit」というのが有名でしたが、ライセンスの関係で揉めていてDMCA(デジタルミレニアム著作権法)を受けて公開停止となり、そのあおりで「spigot」も公開停止になっていたのですが、バージョン1.8からユーザがビルドするという形での配布が再開されました。

サーバの用意

インターネットに公開して、手っ取り早くみんなで遊べる環境を構築するために、今回は「さくらのVPS」と「CentOS 7」という組み合わせで「spigot」をインストールしていきます。

今回私が契約したプランはさくらのVPS 2Gのタイプです。

※さくらのVPSは途中でメモリの増強とかが出来ないので、事前に無料の試用期間で動作確認を行ってどのスペックのサーバ良いか確認してみてください。

サーバスペックについて

VPS上に「spigot」をインストールする場合には、メモリは2Gプラン以上をおすすめします。

導入するプラグインにもよりますが、それ以下のメモリでは動作が重かったりして快適に遊べない恐れがあります。

OSインストール・設定

OSインストール

VPSに「spigot」をインストールする場合は、メモリを節約するためにも「Minimal Install」(最小構成)でインストールし、GUI環境は入れないほうが良いでしょう。(普段の操作もSSHでのCUIがメインとなるはずです)

ちなみに、私は「Minmarl Install」の際にいつも開発環境だけは追加でインストールして、その他に必要なソフトがあれば、個別にインストールしています。

OSインストール時に追加でインストールしているソフト

  • Compatibility Libraries
  • Development Tools

さくらのVPSの場合

「さくらのVPS」に「CentOS 7」をインスト―ルした際の手順をこちらのページにまとめてあります。

OS設定

私が最低限行っている作業内容は下記の項目となります。

作業項目

  • セキュリティアップデート
  • SSHの設定 (rootのログイン禁止やポート番号変更など)
  • ファイアーウォール設定
  • SELinux無効化
  • 時刻同期設定

詳しい手順については、こちらのページにまとめてありますので、参考にしてみてください。

javaインストール

「spigot」を動作させるために必要な「java」を「yum」でインストールします。

# yum -y install java

インストールされたjavaのバージョンは下記のコマンドで確認できます。

# java -version
openjdk version "1.8.0_71"
OpenJDK Runtime Environment (build 1.8.0_71-b15)
OpenJDK 64-Bit Server VM (build 25.71-b15, mixed mode)

screenインストール

今回の「spigot」インストール手順では、「screen」を使って「spigot」を動作させるため「screen」をインストールします。

# yum install screen

wgetインストール

「Buildtools」をダウンロードするのに使う、「wget」をインストールします。

# yum install wget

gitインストール

「spigot」の実行ファイル作成(ビルド)は「Buildtools」を使って行うのですが、その際に必要となるため「git」をインストールします。

# yum install git

※ちなみに、実行ファイル作成は「BuildTools」が全部自動でやってくれるので、自分で「git」のコマンドを実際に入力することはありません。

spigot実行ユーザ作成

「spigot」を「root」ユーザで動作させるのはセキュリティ上好ましくないので、動作させるためのユーザを「adduser」コマンドで作成します。

この手順では「spiadmin」というユーザを作成していますが、特にユーザ名には決まりがないので、皆さんのお好きなユーザ名で作成してください。

# adduser spiadmin
# passwd spiadmin

※あまり簡単な名前のユーザを作成すると、SSHのブルートフォース攻撃の餌食になりますので、「admin」とか攻撃対象になりやすいユーザ名はやめましょう。セキュリティを考慮すると、SSHは鍵認証方式にすることをおすすめします。

Buildtoolsダウンロード

「spigot」をビルドするためのツールである「BuildTools」をダウンロードします。

インストールディレクトリ作成

まず、「Buildtools」をダウンロードする前に、「spigot」をインストールする(ビルドする)ためのディレクトリを作成しておきます。

今回の手順では「/opt/spigot」というディレクトリを作成し、そこに「spigot」をインストールしていきます。

# mkdir /opt/spigot

※ディレクトリを作成する場所は好きな場所で良いので、どこに作るかはパーティションの空き容量などをみて判断してください

所有者の変更

作成したディレクトリの所有者を、「spigot」を動作させるユーザに変更します。

今回の手順では「spiadmin」というユーザを作成しているので、「chown」コマンドでディレクトリの所有者を「spiadmin」ユーザに変更します。

# chown spiadmin:spiadmin /opt/spigot

※「spigot」を動作させるユーザを「spiadmin」以外にしている場合は適宜読み替えてください。

Buildtoolsダウンロード

ここからの作業は、「su」コマンドで「spiogt」実行ユーザへ変更して作業を行います。

# su - spiadmin

先ほど作成した「spigot」イントールディレクトリに移動し、そこで「Buildtools」をダウンロードします。

$ cd /opt/spigot

「wget」を使用して「Buildtools」をダウンロードをしてきます。

$ wget https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar

spigotビルド

ダウンロードしてきた「Buildtools」を使って「spigot」をビルドしていきます。

git設定

まず、事前準備としてgitの設定を行います。

$ git config --global --unset core.autocrlf

この設定は「git」で改行コードを設定しないようにするために行います。

spigotビルド実行

いよいよ「spigot」のビルドを行っていきますが、実行する時間や環境にもよりますが、この工程は結構時間かかります。(10~20分くらい)

$ java -jar BuildTools.jar

ビルドが完了すると、複数のファイルが作成されていますが、「spigot-x.x.x.jar」ファイルが「spigot」の実行ファイルとなります。

$ ls
apache-maven-3.2.5  BuildTools.log.txt  craftbukkit-1.9.jar  work
BuildData           Bukkit              Spigot
BuildTools.jar      CraftBukkit         spigot-1.9.jar

バージョンの指定方法

バージョンを指定してビルドしたい場合は「–rev バージョン」と指定することで、好きなバージョンのjarファイルを作成することが出来ます。

バージョン指定

バージョン1.8.8の実行ファイルをビルドする場合は、下記のように実行します。

$ java -jar BuildTools.jar --rev 1.8.8

EULA(使用許諾契約)同意

ビルドした「spigot-x.x.jar」の初回起動時は「eula.txt」への編集(使用許諾契約)が必要となりますので、かならず起動に失敗します。

これは、バニラのminecraft_Serverと同じですね

spigot起動

「eula.txt」を作成するために「spigot」を起動させます。

$ java -Xms1024M -Xmx1024M -jar spigot-1.9.jar nogui
Loading libraries, please wait...
[16:57:39 INFO]: Starting minecraft server version 1.9
[16:57:39 INFO]: Loading properties
[16:57:39 WARN]: server.properties does not exist
[16:57:39 INFO]: Generating new properties file
[16:57:39 WARN]: Failed to load eula.txt
[16:57:39 INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
[16:57:39 INFO]: Stopping server

※「spigot-1.9.jar」の部分は起動させる実行ファイル名に読み替えてください。

eula.txt編集(使用許諾契約)

「spigot」を起動すると、「eula.txt」が作成されるので内容を確認し「eula=false」の部分を「eula=true」に変更します。

$ vi eula.txt

変更前

eula=false

変更後

eula=true

spigot動作確認

「eula.txt」の編集が完了したら、再度「spigot」を起動し「minecraft」クライアントからログインして動作確認してください。

spigot起動

$ java -Xms1024M -Xmx1024M -jar spigot-1.9.jar nogui

動作確認

「minecraft」クライアントからログインして動作確認します。

spigot停止

動作確認が終わったら、サーバのコンソールから「stop」コマンドを実行して、一度「spigot」を停止させておいてください。

[00:08:05 INFO]: tamohiko lost connection: Disconnected
[00:08:05 INFO]: tamohiko left the game.
>stop
[00:08:11 INFO]: Stopping the server
[00:08:11 INFO]: Stopping server
[00:08:11 INFO]: Saving players
[00:08:11 INFO]: Saving worlds
[00:08:11 INFO]: Saving chunks for level 'world'/Overworld
[00:08:11 INFO]: Saving chunks for level 'world_nether'/Nether
[00:08:11 INFO]: Saving chunks for level 'world_the_end'/The E

起動・停止スクリプト作成

「spigot」を「systemd」で管理し自動起動できるようにするため、起動と停止用のスクリプトを作成していきます。

起動スクリプト作成

「spi_start.sh」という名前で起動スクリプトを作成していきます。

$ vi spi_start.sh

変数説明

起動スクリプトで設定が必要な変数の説明です。

変数 設定内容
USERNAME spigot実行ユーザを設定
SERVICE spigot実行ファイルを設定(spigot-x.x.jarファイル名を指定)
SCNAME screenに指定する名前を設定
MC_PATH spigotがインストールされているディレクトリを設定
XMX spigot最大メモリ使用量を設定
XMS spigot初期メモリ使用量を設定

※「XMX」と「XMS」については、「spigot」が使用するメモリの量となります。この値を変更する場合は、かならずOSが使用するメモリ分は残るように設定指定ください。

起動スクリプト

#!/bin/bash

USERNAME='spiadmin'
SERVICE='spigot-1.9.jar'
SCNAME='spigot'
SPI_PATH='/opt/spigot'

XMX="1024M"
XMS="1024M"

cd $SPI_PATH

ME=`whoami`

if [ $ME == $USERNAME ] ; then
if pgrep -u $USERNAME -f $SERVICE > /dev/null
then
echo "$SERVICE is already running!"
else
echo "Starting $SERVICE..."
screen -AmdS $SCNAME java -Xmx$XMX -Xms$XMS -jar $SERVICE nogui
fi
else
echo "Please run the minecraft user."
fi

停止スクリプト作成

「spi_stop.sh」という名前で停止スクリプトを作成していきます。

$ vi spi_stop.sh

変数説明

停止スクリプトで設定が必要な変数の説明です。

変数 設定内容
USERNAME spigot実行ユーザを設定
SERVICE spigot実行ファイルを設定(spigot-x.x.jarファイル名を指定)
SCNAME screenに指定する名前を設定
MC_PATH spigotがインストールされているディレクトリを設定

停止スクリプト

#!/bin/bash

USERNAME='spiadmin'
SERVICE='spigot-1.9.jar'
SCNAME='spigot'
SPI_PATH='/opt/spigot'

cd $SPI_PATH

ME=`whoami`

if [ $ME == $USERNAME ] ; then
  if pgrep -u $USERNAME -f $SERVICE > /dev/null
    then
      echo "Stopping $SERVICE"
      screen -p 0 -S $SCNAME -X eval 'stuff "say SERVER SHUTTING DOWN IN 10 SECONDS. Saving map..."\015'
      screen -p 0 -S $SCNAME -X eval 'stuff "save-all"\015'
      sleep 10
      screen -p 0 -S $SCNAME -X eval 'stuff "stop"\015'
      sleep 10
      echo "Stopped minecraftserver"
    else
      echo "$SERVICE was not runnning."
  fi
else
  echo "Please run the minecraft user."
fi

パーミッション変更

spigot実行ユーザのみが起動・停止シェルを実行できるように、パーミッションの設定を行います。

$ chmod 744 spi_start.sh
$ chmod 744 spi_stop.sh

パーミッションの確認

spigot起動ユーザのみが、実行できるようになっていることを確認します。

$ ls -l spi_*
-rwxr--r-- 1 spiadmin spiadmin 411 Mar 10 16:01 spi_start.sh
-rwxr--r-- 1 spiadmin spiadmin 631 Mar 10 16:03 spi_stop.sh

スクリプト動作確認

起動スクリプト実行確認

$ ./spi_start.sh
screenの確認

「spi_start.sh」から起動された「spigot」はスクリプト内の「SCNAME」で設定された名前のscreen上で実行されています。

「screen -ls」コマンドでscreenの状態を確認できます。

$ screen -ls
There is a screen on:
        1472.spigot     (Detached)
1 Socket in /var/run/screen/S-spiadmin.
screenへの接続

「screen -r spigot」と実行することで接続(Attach)することができるので、正常にminecraftが起動されているかどうか確認します。

$ screen -r spigot
[12:34:45 INFO]: Cane Growth Modifier: 100%
[12:34:45 INFO]: Melon Growth Modifier: 100%
[12:34:45 INFO]: Mushroom Growth Modifier: 100%
[12:34:45 INFO]: Pumpkin Growth Modifier: 100%
[12:34:45 INFO]: Sapling Growth Modifier: 100%
[12:34:45 INFO]: Wheat Growth Modifier: 100%
[12:34:45 INFO]: NetherWart Growth Modifier: 100%
[12:34:45 INFO]: Tile Max Tick Time: 50ms Entity max Tick Time: 50ms
[12:34:45 INFO]: Item Despawn Rate: 6000
[12:34:45 INFO]: Item Merge Radius: 2.5
[12:34:45 INFO]: Arrow Despawn Rate: 1200
[12:34:45 INFO]: Allow Zombie Pigmen to spawn from portal blocks: true
[12:34:45 INFO]: View Distance: 10
[12:34:45 INFO]: Zombie Aggressive Towards Villager: true
[12:34:45 INFO]: Experience Merge Radius: 3.0
[12:34:45 INFO]: Preparing start region for level 0 (Seed: 6061323866878942654)
[12:34:46 INFO]: Preparing spawn area: 9%
[12:34:47 INFO]: Preparing spawn area: 68%
[12:34:48 INFO]: Preparing start region for level 1 (Seed: 6061323866878942654)
[12:34:49 INFO]: Preparing spawn area: 73%
[12:34:49 INFO]: Preparing start region for level 2 (Seed: 6061323866878942654)
[12:34:49 INFO]: Server permissions file permissions.yml is empty, ignoring it
[12:34:49 INFO]: Done (5.086s)! For help, type "help" or "?"

正常に起動が完了すると「Done」と表示されて、コマンド入力待ちになっているはずですので、ば正常に起動されていますので、minecraftのクライアントから接続できるか試してみてください。

動作確認が終了したましたら、今接続している「screen」から抜けて(Dtach)ください。

screenからの抜け方(Detach)

「Ctrl」+「a」を押下した後に「d」を押下することで「screen」から抜ける(Detach)ことができます。

停止スクリプト実行確認

起動スクリプトの動作確認が終わったら、次に停止スクリプトの動作確認を行います。

停止スクリプト実行
$ ./spi_stop.sh

「spigot」が無事停止できているか、「screen -ls」コマンドで確認してください。

正常にスクリプトが実行されると、「spigot」が停止し起動スクリプトで作成された「screen」も終了します。

$ screen -ls
No Sockets found in /var/run/screen/S-spiadmin.

自動起動設定

起動スクリプトと停止スクリプトが完成しましたら、今度はサーバの再起動を行っても自動で「spigot」が起動してくるように、自動起動の設定を行っていきます。

自動起動設定ファイル作成

まず、自動起動用の設定ファイルを作成していきます。

# vi /etc/systemd/system/spigot.service

設定箇所

設定が必要な箇所の説明です。

変数 設定内容
User spigot実行ユーザを設定
ExecStart spigot実行スクリプト
ExecStop spigot停止スクリプト
設定ファイル
[Unit]
Description=Minecraft Server (spigot)
After=network.target local-fs.target

[Service]
Type=forking
User=spiadmin
ExecStart=/opt/spigot/spi_start.sh
ExecStop=/opt/spigot/spi_stop.sh

[Install]
WantedBy=multi-user.target

自動起動設定

設定ファイルが完成しましたら、「systemctl」コマンドを使用して、自動起動の設定を行います。

# systemctl enable spigot.service

動作確認

自動機能設定が完了しましたら、動作確認としてサーバの再起動を行って「spigot」が自動的に起動してくるか確認してください。

無事起動してきましたら、インストール作業は完了となります。

シェアする

フォローする

コメント

  1. 匿名希望 より:

    手順通りに行い、
    ./spi_start.shを実行しようとしているのですが
    spigot-1.8.8.jar was not runnning.
    と出て実行できません。
    解決方法をご教授ください。

    • tamohiko より:

      匿名希望さん

      ご質問ありがとうございます。

      > ./spi_start.shを実行しようとしているのですが
      > spigot-1.8.8.jar was not runnning.
      > と出て実行できません。

      これは、直接下記のようなコマンドでspigotは実行できるが、「spi_start.sh」スクリプトからはspigotが実行できないという事でしょうか。
      $ java -Xms1024M -Xmx1024M -jar spigot-1.9.jar nogui

      まず、一点確認していただきたいのですが、

      > spigot-1.8.8.jar was not runnning.

      このメッセージは、spigotが起動していない場合に「spi_stop.sh」を実行した場合に表示されるメッセージのように見受けられます。
      spi_start.shの内容に間違いが無いか確認お願いします。

      内容に間違いがない場合は、下記のようにしてスクリプトを実行してみてください。
      これで、シェル実行状況が表示されるので、どこでエラーが発生しているのかがわかると思います。

      sh -x ./spi_start.sh

      エラーが発生している場所が分かりましたら、
      お手数をおかけしますが、エラーが発生している部分をこちらに書き込んでいただけますでしょうか。

      以上、よろしくお願いいたします。

      • 匿名希望 より:

        ご返信あありがとう御座います。

        $ java -Xms1024M -Xmx1024M -jar spigot-1.8.8
        .jar noguiでは実行できますが、./spi_start.shで実行できない状態でした。

        確認をしたところスプリクト内のメモリ指定の値が、
        XMX=”512M”
        XMS=”1024M”
        と逆に指定していたためと分かりました。

        値を正しくしたところ起動することができました。

        • tamohiko より:

          匿名希望さん

          返信ありがとうございます。

          無事起動できたようで何よりです。
          また、原因につきましてもお教えいただき、ありがとうございました。

          これから始まるマイクラライフをお楽しみくださいね!

  2. hypi より:

    こんにちは
    質問させてください

    ひととおり手順通りにでき、手動で起動スクリプトと停止スクリプトも無事にできましたが、「自動起動設定」が出来ない状態です。

    # systemctl enable spigot.service と打つと
    Failed to execute operation: Invalid argument と出てしまいます。

    確認する点などありましたらよろしくお願いします。

    • tamohiko より:

      hypiさん

      コメントありがとうございます。

      > # systemctl enable spigot.service と打つと
      > Failed to execute operation: Invalid argument と出てしまいます。

      自動起動設定時のエラーについてですが、「/etc/systemd/system/multi-user.target.wants」ディレクトリにリンクではなく「spigot.service」ファイルの実体が無いか確認してみて下さい。

      私の環境では「/etc/systemd/system/multi-user.target.wants」に実体のファイルがある場合に、「systemctl enable spigot.service」を実行すると同様のメッセージが表示されました。

      この場合は「/etc/systemd/system/multi-user.target.wants」にある「spigot.service」ファイルを削除してから、再度「systemctl enable spigot.service」を実行してみてください。

      • hypi より:

        tamohikoさん

        さっそくのご返答ありがとうございます。確認いたしましたところ
        「/etc/systemd/system/multi-user.target.wants」ディレクトリに「spigot.service」ファイルはありませんでした。
        「/etc/systemd/system」に「spigot.service」ファイルが存在している状態です。

        何度も申し訳ありません。
        よろしくお願いします。

        • tamohiko より:

          hypiさん

          ご確認ありがとうございます。

          > 「/etc/systemd/system/multi-user.target.wants」ディレクトリに「spigot.service」ファイルはありませんでした。
          > 「/etc/systemd/system」に「spigot.service」ファイルが存在している状態です。

          であれば、ちょっとすぐには原因がわからないかもしれません。

          とりあえずの対応としては、
          下記のように直接シンボリックリンクを張るという方法もありますので試してみてください。

          # ln -s /etc/systemd/system/spigot.service /etc/systemd/system/multi-user.target.wants/

          Failed to execute operation: Invalid argumentになる原因についてはもう少し調べてみます。

  3. Reaper より:

    手順どうりに進めてるんですけど、起動スクリプト実行確認の場所で躓いてます。
    ./spi_start.shのところはうまく行ってるんですけどその後のscreenの確認で”screen -ls”のコマンド打ったところscreen -ls
    “No Sockets found in /var/run/screen/S-spiadmin.”と返されてしまいます。どうしたらいいですか?

    • tamohiko より:

      Reaperさん

      コメントありがとうございます。

      spi_start.shでspigot自体は起動できていますか?
      出来ていないようでしたら、スクリプトに何らかの間違いがあると思いますので、再度確認してみて下さい。

      スクリプトを実行する際に「-x」を付けて実行すると、実行状況が表示されるので、原因調査の役に立つと思います。

      あと確認する点としては、「SERVICE=」の部分で設定しているjarファイル名は間違いないか、「SPI_PATH=」で指定しているディレクトに間違いがないかも確認してみてください。

      • Reaper より:

        「SPI_PATH=」で指定しているディレクトは、spigot.jerがある場所の指定ですよね

        • tamohiko より:

          Reaperさん

          > 「SPI_PATH=」で指定しているディレクトは、spigot.jerがある場所の指定ですよね

          はい、そのとおりです。

  4. Reaper より:

    Serverは開いたんですけど、前のワールドをVPSサーバーに入れたらすぐにサーバーが閉じてしまいます、どうしたらいいですか?

    • tamohiko より:

      Reaperさん

      状況をもう少し詳しく教えていただけますでしょうか。

      > Serverは開いたんですけど

      これはspigot自体は起動しているということですか。

      > 前のワールドをVPSサーバーに入れたらすぐにサーバーが閉じてしまいます

      サーバが閉じてしまうとはクライアントから入れないという事でしょうか?
      それとも、spigot自体が終了してしまうという事ですか?

      現在の情報だけですと、何が起きているのかが分からないので、
      logsフォルダにあるログを確認して頂けますでしょうか。

      そちらを確認することで、もう少し詳しい情報や原因がわかるかもしれません。

      以上、よろしくお願いいたします。

      • Reaper より:

        [Server thread/INFO]: Saving worldsのところでServerが閉じてしまいます

        • tamohiko より:

          Reaperさん

          > [Server thread/INFO]: Saving worldsのところでServerが閉じてしまいます

          調査ありがとうございます。

          ただ、このメッセージだけでは原因が分からないので、
          お手数をおかけしますが、もう少し詳しい情報を教えてください。

          spigotの起動に失敗するという事は、
          ログの中にERRORとかWARNレベルのログが表示されていると思うのですが、
          それらに関連するログを教えてください。

  5. root より:

    ソースはオープンソースですか?

    • tamohiko より:

      rootさん

      コメントありがとうございます。
      お返事遅れてすいません。

      spigotのソースということでしょうか?
      であれば、オープンソースですよ。

      詳しくは公式サイトをご確認いただくと詳しい情報が記述されています。
      https://www.spigotmc.org/wiki/about-spigot/

  6. kery より:

    サーバーの動作確認のところで
    サーバーログインしようとすると
    クライアント側でio.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused:
    とエラーメッセージが表示されます……

    • tamohiko より:

      keryさん

      コメントありがとうございます。

      エラーメッセージに「Connection refused:」と出ているので、何らかの理由で接続が拒絶されているみたいですね。

      原因の切り分けとして、いったんクライアント側OSのファイアウォールを停止して接続できるか確認してみることはできますか?(確認後はファイアウォールの再開を忘れずに行ってください)

      もし、これで接続できるようであれば、ファイアウォールが原因であると考えられるので、ファイアウォールの設定でjavaが許可されているか確認してみてください。

  7. matter より:

    間違えて全てrootフォルダに保存してしまったのですが、その場合スクリプトの設定はどこを変えればいいのでしょうか?

    • tamohiko より:

      matterさん

      コメントありがとうございます。

      > 間違えて全てrootフォルダに保存してしまったのですが、その場合スクリプトの設定はどこを変えればいいのでしょうか?

      「/root」ディレクトリにspigotを保存した場合は、起動と停止スクリプトの「SPI_PATH」の部分を変更する必要があります。

      「/root/spigot」といったディレクトリに保存している場合は下記のようになります。

      変更前 SPI_PATH=’/opt/spigot’
      変更後 SPI_PATH=’/root/spigot’

      また、起動・停止スクリプトの保存ディレクトリも変更されている場合はしている場合は自動起動用の設定ファイルである「spigot.service」の「ExecStart」と「ExecStop」も変更する必要があります。

      あと、「/root」ディレクトリに保存した場合に気になる点としては、ディレクトリのパーミッションの関係で「spigot」の実行ユーザを「root」に設定しなければエラーとなるかもしれません。

      ですが、「spigot」を「root」ユーザで実行することはセキュリティの関係からおすすめできませんので、どこか別のディレクトリに移動させて運用するほうが良いのではないかと思います。