AWSとAlmaLinuxとMATLABのアイキャッチ画像
AWSとAlmaLinuxとMATLABのアイキャッチ画像

前回の記事で AWS の EC2 インスタンスで AlmaLinux 8.7 の環境構築手順を書きました。

続いて、MATLAB 環境を作る手順をご紹介します。

MATLAB がサポートしている Linux は MathWorks のシステム要求のページにありますが、Ubuntu、 RedHat、Debian、SUSE Linux をサポートしていますが CentOS や AlmaLinux のサポートはありません。動作保証していないのであくまでも自己責任での利用となりますが、意外と問題なく動作します。

AlmaLinux がある前提で続いて最小ステップでの MATLAB インストール手順をご紹介します。

wget と unzip のインストール

まずは Web からパッケージをダウンロードするのに必要な wget と、Zip ファイルを解凍するための unzip コマンドを使えるようにします。

sudo dnf install wget 
sudo dnf install unzipCode language: Bash (bash)

MPM のインストール

続いて MPM コマンドのインストール。こちらは MATLAB Package Manager のことで、Linux や Docker 環境にコマンドラインで MATLAB や Toolbox のインストールができます。詳細は GitHub の情報をご覧ください。

MPM をダウンロードするには wget を使い、ダウンロード後に実行権限を付与します。

wget https://www.mathworks.com/mpm/glnxa64/mpm 
chmod +x mpm Code language: Bash (bash)

MATLAB と Toolbox のインストール

いよいよ MATLAB のインストールです。先ほどの MPM コマンドを使って、バージョン、インストールディレクトリ、製品を記載します。

例えば MATLAB の R2022a だけ /app/matlab ディレクトリにインストールする場合は

mpm install --release=R2022a --destination=/app/matlab --products MATLABCode language: Bash (bash)

と実行します。バージョンは R2022b で、MATLAB 本体に加えて、Deep Learning Toolbox と Parallel Computing Toolbox をインストールする場合は、

mpm install --release=R2022b --destination=/app/matlab --products MATLAB Deep_Learning_Toolbox Parallel_Computing_Toolbox Code language: Bash (bash)

のように、products の後に Toolbox をスペース区切りで羅列します。

ここではライセンス情報は不要で、 MATLAB のインストールが実行されます。

X11 の設定

デフォルトでは MATLAB 実行時に サインインの GUI 画面が起動するようになっているため、SSH に X11 で画面転送をする設定を追加します。

sudo dnf install xauth Code language: Bash (bash)

で xauth をインストールし、次に SSH のコンフィグを変更します。

sudo vi /etc/ssh/sshd_config Code language: Bash (bash)

X11Forwarding yes 」と「UseLocalhost yes」に変更します。

変更後に以下のコマンドで SSH デーモンを再起動します。

sudo systemctl restart sshd Code language: Bash (bash)

そしてクライアントPCから SSH の再接続をおこなうと X11 の転送が反映されます。

ライブラリの追加インストール

上記だけでは MATLAB を起動しようとすると libgtk-x11-2.0.so.0 ファイルが足りないなどのエラーが多発するので必要なライブラリをインストールします。

そのときに便利なのは「dnf provides」のコマンド。ファイルが見つからないときにどのライブラリを入れれば良いのかが分かります。例えば「libgtk-x11-2.0.so.0」を探すには

sudo dnf provides '*/libgdk-x11-2.0.so.0' Code language: Bash (bash)

と実行すると、

Last metadata expiration check: 0:14:56 ago on Fri 27 Jan 2023 04:51:34 AM UTC. 

gtk2-2.24.32-5.el8.i686 : GTK+ graphical user interface library 

Repo        : appstream 

Matched from: 

Filename    : /usr/lib/libgdk-x11-2.0.so.0 

 

gtk2-2.24.32-5.el8.x86_64 : GTK+ graphical user interface library 

Repo        : appstream 

Matched from: 

Filename    : /usr/lib64/libgdk-x11-2.0.so.0 Code language: Bash (bash)

というリターンが返ってくるので、64 ビットのマシンなので「gtk2-2.24.32-5.el8.x86_64」をインストールすれば良いんだなというのが分かります。

とりあえず MATLAB が起動できるまでに必要なライブラリは以下のとおりです。

sudo dnf install gtk2-2.24.32-5.el8.x86_64 nss-3.79.0-10.el8_6.x86_64 at-spi2-atk-2.26.2-1.el8.x86_64 libdrm-2.4.111-1.el8.x86_64 mesa-libgbm-22.1.5-2.el8.x86_64 alsa-lib-1.2.7.2-1.el8.x86_64 libglvnd-glx-1:1.3.4-1.el8.x86_64 libXdmcp-1.1.3-1.el8.x86_64Code language: Bash (bash)

MATLAB の起動

それでは MATLAB を起動してみます。MPM でのインストール時に「/app/matlab/」をインストールディレクトリにしたので、

/app/matlab/bin/matlab 

を実行します。すると、サインインの画面が出てきますので、MathWorks アカウントのメールアドレスとパスワードを入力します。

AWSのAlmaLinuxのEC2に構築したMATLAB起動時のサインイン画面
AWSのAlmaLinuxのEC2に構築したMATLAB起動時のサインイン画面

ライセンス認証が通れば、MATLAB デスクトップが起動されます。AlmaLinux でまだ日本語パックを入れていないので英語の GUI になっています。

AWSのAlmaLinuxのEC2に構築したMATLABデスクトップ
AWSのAlmaLinuxのEC2に構築したMATLABデスクトップ

以上、AWS クラウドの AlmaLinux のEC2 インスタンスに MATLAB 環境を構築する手順をご紹介しました。コツさえ分かってしまえばそこまで難しくないはずです。

関連記事

【AWS】EC2インスタンスでAlmaLinuxを使う手順

Categories:

No responses yet

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です