MATLABをインス​トールする際、ライセ​ンスファイルはlic​ense.datを選​択すればいいのですか​?

MATLABをインストールする際、ライセンスファイルにlicense.datを選択してインストールすると、インストール後MATLABを起動しようとした時に以下のようなエラーが表示され立ち上げることができません。解決策を教えてほしいです。
License checkout failed.
License Manager Error -15
Unable to connect to the license server.
Check that the network license manager has been started, and that the client machine can communicate with the license server.

 Respuesta aceptada

Kojiro Saito
Kojiro Saito el 7 de Dic. de 2023

2 votos

license.datファイルを使うのは、コンカレントライセンスというライセンスマネージャーを使用するタイプです。license.datの中の「SERVER」で始まる行に書いてあるホスト名がライセンスマネージャーが起動するマシンなのですが、このマシンでライセンスマネージャーが起動されている必要があります。
ライセンスエラー15はこちらの回答にあります。今回はクライアントマシンでこのエラーが生じているのでこちらが解決策ですが、(1) ライセンスファイルの記述の問題、(2) ネットワークの問題、(3) ライセンスサーバ上のライセンスマネージャの問題のそれぞれをご確認ください。

12 comentarios

輝
el 7 de Dic. de 2023
返信ありがとうございます。リンクにアクセスし解決策を拝見させて頂いたのですが、license.datは以下のディレクトリ内にないとおかしいのでしょうか?
$MATLAB\flexlm(もしくは etc)
MATLAB内にflexlmというフォルダもetcというフォルダも存在していないので、どうすればよいか教えていただきたいです。
Kojiro Saito
Kojiro Saito el 7 de Dic. de 2023
Editada: Kojiro Saito el 7 de Dic. de 2023
いえ、上記リンクの「(0)準備」にあるlicense.datの場所は、ライセンスを管理するライセンスマネージャー(ライセンスサーバー)のマシンの話なので、MATLABクライアントには関係ありません。
クライアントは「(1) ライセンスファイルの記述の問題」にあるnetwork.licが置いてある必要があります。
$MATLAB\licenses\network.lic
network.licがもしなければ、licensesフォルダー内にnetwork.licという空ファイルを作り、license.datに書いてある「SERVER」行の情報を1行目に、「USE_SERVER」を2行目に書いて保存します。
SERVER ライセンスサーバーのホスト名 0123456789AB 27000
USE_SERVER
ただ、今回はライセンスサーバーとの通信も関係してそうなので、リンクの回答にある「(2) ネットワークの問題」も確認する必要があると思われます。
輝
el 7 de Dic. de 2023
Editada: el 7 de Dic. de 2023
返信ありがとうございます。network.licは置いてありました。では添付した画像のようにMATLABをインストールする際は、ライセンスファイルにnetwork.licを選択してインストールしないといけないということでしょうか?(画像ではlicense.datになっていますが、ここをnetwork.licに変更するべきなのでしょうか?)
「(2)ネットワークの問題」は確認してみたのですが、問題ないと思います。
Kojiro Saito
Kojiro Saito el 7 de Dic. de 2023
Editada: Kojiro Saito el 7 de Dic. de 2023
インストール時のライセンスファイルはlicense.datを指定するのが正しいです。
ネットワーク ライセンス ファイルの更新または変更のドキュメントの「クライアント コンピューターへの MATLAB のインストール中」に処理フローが書かれています。
インストーラーを実行するには、まずネットワーク ライセンス マネージャーのインストール中に構成された license.dat ファイルをコピーし、クライアント マシンまたはネットワークからアクセス可能な場所のいずれかに配置する必要があります。
次に、インストール中に、インストーラーは license.dat のコピーを作成し、それを処理してライセンス ファイルから INCREMENT 行と DAEMON 行を削除して、SERVER 行はそのまま残します。また、ファイルにステートメント USE_SERVER を追加します。この行はクライアントにサーバー上のネットワーク ライセンス ファイルを指定します。ファイルには製品のすべてのパスコードが記載されています。
この構成済みファイルに network.lic という名前を付け、そのファイルを matlabroot\licenses に配置します。
インストール時にlicense.datを指定すれば、インストール中にlicensesフォルダーにnetwork.licのファイルを作ります。license.datはインストール後は不要で、MATLABが起動するときにはこのlicensesフォルダにあるnetwork.ilcのファイルを見てライセンスサーバーに通信しに行きます。
「(2)ネットワークの問題」が問題なくてライセンスエラー15が出るということは、ライセンスマネージャーが起動していないか、ポート番号がファイアウォールでブロックされている可能性があります。
ライセンスマネージャーの起動についてはこちらのドキュメントを参考にライセンスマネージャーを起動を試してみてください。
ポート番号がブロックされているかの確認は例えばWindowsだったPowerShellで
Test-NetConnection server1 -port 27000
のコマンドで確認できます。server1はライセンスマネージャーのホスト名に置き換えてください。TcpTestSucceededがFalseになるとライセンスマネージャーがLISTENしていないか、ファイアウォールでブロックされている可能性があります。
輝
el 7 de Dic. de 2023
返信ありがとうございます。license.dat ファイルは$MATLAB内のどのフォルダーに置いておくのが最適なのでしょうか?
ポート番号がブロックされているかをWindowsのPowerShellで確認してみたのですが、TcpTestSucceededがFalseになったので、改善できるようにファイアウォールなどを確認してみます。
Kojiro Saito
Kojiro Saito el 7 de Dic. de 2023
license.datファイルはインストールに使うだけなので、デスクトップのような任意のフォルダーに置いておき、インストール時にライセンスファイルのパスを指定するときだけ使用します。インストールが終わったらlicense.datは削除してしまって問題ありません。MATLABは起動時にnetwork.licを使い、license.datは使用しません。
輝
el 7 de Dic. de 2023
返信ありがとうございます。license.datについては理解できました。
3つ前の返信の内容のライセンスマネージャーがLISENしていない状態とはどういう状態のことですか?
Kojiro Saito
Kojiro Saito el 7 de Dic. de 2023
LISTEN (待ち受ける)のタイポなので修正しました。ライセンスマネージャーが起動していないために、TCPのポート番号27000で待ち受けていないというのが「LISTENしてない」状態です。
輝
el 7 de Dic. de 2023
返信ありがとうございます。理解できました。
別件なのですが、ファイアウォールのポートがブロックされていた件に関してなのですが、ポートの解放ができたので、WindowsのPowerShellはTrueになり、接続できたと思うのですが、まだMATLABを起動しようとすると、同じエラーメッセージが出ます。これを解決するために色々調べていたら、ポートは2つ使うので、もう1つのベンダーデーモンで使用されるポートも開放するべきという回答を見つけました。その回答ではもう1つのポートはセットされていないと無作為に選ばれると記載があるので、セットしたいのですが、セットするにはライセンスマネージャー側のマシンから以下のようにlicense.datのデーモン行を書き換えるべきなのでしょうか?またポートの数は何が最適なのでしょうか?
DAEMON MLM "C:\Program Files\MATLAB\R2010b\etc\win32\mlm.exe" port=1049
Kojiro Saito
Kojiro Saito el 7 de Dic. de 2023
MATLAB のライセンスマネージャー(FlexLM)はTCPのポート番号を2つ使用します。1つはライセンス マネージャー デーモン (lmgrd)でデフォルトのポート番号が27000、もう一つがMLMというベンダー デーモンで、デフォルトはランダムなポート番号を使用します。
ライセンスマネージャーのファイアウォールでポート番号ではなく実行プロセス(mlm.exe)のパスを指定する方法もありますが、おっしゃるとおりポート番号を指定したほうが簡単です。
ライセンスマネージャー側のマシンの<ライセンスマネージャーのインストールフォルダー>\etc\license.datのファイルをメモ帳などのエディターで編集し、「DAEMON」で始まる行に「port=指定したいポート番号」を追加します。
ポート番号は他のアプリケーションでよく使用するウェルノウンポート(ポート80とか3389など)と違っていれば問題ないですが、lmgrdが27000ならMLMを27001とかにしておくことが多いです。
SERVER ライセンスサーバーのホスト名 0123456789AB 27000
DAEMON MLM "C:\Program Files\MATLAB\R2023b\etc\win64\MLM.exe" port=27001
USE_SERVER
上の「C:\Program Files\MATLAB\R2023b\」のところはライセンスマネージャーのインストールフォルダーに置き換えてください。
そして、ライセンスマネージャーのサービス(Windowsだと「MATLAB License Server」というサービス名)を再起動して、ファイアウォールでもポート番号27001も開放するようにしてください。
輝
el 8 de Dic. de 2023
返信ありがとうございます。無事解決できました。長い間ありがとうございました。
Kojiro Saito
Kojiro Saito el 8 de Dic. de 2023
解決できて良かったです。最後に「この回答を採用」ボタンを押していただいて、回答のAcceptをお願いいたします。

Iniciar sesión para comentar.

Más respuestas (0)

Productos

Versión

R2023b

Etiquetas

Preguntada:

輝
el 6 de Dic. de 2023

Comentada:

el 8 de Dic. de 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!