Wolfram Computation Meets Knowledge

LinuxにwebMathematicaをインストールして設定する方法

webMathematicaを使うためには,Java,Servletコンテナ,およびMathematicaがシステムにインストールされていなければなりません.Mathematica (ひいてはwebMathematica)の機能の中には,Mathematicaのフロントエンドを使用しなければならないものもあります.そしてフロントエンドを使用するには,Linux上にX Window Systemがインストールされていなければなりません.webMathematicaをインストールするステップは以下の通りです.

  1. Javaの設定
  2. Tomcatの設定
  3. Mathematicaの設定
  4. webMathematicaがライセンスファイルにアクセスできるようにする方法
  5. webMathematicaをインストールして設定する方法
  6. MinimalあるいはServerエディションのLinux用にXvncを設定する方法

 

Javaの設定

Javaは,webMathematicaだけでなく,Java Servletコンテナにも必要です.OracleのJavaは,http://www.oracle.com/us/downloads/index.htmlからダウンロードできます.

Linuxディストリビューションの中には,Javaパッケージがコマンドラインあるいはソフトウェアセンターを通してインストールできるものもあります.

RedHat/CentOS/Fedora

sudo yum install java-1.8.0-openjdk
sudo yum install java-1.8.0-openjdk-devel 

Debian/Ubuntu

sudo apt install openjdk-8-jre
sudo apt install openjdk-8-jdk

インストールに成功したかどうかを確かめるために,コマンドライン上で以下を実行します.

java -version

 

 

Tomcatの設定

インストール

webMathematicaは,Java Servletコンテナ内から操作するように設計されています.さまざまなServletコンテナの使用が可能ですが,ここではApache Tomcatの設定手順についてのみ,簡単に説明します.

  1. http://tomcat.apache.org/download-80.cgiを開きます.
  2. tar.gzという形式のインストーラをダウンロードします.
  3. サーバをインストールしたい場所に移動します.例えば/usr/localにインストールしたい場合は以下を実行します.
    cd /usr/local
  4. 現在の場所でインストーラを解凍します.
    tar -xvzf apache-tomcat-<version>.tar.gz

Tomcatのテスト

  1. Tomcatサーバを起動するには,Tomcatのインストールディレクトリで以下を実行します.
    ./bin/startup.sh
  2. Webブラウザを開き,「localhost:8080」にアクセスします.Tomcatが正しく設定されている場合には,以下と同じようなページが開きます.

  3. Tomcatサーバを終了するためには,同じディレクトリで以下を実行します.
    ./bin/shutdown.sh

考えられる問題

  • コンピュータのファイアウォールがTomcatへのリクエストをブロックしている場合があります.Tomcatはデフォルトでポート8080上で実行されます.Tomcatサーバを実行しているシステム上でtcpパケットが受信できるようにポートが開かれているかどうかを確かめてください.
  • OracleのWebサイトからJavaをダウンロードした場合に,TomcatサーバがJavaのインストールを見付けられないことがあります.そのような場合には,システム変数JAVA_HOMEをJavaのインストールディレクトリに設定してください.例えば,Javaが/usr/local/jdk1.8.0にインストールされているという場合には,bashコマンドラインで以下を実行,またはこれらのコマンドを.bashrcに追加してください.
    JAVA_HOME=/usr/local/jdk1.8.0
    export JAVA_HOME

Tomcatアカウントの作成(推奨)

Tomcatサーバ(通常「tomcat」と呼ばれる)を実行するための専用のユーザアカウントを作成することをお勧めします.このアカウントはTomcatサーバを実行するための承認が必要です.

  1. アカウントを作成するためには,ターミナルで以下を実行します.
    sudo useradd tomcat
    sudo passwd tomcat
  2. apache-tomcatサーバをインストールしたディレクトリの親ディレクトリから以下のコマンドを実行して,Tomcatのインストールディレクトリの所有者とグループを「tomcat」ユーザに変更します.
    sudo chown -R tomcat apache-tomcat-<version>
    sudo chgrp -R tomcat apache-tomcat-<version>
  3. 新しいユーザアカウントを使ってサーバを起動します.
    su tomcat
    cd apache-tomcat-<version>/bin
    ./startup.sh
  4. Webブラウザを開き,「localhost:8080」にアクセスします.ユーザが正しく設定されていたら,以下のTomcatのランディングページが開きます.

