【CentOS7】Minecraft Java Edition インストール

Mainecraft Java Edition
記事内に広告が含まれています。

あまり需要はないかもしれませんが、CentOS7.6に「Minecraft Java Edition」をインストールする方法です。(マルチサーバではありません)

CentOS7はインストールの際にソフトウェアの選択で「GNOME Desktop」を選択してインストールしています。

前提条件

「CentOS7」に「Minecraft Java Edition」をインストールする前に行う作業がいくつかあります。

SELinuxの停止

OSのセキュリティ的には有効化しておいたほうが良いのでしょうが、今回は「SELinux」の機能は停止しておきます。

$ su -
# vi /etc/sysconfig/selinux

編集内容

「SELINUX」項目の設定を「enforcing」から「disabled」に変更します。

変更前 SELINUX=enforcing
変更後 SELINUX=disabled

設定反映

設定を有効化するためにサーバを再起動します。

# reboot

サーバを再起動した後に「getenforce」コマンドを実行して、「SELLinux」が無効化されているか確認してください。

# getenforce 
Disabled

上記のように「Disabled」と表示されれば「SELinux」は無効化されています。

GUI環境の準備

マイクラで遊ぶためには当然ですがGUI環境が必要になります。

「GNOME」のデスクトップ環境が使用できているのであれば問題ありませんので、この手順は必要ありません。

GNOMEデスクトップ環境インストール

CUI環境のみしかない場合「GNOME」デスクトップ環境をインストールする必要があります。

$ su -
# yum group install "GNOME Desktop"

OS起動時にGNOME環境で動作させたい場合は、「systemctl」コマンドで「graphical.targe」を指定します。

# systemctl set-default graphical.targe

あとは、サーバを再起動して「GNOME」の環境で起動されてきて、問題なくログインできるか確認してください。

# reboot

Javaのインストール

「Minecraft Java Edition」の動作要件として「Java8以降」が必要となっています。

「GNOME Desktop」環境がインストールされている場合は、すでに「java-1.8.0-openjdk」がインストールされているはずですが、もしインストールされていない場合は、インストールを行っておく必要があります。

「java」がインストールされているかの確認は「java -version」コマンドで確認できます。

※CentOS7で用意されている「openjdk」のバージョンは古いのですが、とりあえず今回はこのバージョンでインストール作業を行っていきます。

$ java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)

インストールされていない場合は「java-1.8.0-openjdk」をインストールしてください。

$ su -
# yum install java-1.8.0-openjdk

gccの更新

CentOS7で用意されている「gcc」はバージョンが古いため、「Minecraft」のランチャーを起動する際に必要なライブラリ古くにエラーが発生してしまい、起動することが出来ません。

$ ./minecraft-launcher.sh
./launcher: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by ./launcher)
./launcher: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by ./launcher)
./launcher: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by ./launcher)
./launcher: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./launcher)

そのため、「gcc」をソースからビルドして新しいバージョンに更新し、必要なライブラリを用意する必要があります。

「gcc」「gcc-c++」インストール

「gcc」をソースからビルドするために「gcc」と「gcc-c++」をインストールする必要があります。

$ su -
# yum install gcc
# yum install gcc-c++

gccのソースをダウンロード

「gcc」のソースは下記のURLから新しいバージョンを選んでダウンロードしてきてください。

Index of /software/gcc/releases/

今回は「gcc-8.2.0」が最新だったのでこれをダウンロードしました。

# curl -LO http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-8.2.0/gcc-8.2.0.tar.gz
# curl -LO http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-8.2.0/sha512.sum

「sha512.sum」はダウンロードしたファイルが破損していないか確認するためのファイルなので、こちらもあわせてダウンロードしておきます。

ダウンロードデータのチェック

「sha512sum」コマンドでダウンロードしたファイルに破損が無いかチェックを行います。

ロケールが日本語であれば、下記のように今回ダウンロードしてきた「gcc-8.2.0.tar.gz」が「完了」と表示さればOKです。

# sha512sum --check sha512.sum
gcc-8.2.0.tar.gz: 完了
sha512sum: gcc-8.2.0.tar.xz: そのようなファイルやディレクトリはありません
gcc-8.2.0.tar.xz: オープンまたは読み込みに失敗しました
sha512sum: 警告: 一覧にある 1 個のファイルが読み込めませんでした

ロケールが英語の場合は「gcc-8.2.0.tar.gz」がOKであれば問題ありません。

# sha512sum --check sha512.sum
gcc-8.2.0.tar.gz: OK
sha512sum: gcc-8.2.0.tar.xz: No such file or directory
gcc-8.2.0.tar.xz: FAILED open or read
sha512sum: WARNING: 1 listed file could not be read

gccのビルド

ダウンロードしてきたファイルを「/usr/local/src」に解凍し、作成されたディレクトルイに移動します。

# tar xzfv gcc-8.2.0.tar.gz -C /usr/local/src
# cd /usr/local/src/gcc-8.2.0/
ライブラリのダウンロード

解凍したディレクトリにある「download_prerequisites」を実行することで、「gcc」をビルドするのに必要なライブラリのダウンロードが行われます。

