MATLAB を EC2 インスタンスに CLI でインストールを試してみた

MATLAB を EC2 インスタンスに CLI でインストールを試してみた

EC2上のUbuntuでMATLABをコマンドラインツール(mpm)を使ってインストールしてみました。評価版ライセンスの取得からスクリプト実行まで、GUI不要でセットアップできる手順をまとめています。
2026.09.21

はじめに

研究者の方から立て続けに相談をいただきました。MATLAB を手元の PC ではなく、ワークステーションやサーバーでパワーのある環境で実行したいと。評価版のラインセンスを使ってサーバー(EC2)へのインストール方法を確認しました。今回は MATLAB Package Manager(mpm)を使いました。MathWorks 公式のコマンドラインツールで非対話形式でのインストールができます。

illust-01-why-server

確認結果

MATLAB のライセンスについては販売店や、サポートへご確認ください。 インストール自体は難しくはありませんでした。

  • ライセンスの取得だけは WEB ブラウザからログインして操作が必要
  • 評価版ライセンスの発行には起動後の EC2 の MAC アドレスとログイン名が必要になる
  • EC2 上では GUI を使わずに mpm で MATLAB R2026a を導入し、matlab -batch でスクリプトを実行できた
  • 依存パッケージのインストールと本体のインストールを合わせて 1 分 20 秒ほどで済む

検証環境

インスタンスタイプは MATLAB のシステム要件をベースに選びました。Linux 版が対応するアーキテクチャは x86-64 のみです。推奨メモリ 16 GB を満たす m7i.xlarge を選びました。また、Ubuntu 26.04 はサポート対象外だったので 24.04 を利用しています。

https://jp.mathworks.com/support/requirements/matlab-linux.html

項目
リージョン アジアパシフィック(東京)
AMI Ubuntu Server 24.04 LTS(x86-64)
インスタンスタイプ m7i.xlarge(4 vCPU / 16 GiB)
ルートボリューム gp3 30 GiB
購入オプション スポットインスタンス
MATLAB バージョン R2026a(Update 5)
確認日 2026/09/20

インスタンスには IAM ロールをアタッチ済みです。Session Manager 用の AmazonSSMManagedInstanceCore と、ライセンスファイルを置く S3 バケットへの s3:GetObject を許可しています。EC2 の構築手順は省略します。

公式のインストール手順

MATLAB の導入手順は MathWorks 公式の mpm のドキュメントをベースにしています。

https://www.mathworks.com/help/install/ug/mpminstall.html

illust-02-install-flow

ライセンス発行に必要なホスト情報を取得する

Individual の評価版ライセンスは、ホスト ID とログイン名の紐づけが必要になります。Linux のホスト ID は NIC の MAC アドレスのことを指しています。そのため EC2 インスタンスを先に起動し MAC アドレスを調べる必要がありました。

illust-03-license-binding

Session Manager で接続し、sudo su - ubuntuubuntu に切り替えてから以降のコマンドを実行します。

ip -o link で確認します。

ip -o link

lo はループバックなのでもう一方の link/ether に続く値が MAC アドレスです。今回の m7i.xlarge では NIC 名が enp39s0 でした。

実行結果
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000\    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp39s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP mode DEFAULT group default qlen 1000\    link/ether 06:ff:d0:6a:53:e7 brd ff:ff:ff:ff:ff:ff

ライセンスファイルを取得する

MathWorks のライセンスセンターで対象ライセンスを開き、「インストールとアクティベーション」タブを選びます。右側の関連タスクにある「アクティベーションを実行してライセンス ファイルを取得」へ進みます。

ライセンスセンターのインストールとアクティベーションタブ

オペレーティング システムに Linux を選び、ホスト ID の欄へ先ほどの MAC アドレスを入力します。同じフォームを下にスクロールするとコンピューターのログイン名の欄があります。ここに AMI 規定のユーザー ubuntu を指定します。

ホスト ID の入力フォーム

入力を終えるとライセンスファイルのダウンロード画面に進みます。見出しに ubuntu (ホスト ID ...) と表示され、どの組み合わせでアクティベーションされたかを確認できます。手順 1 の「ライセンス ファイルをダウンロード」から取得します。

ライセンスファイルのダウンロード画面

同じ画面にファイル インストール キーも表示されますが、mpm でインストールする手順では使いませんでした。

ダウンロードしたライセンスファイルは、インスタンスへ転送するために S3 バケットへアップロードしておきます。

依存パッケージと AWS CLI を導入する

MATLAB は GUI を使わない場合でも、共有ライブラリとして X 関連のパッケージを要求します。MathWorks 公式の依存パッケージ一覧を取得して apt で導入します。あわせて、S3 からライセンスファイルを取得するための AWS CLI も入れます。導入には AWS 公式の snap パッケージを使いました。

cd ~
wget -q https://raw.githubusercontent.com/mathworks-ref-arch/container-images/main/matlab-deps/r2026a/ubuntu24.04/base-dependencies.txt
sudo apt-get update
sudo DEBIAN_FRONTEND=noninteractive xargs -a base-dependencies.txt apt-get install -y --no-install-recommends
sudo snap install aws-cli --classic