Mathematicaの設定

Mathematicaをインストールし,Mathematicaをアクティベートして,生成されたライセンス情報を,使用するマシンで大域的にアクセスできる場所に置きます.

インストール

LinuxにMathematicaをインストール方法の手順に従ってください.
必ず適切なファイル名をお使いください.

sudo sh Mathematica_12.x_LINUX.sh

デフォルトのディレクトリを使用しない場合は,選択したインストールディレクトリをコマンドに使用することを忘れないでください.

アクティべーション

オンラインまたは手動のアクティべーションを使って,Mathematicaをアクティベートします.

X WindowがインストールされていないLinuxでは,Mathematicaのフロントエンドを使用することはできません.カーネルからMathematicaをアクティベートしてください.

  1. 以下のコマンドを実行します.
    math
  2. アクティベーションキーを入力してください.アクティベーションキーの形式はXXXX-XXXX-XXXXXXです.

webMathematicaがライセンスファイルにアクセスできるようにする方法

Mathematicaはデフォルトでそのライセンス情報をユーザ固有の場所にあるmathpassファイル内に置きます.使用しているwebMathematicaでライセンス情報にアクセスできるようにするには,mathpassファイルを大域的にアクセス可能なMathematicaのベースディレクトリにコピーして,すべてのアカウントがファイルを読み取れるようにパーミッションを設定します.

  1. mathpassファイルの場所を調べたい場合には,Mathematicaで以下を評価します.
    $PasswordFile
  2. ベースディレクトリの場所を調べたい場合には,以下を評価します.
    $BaseDirectory

例:

In[1]:= $PasswordFile 
Out[1]= /home/user/.Mathematica/Licensing/mathpass
In[2]:= $BaseDirectory 
Out[2]= /usr/share/Mathematica

これらのフォルダの場所は,以下の手順で必要になります.

  1. Licensingディレクトリがまだ存在しないという場合もあります.その場合には,以下のコマンドを実行してこのディレクトリを作成します.
    sudo mkdir -p /usr/share/Mathematica/Licensing
  2. mathpassファイルをベースディレクトリのLicensingディレクトリにコピーします.
    sudo cp /home/user/.Mathematica/Licensing/mathpass 
    /usr/share/Mathematica/Licensing/. 
  3. すべてのアカウントについて,mathpassファイルへの読取りアクセスを許可します.
    sudo chmod a+r /usr/share/Mathematica/Licensing/mathpass

webMathematicaをインストールして設定する方法

インストール

  1. ユーザポータルからwebMathematicaのインストールファイルをダウンロードして,解凍します.
  2. 解凍したwebMathematicaディレクトリをApache Tomcatサーバのwebappsディレクトリに置きます.ここで$TOMCAT_INSTALLはTomcatサーバのインストールディレクトリです.
    sudo mv webMathematica $TOMCAT_INSTALL/webapps/
  3. サーバを実行するためのtomcat userを作成した場合は,webMathematicaフォルダの所有者も変更してください.
    sudo chown -R tomcat $TOMCAT_INSTALL/webapps/webMathematica
    sudo chgrp -R tomcat $TOMCAT_INSTALL/webapps/webMathematica
  4. フォルダを所有するアカウントからサーバを再起動します.
    su tomcat
    cd $TOMCAT_INSTALL/bin
    ./shutdown.sh
    ./startup.sh

テストとトラブルシューティング

webMathematicaパッケージには,webMathematicaの設定のテストに使えるデフォルトページが含まれています.

  1. ブラウザで「localhost:8080/webMathematica」を指定して,ベースページにアクセスします.
  2. 最初のテストとして,Hello Worldの例をクリックします.実行時の時間と日付を提供するHello Worldページが表示されます.
  3. Hello Worldがうまく作動しない場合には,以下を実行してログファイルをチェックします.
    less $TOMCAT_INSTALL/logs/webMathematica.log