# ./contrib/download_prerequisites
  2019-02-06 17:14:20 URL: ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2 [2383840] -> "./gmp-6.1.0.tar.bz2" [1]
  2019-02-06 17:14:32 URL: ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2 [1279284] -> "./mpfr-3.1.4.tar.bz2" [1]
  2019-02-06 17:14:38 URL: ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz [669925] -> "./mpc-1.0.3.tar.gz" [1]
  2019-02-06 17:14:47 URL: ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.18.tar.bz2 [1658291] -> "./isl-0.18.tar.bz2" [1]
  gmp-6.1.0.tar.bz2: 完了
  mpfr-3.1.4.tar.bz2: 完了
  mpc-1.0.3.tar.gz: 完了
  isl-0.18.tar.bz2: 完了
  All prerequisites downloaded successfully.
ビルドとインストール

次にビルド用の「build」ディレクトリを作成し、そこで作業を行っていきます。

コンパイルには時間がかかりますので、完了まで気長に待っててください。(私の環境では約25分程掛かりました)

# mkdir build
# cd build
# ../configure --enable-languages=c,c++ --prefix=/usr/local --disable-bootstrap --disable-multilib
# make
# make install

インストールが完了しましたら、「gcc」のバージョンの確認をしてください。

# gcc --version
gcc (GCC) 8.2.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

共有ライブラリ参照設定

共有ライブラリが「/usr/local/lib64」に作成されるのですが、このままだとパスが通っていないためOSから参照してもらえません。

そのため、下記のどちらかの方法でパスを通してあげる必要があります。

  • LD_LIBRARY_PATH (ユーザごとに設定が必要)
  • /etc/ld.so.confに設定 (システム全体)

今回は「/etc/ld.so.conf」に設定する方法を解説していきます。

「/etc/ld.so.conf」ファイルに直接「/usr/local/lib64」と追記しても良いですが、「CentOS7」の「/etc/ld.so.conf」を確認すると、「ld.so.conf.d」ディレクトリ内にある「.conf」という拡張子のファイルを読み込む設定になっています。

# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf

ですので、今回は「/etc/ld.so.conf.d」ディレクトリ内に「usr_local_lib64.conf」というファイルを作成し、そこに「/usr/local/lib64」というパスを記述していきます。

# cd /etc/ld.so.conf.d
# vi usr_local_lib64.conf
設定内容
/usr/local/lib64

ファイルを作成したあとに「ldconfig」コマンドを実行して、設定した内容を反映させます。

# ldconfig

「ldconfig」を実行した結果、下記のようなメッセージが表示された場合は該当ファイルの名前を変更して対応します。

ldconfig: /usr/local/lib64/libstdc++.so.6.0.25-gdb.py は ELF ファイルではありません - 先頭に誤ったマジックバイトを持っています。

ファイルの名前を変更して、ライブラリとして認識されないようにしておきます。

# mv /usr/local/lib64/libstdc++.so.6.0.25-gdb.py  /usr/local/lib64/back_libstdc++.so.6.0.25-gdb.py
# ldconfig

Minecraft Java Editionインストール

ここからの作業は「Minecraft Java Edition」を動作させたいユーザで行ってください。

Minecraftランチャーのダウンロード

「Minecraft Java Edition」は、まずランチャーをダウンロードしてきて、ランチャーでゲームデータをダウンロードするという流れになります。

CentOS7の場合は、下記URLから「Minecraft.tar.gz」をダウンロードし解凍してください。

301 Moved Permanently
$ curl -LO https://launcher.mojang.com/download/Minecraft.tar.gz
$ tar xzfv Minecraft.tar.gz

「libXScrnSaver」インストール

解凍されたディレクトリにある「minecraft-launcher.sh」を実行すると、マイクラのランチャーが起動されるのですが、そのままだと「libXss.so.1」が無いとエラーが発生します。

エラーが発生しない場合は、そのままマイクラを楽しんでください!!

$ cd minecraft-launcher-2.1.1431/
$ sh ./minecraft-launcher.sh
./launcher: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory

ですので、「libXss.so.1」が含まれているパッケージを調べてみます。

$ yum whatprovides libXss.so.1
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: ftp.jaist.ac.jp
 * extras: ftp.jaist.ac.jp
 * updates: ftp.jaist.ac.jp
libXScrnSaver-1.2.2-6.1.el7.i686 : X.Org X11 libXss runtime library
リポジトリー        : base
一致          :
Provides    : libXss.so.1

「libXss.so.1」は「libXScrnSaver」に含まれているのがが解りましたのでこれをインストールしていきます。

$su -
# yum install libXScrnSaver

ランチャー起動

「libXScrnSaver」のインストールが完了しましたら、rootユーザからログアウトしマイクラのランチャーを起動してください。

# exit
ログアウト
$ sh ./minecraft-launcher.sh

ランチャーが起動してきましたら、楽しいマイクラライフの始まりです!!

「launcher」アイコンから起動

「Minecraft.tar.gz」を解凍して出来たフォルダにある「lanucher」アイコンを実行することでも、マイクラのランチャーを起動することが出来ます。

コメント

タイトルとURLをコピーしました