Minecraft


プログラムで制御


ブロックIDを調べる


トラブル


ワールド配布


建築物設計ツール マインプランナー

バックアップ・リストア


スナップショットは開発版

バグフィックス、新機能等はスナップショットとして公開されている。 ただし、不具合もかなりあるので自己責任。
必ず既存のjarや、ワールドはバックアップする。メインのワールドでは試さない方が良いだろう。最悪壊れる。

メリットは、プレイヤーは新規機能や不具合修正を正式リリース前に楽しめる、開発元は正式リリース前にプレイヤーのフィードバックを得る事ができる。
問題を見つけたら、既存の問題がMinecraft - JIRAで確認した上で、新規ならば報告(英語で)する。


1部屋5人まで無料接続可能なVPN「hamachi」を使ってプレイする方法


Minecraft Server


Discord bot


Dockerでserver構築

記事:

command:

RCON:


Log4j脆弱性対応

参照:

記事:


クラッシュ対策

- max-tick-time=60000
+ max-tick-time=-1

Monitで自動再起動

希にクラッシュする事があるので自動再起動させる

  1. Ubuntuの場合
    sudo aptitude install monit
    sudo vim /etc/monit/monitrc
    --
    set daemon 60
    set httpd port 2812 and
      use address localhost
      allow localhost
      allow admin:monit
      allow @monit
      allow @users readonly
    include /etc/monit/conf.d/*.conf
    --
  2. filemonit.minecraft.zip を展開し /etc/monit/conf.d/ にコピー
  3. 起動と確認
    sudo vim /etc/monit/conf.d/minecraft.conf
    --
    # PID, homeディレクトリ, port等を変更
    --
    sudo service monit start
    sudo chkconfig monit on
    sudo monit status
    
    # minecraftが監視されているか確認

Zabbixでプレイヤー数を監視をする

Memo/Zabbixで現在のプレイヤー数の監視をする。
現在のプレイヤー数を取得する方法はいくつかあった。

  1. filezabbix-minecraft.zip が必要
  2. Minecraftを実行しているホスト(例:Ubuntu 12.xx LTS)
    # zabbixユーザがsudo出来るように
    sudo sh -c 'echo "zabbix ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/zabbix'
    sudo chmod 0440 /etc/sudoers.d/zabbix
    
    # zabbix-agentでminecraftの監視設定を追加
    sudo cp userparameter_minecraft.conf /etc/zabbix/zabbix_agentd.d/userparameter_minecraft.conf
    sudo service zabbix-agent restart
    
    # テスト
    sudo su -
    sudo -u zabbix zabbix_agentd -t 'minecraft.players.num[user01,/home/user01/minecraft/minecraft]'
    minecraft.players.num[/home/user01/minecraft/minecraft] [t|1]
    
    sudo -u zabbix zabbix_agentd -t 'minecraft.players.max[user01,/home/user01/minecraft/minecraft]'
    minecraft.players.max[/home/user01/minecraft/minecraft] [t|10]
  3. Zabbixサーバの設定: 設定 > テンプレート > インポート: Template_App_Minecraft.xml
  4. 設定 > ホスト > <Minecraftサーバ> を開き、テンプレートタブ > 追加で上記のテンプレートを選択
  5. 同テンプレートのマクロタブで以下を設定
    • 起動スクリプトのパスを指定: {$MC_INIT_SCRIPT1} /home/dex/minecraft/minecraft
    • Minecraftサーバの起動ユーザを指定: {$MC_USER1} user01
  6. 同一サーバで複数のバージョンのMinecraftが動作している場合は、テンプレートのアイテムを複製し、マクロを増やす

zabbix-minecraft-players.jpg


1台で複数のマインクラフトサーバを起動する

CPU/メモリの余裕があれば、ポート変更で複数起動できた。

  1. 2つめのポートを変更(1つ目とは異なるように)
    vim /home/user01/minecraft2/server.properties
    ----
    server-port=25566
    rcon.port=25576
    ----
  2. fileminecraft-latest.20181117.zip を展開し、/home/user01/minecraft2/minecraft-02 のように別名でコピー
    • このスクリプト は複数のscreenを扱えなかったので修正
    • 1.7からログファイルのパスが変わったようでcommandが機能しない点を修正。
    • PIDファイルを作るように修正。monit等で自動再起動できる。
    • updateが動作しない点を修正(1.13.2で確認)
  3. 起動スクリプトを変更
    vim /home/user01/minecraft2/minecraft-02
    ----
    # jarファイルの名前。1つめと異なる名前にする
    SERVICE='minecraft_server.1.8.1.jar'
    # SCREEN名。1つめと異なる名前にする
    SCREEN_NAME='minecraft-02'
    # 実行ユーザ名
    USERNAME='user01'
    # ワールド名
    WORLD='world'
    # jarファイルがあるパス
    MCPATH='/home/user01/minecraft2'
    # バックアップ先
    BACKUPPATH='/home/user01/minecraft2/backup'
    ----
  4. 起動/終了
    # 起動
    ./minecraft2/minecraft-02 start
    
    # 終了
    ./minecraft2/minecraft-02 stop

ユーザのUUIDを調べる

ユーザ識別が、Minecraft 1.8からUSER NAMEからUUIDに変わった。
そのため、ops.json, whitelist.json, 等に入力するにはUUIDを調べる必要がある(古い設定ファイルがある場合は、初回起動時に変換されるようだ)


死因を集計


定期バックアップ


minecraft missing the required element 'version' and a version.properties file could not be found

Forge Server + フックショット[162_87].zip で下記エラーが発生
「minecraft missing the required element 'version' and a version.properties file could not be found.」
versionに全角文字が入っているのが問題。削除すれば良い。

  1. 7-zip 等で 該当MOD を開く
  2. mcmod.infoをエディタで開く
  3. versionから全角文字を取り除く
    "version":"162_87",
  4. サーバ、クライアント共に同じMODをmods/にコピー

ForgeをServerにインストールする

  1. http://files.minecraftforge.net/ から Recommended版installerをダウンロード
  2. インストーラの起動
    java -jar minecraftforge-installer-1.6.2-9.10.0.804.jar
  3. Install serverを選択。必要なパッケージをダウンロードしてくれる
    libraries
    minecraftforge-installer-1.6.2-9.10.0.804.jar
    minecraftforge-universal-1.6.2-9.10.0.804.jar
    minecraft_server.1.6.2.jar
  4. minecraftforge-universal.x.x.x.jar から起動するように変更する
    java -Xmx1024M -Xms1024M -jar minecraftforge-universal-1.6.2-9.10.0.804.jar nogui
  5. 自動的に必要なファイル類が作成される。MODは mods/ の中にいれて再起動

MOD


RCONでリモートからサーバを操作

  1. 設定ファイルを編集
    vim server.properties
    ----
    enable-rcon=true
    rcon.port=25575
    rcon.password=YOUR PASSWORD
    ----
  2. ファイアウォールを設定。ローカルネットワークからのみ接続可能にする場合
    • Ubuntu
      sudo ufw allow proto tcp from 192.168.1.0/24 to any port 25575
  3. RCON操作クライアントで操作
    • Windows用GUIクライアント Minecraft RCON Tool by R3B0RN - Minecraft Forum コマンドを直接入力
      • Address: 192.168.1.10:25575
      • RCON: パスワード
      • Connectで接続。Commandで各種操作。/help または /? でヘルプ
    • Windows/Linux/MacOSX用CUIクライアント mcrcon, remote connection client for minecraft servers
      # Linux
      chmod 755 mcrcon
      
      # -t: インタラクティブモード
      ./mcrcon -t -H 192.168.1.10 -P 25575 -p 'YOUR PASSWORD'
      
      # 終了
      > Q
    • java製 CUIクライアント Rcon cmd line.zip よくExceptionが発生して使いにくい
      # Windows:
      run.bat
      
      # Linux他:
      java -jar Client.jar
      
      # 接続
      Ip of server? 192.168.1.10
      Port? 25575
      Password? YOUR PASSWORD
      > /?
      
      # 終了
      CTRL+C
    • java製 GUIクライアント rcon-client 開発中らしく、コマンドが未実装。右クリックから選択式でコマンドを実行。
      • RConClient.jarをダウンロード。
        # windows: RConClient.batを作り、以下を記入して実行
        @echo off
        java -jar RConClient.jar
        
        # Linux他
        java -jar RConClient.jar

フレンドのみサーバを立てる

  1. server.properties で white-list=true
  2. ホワイトリスト(許可リスト)に追加
    • v1.8以上
    1. whitelist.json に uuid, nameを追加
    • v1.7以下
    1. white-list.txt にユーザ名を追加
  3. サーバ再起動
    • サーバコマンド
      /whitelist on/off	ホワイトリストの有効/無効。有効にした場合、リストに載っているプレイヤー以外は参加できなくなる
      /whitelist add/remove <player>	playerをホワイトリストに追加/削除する。
      /whitelist list	ホワイトリストに載っているプレイヤーの一覧を表示
      /whitelist reload	ホワイトリストのファイルを再ロードする。

管理者(オペレータ)権限を付与

  1. サーバに「ops.txt」があるので探す
  2. ops.txt にオペレータ権限を与えたいユーザ名(例:satou, suzuki)を1行に一つ、改行区切りで書く
    satou
    suzuki
  3. サーバの再起動
  4. オペレータコマンドが有効になっているか確認
    /help または /? でコマンド一覧が出てくるか。出て来ない場合はオペレーター権限が無い

CentOS/RedHat/Fedora

Minecraft自体のセットアップはUbuntuとほぼ同じ。
コマンドが多少異なる。起動スクリプトはそのまま使えるだろう。


Ubuntuでminecraftサーバを起動



添付ファイル: fileminecraft-latest.20181117.zip 1061件 [詳細] filemonit.minecraft.zip 1036件 [詳細] filezabbix-minecraft-players.jpg 1355件 [詳細] fileminecraft-01 620件 [詳細] filezabbix-minecraft.zip 1487件 [詳細] filemc_death_counter.php 1615件 [詳細] fileminecraft-server.sh 1178件 [詳細] fileminecraft-backup.sh 1229件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-07-28 (木) 16:22:14