考えられる問題

上記のログファイルでエラー....com.wolfram.kerneltools.state.StateMachine [ERROR] Could not find MathLink executableを探します.このエラーが生じた場合,webMathematicaがMathematicaカーネルの実行ファイルを見付けられなかったことを示しています.このエラーは,Mathematicaを非標準的な場所にインストールした場合,あるいはお使いのwebMathematicaが推奨されるバージョンのMathematicaと一緒に使われていない場合に起ります.例えば,webMathematica 3.5.2はMathematica 12.2に対応する等です.現在サポートされている製品のバージョンと一緒に使うのに推奨されるバージョンはこちらでご覧ください

正しいバージョンのMathematicaと一緒に使われるようにするには,webMathematicaを設定する必要があります.

  1. コマンドラインで,$TOMCAT_INSTALL/webapps/webMathematica/WEB-INF/に進み,ファイルMSPConfiguration.xmlを見付けます.
  2. テキストエディタでMSPConfiguration.xmlを開き,以下のセクションを見付けます.
  3. <KernelPool>
          <KernelPoolName>General</KernelPoolName>
          <URLPattern>/*</URLPattern>
    </KernelPool>
  4. このセクションを編集し,以下のように変更します.
    <KernelPool>
          <KernelPoolName>General</KernelPoolName>
          <KernelExecutable>
          /usr/local/Wolfram/Mathematica/12.x/Executables/MathKernel
          </KernelExecutable>
          <URLPattern>/*</URLPattern>
    </KernelPool>
  5. 注意:ここでは,Mathematica 12.xが/usr/local/Mathematica/12.x/にインストールされているものとしています.インストールディレクトリが異なる場合には,その使用したインストールディレクトリで置き換えてください.

MinimalあるいはServerエディションのLinux用にXvncを設定する方法

Linuxの「Server」あるいは「Minimal」のディストリビューションの多くには,デフォルトではX Windowは含まれていません.Mathematica(ひいてはwebMathematica)の機能の中には,X Windowサーバを使用しなければならないものもあります.例えばPlot Exampleは,何らかのX Window Systemがなければ,正しく実行することができません.このような場合には,Xvncサーバを実行することをお勧めします.

  1. Xvncサーバをインストールします.このサーバは,yumあるいはaptのようなコマンドラインのインストールアプリケーションを通して取得することができます.
  2. コマンド「vncserver」でvncディスプレイを起動します.最初にこれを起動する場合には,ディスプレイ番号(通常は1)を提供する必要があります.
  3. 以下のコードを含むようにファイル$TOMCAT_INSTALL/webapps/webMathematica/WEB-INF/MSPConfiguration.xmlを編集し,webMathematicaを設定してディスプレイを使用します.
    <KernelPool>
    ....
    <FrontEndLaunchFlags>
    -display :1 -nogui -geometry 1000x500+10+10
    </FrontEndLaunchFlags>
    ....
    </KernelPool>

[English]

この項目は役に立ちましたか?
はい
いいえ

ご意見・ご提案がおありでしたらお書きください.

フィードバックをありがとうございました.

送信

サポートへのお問合せ

お支払い,アクティベーションに関する質問から技術的な質問まで,お気軽にお問い合せください.

販売代理店 (ライセンスをお持ちの方は、ご購入された代理店にお問い合わせください)

Hulinks

電話:03-5642-8380
Fax:03-5642-8381

soft.sales@hulinks.co.jp
Webサイト

日本電子計算株式会社

電話:03-5210-0184
Fax:03-5210-0229

math_info@cm.jip.co.jp
Webサイト

亘香通商株式会社

電話:045-320-2711
Fax:045-320-9342

sales@senko-corp.co.jp
Webサイト

株式会社シーエムディーラボ

電話:03-3408-8406
Fax:03-3408-8406

info@cmdlab.co.jp
Webサイト