所要時間は 41 秒でした。

MATLAB Package Manager を使ってインストールする

mpm バイナリを取得して実行権限を付与し、インストールを実行します。MATLAB は $HOME 配下に .matlab/R2026a などの設定ディレクトリを作成するため、sudo 実行時も HOME=/home/ubuntu を明示します。

cd ~
wget -q https://www.mathworks.com/mpm/glnxa64/mpm
chmod +x mpm
sudo HOME=/home/ubuntu ./mpm install \
    --release=R2026a \
    --products MATLAB \
    --destination=/opt/matlab/R2026a

mpm install は製品のダウンロードを含めて 40 秒で完了しました。

依存パッケージの導入前のルートボリューム使用量は 2.2 GiB、導入後は 3.3 GiB でした。mpm 実行後は /opt/matlab/R2026a 単体で 4.7 GiB。MATLAB 単体なら 30 GiB のルートボリュームで余裕があります。MATLAB 全製品を入れる場合は公式要件では 26 GB が必要とのことです。

コマンドを呼び出せるよう、シンボリックリンクを作成します。

sudo ln -s /opt/matlab/R2026a/bin/matlab /usr/local/bin/matlab

ライセンスファイルを配置する

S3 に置いた license.lic を取得し、MATLAB のライセンスディレクトリに配置します。

sudo mkdir -p /opt/matlab/R2026a/licenses
sudo aws s3 cp s3://<バケット>/license/license.lic /opt/matlab/R2026a/licenses/

せっかくなのでライセンスファイルをちょっと見てみます。

head -12 /opt/matlab/R2026a/licenses/license.lic

06FFD06A53E7 は MAC アドレスからコロンを除いた大文字表記、7562756E7475 はログイン名 ubuntu の ASCII 16 進表記です。

実行結果(抜粋)
INCREMENT MATLAB MLM 55 20-oct-2026 uncounted E27CBCCEBADB \
	VENDOR_STRING=vi=30:at=186:lu=100:ei=14093920:lr=1:ep=7: \
	HOSTID=MATLAB_HOSTID=06FFD06A53E7:7562756E7475 \
	ISSUED=20-Sep-2026 NOTICE=product=MATLAB SN=DEMO TS_OK \

動作確認

バージョン情報を確認する

バージョン情報を出して matlab コマンドが実行できることを確認します。

matlab -batch "ver"
echo "EXIT_CODE=$?"

バージョン情報を確認できました。先頭の警告は ~/Documents/MATLAB がない間、実行のたびに出ます。mkdir -p ~/Documents/MATLAB を実行しておくと出なくなります。

実行結果
[Warning: Unable to locate a personal folder for $documents/MATLAB.]

	Trial License -- for use to evaluate programs for possible purchase as an end-user only.

---------------------------------------------------------------------------------------------------------
MATLAB Version: 26.1.0.3346908 (R2026a) Update 5
MATLAB License Number: DEMO
Operating System: Linux 7.0.0-1012-aws #12~24.04.1-Ubuntu SMP PREEMPT Wed Aug 12 14:00:57 UTC 2026 x86_64
Java Version: Java is not loaded
---------------------------------------------------------------------------------------------------------
MATLAB                                                Version 26.1        (R2026a)
EXIT_CODE=0

テストスクリプトを実行する

動作確認用のスクリプトは Claude に作ってもらいました。MATLAB の組み込み関数だけを使う内容で、/home/ubuntu/testscript.m として保存します。

fprintf('MATLAB version: %s\n', version);
A = magic(5);
fprintf('magic(5) diagonal sum: %d\n', sum(diag(A)));
writematrix(A, '/home/ubuntu/magic5.csv');
fprintf('wrote /home/ubuntu/magic5.csv\n');

スクリプトと同じディレクトリで実行します。/home/ubuntu/magic5.csv が生成されます。

cd ~
matlab -batch "testscript"
実行結果(抜粋)
MATLAB version: 26.1.0.3346908 (R2026a) Update 5
magic(5) diagonal sum: 65
wrote /home/ubuntu/magic5.csv

matlab コマンドで実行もできたし、組み込み関数も使えているので最低限の動作確認としては OK とします。

まとめ

Ubuntu 24.04 の EC2 に GUI を使わず mpm で MATLAB R2026a を導入できました。matlab -batch でのスクリプト実行まで確認できています。依存パッケージの導入と本体インストールは合わせて 1 分 20 秒ほどでした。時間がかかったのはライセンスの準備でした。Individual の評価版は、起動後に判明する MAC アドレスとログイン名がないと発行できません。

おわりに

EC2 で動かす前提で CLI を試しました。ドキュメント確認に時間がえらいかかりましたが、インストールはすんなりいってよかったです。スクリプトの実行なら CLI で十分だろうと思って始めました。ただ、不慣れな研究者が手を動かすなら GUI のほうがよかったかと途中で思いました。再現性のある手順という意味では CLI でインストール手順は確認したかったので良しとします。MAC アドレスが変わるとライセンスの取り直しになります。ENI は終了時に削除しない設定が安心です。

参考

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事