Wolfram Computation Meets Knowledge

Установка и конфигурирование webMathematica на Linux

Для работы webMathematica необходимо наличие на вашей системе установленных Java, контейнера сервлетов и системы Mathematica. Некоторые функциональные возможности системы Mathematica, а поэтому и webMathematica, полагаются на использование пользовательского интерфейса (Front End) системы Mathematica. Пользовательский интерфейс, в свою очередь, опирается на оконную систему X Window System операционной системы Linux. Для установки webMathematica необходимо проделать следующие шаги:

  1. Установка Java
  2. Установка сервера Tomcat
  3. Установка системы Mathematica
  4. Предоставление доступа пользователю “Tomcat” к файлам лицензирования
  5. Установка и конфигурирование webMathematica
  6. Конфигурирование Xvnc в минимальном или серверном варианте операционной системы Linux

 

Установка Java

Наличие Java необходимо не только для работы webMathematica, но также и для работы любого контейнера Java сервлетов. Загрузить Java от компании Oracle можно по адресу 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-get install openjdk-8-jre
sudo apt-get install openjdk-8-jdk

Для проверки правильности работы установки выполните в командной строке следующую команду:

java -version


 

Установка Tomcat

Установка

webMathematica проектировалась для работы из контейнера Java сервлетов. Среди множества контейнеров Java сервлетов, эта инструкция вкратце освещает только
использование Apache Tomcat.

  1. Откройте страницу http://tomcat.apache.org/download-80.cgi.
  2. Загрузите установочное приложение в формате apache-tomcat-N.M.QQ.tar.gz, где N.M.QQ обозначает номер версии загружаемого приложения Tomcat.
  3. В директории, в которой вы желаете установить сервер, выполните следующую команду:
    sudo tar -xvzf apache-tomcat-N.M.QQ.tar.gz

Создание учетной записи пользователя для Tomcat

Для работы сервера Tomcat рекомендуется создать отдельную учетную запись, отведенную серверу, как правило, с именем пользователя “tomcat”. Этот пользователь должен обладать достаточными правами доступа, чтобы запускать webMathematica.

  1. Для создания учетной записи выполните в терминале следующую команду:
    sudo useradd tomcat
    sudo passwd tomcat
  2. Измените права доступа к директории, где установлен сервер Tomcat, предоставив их пользователю “tomcat”, исполнив следующие команды из родительской папки, относительно той, где установлен сервер apache-tomcat:
    sudo chown -R tomcat apache-tomcat-N.M.QQ
    sudo chgrp -R tomcat apache-tomcat-N.M.QQ

Тестирование Tomcat

  1. Для того, чтобы запустить сервер Tomcat в директории, где установлен Tomcat выполните следующую команду:
    ./bin/startup.sh
  2. Откройте веб-браузер, наберите в адресной строке “localhost:8080” и откройте эту страницу. При правильной установке сервера Tomcat открытая страница будет похожа на следующую:

Часто возникающие затруднения:

  • Система сетевой защиты вашего компьютера блокирует запросы, направленные к серверу Tomcat. Сервер Tomcat по умолчанию работает с портом 8080. Проверьте, что на системе, где установлен сервер Tomcat по этому порту разрешен прием TCP пакетов.
  • Если вы загрузили Java с веб-сайта компании Oracle, сервер Tomcat может не находить где установлена Java. В таком случае установите значение системной переменной JAVA_HOME абсолютному адресу директории, где установлена Java, например, путем выполнения следующей команды или добавления ее в скрипт .bashrc в случае, если Java установлена в директории /usr/local/jdk1.8.0.
    JAVA_HOME=/usr/local/jdk1.8.0
    export JAVA_HOME

Установка системы Mathematica

Вам нужно будет установить систему Mathematica, активировать ее и перенести информацию о лицензировании использования системы Mathematica в директорию с общими правами доступа на вашем компьютере.

Установка

Установите систему Mathematica запустив установочную программу для Linux следующим образом:

sudo sh Mathematica_11.x_LINUX.sh

Запомните выбранную вами директорию установки, если изменили путь директории, используемый по умолчанию.

Активация

Активируйте систему Mathematica, используя онлайн активацию или активируя ее вручную.

На системах Linux, где не установлена оконная система X Window, программа интерфейса пользователя системы Mathematica не будет работать. В таком случае, активируйте системы Mathematica из терминала вычислительного ядра.

  1. Выполните следующую команду:
    math
  2. Введите ключ активации. Внимание, ключ имеет форму XXXX-XXXX-XXXXXX.

Предоставление доступа пользователю “Tomcat” к файлам лицензирования

По умолчанию система Mathematica размещает информацию лицензирования в файле mathpass, расположенном в директории, отведенной конкретному пользователю. Для того, чтобы пользователь “Tomcat” имел доступ к файлу, содержащему информацию лицензирования, скопируйте файл mathpass в основную директорию системы Mathematica и установите права доступа, дающие возможность всем пользователям читать его содержимое.

  1. Для того, чтобы определить адрес файла mathpass file в системе Mathematica выполните следующую команду:
    $PasswordFile
  2. Для того, чтобы определить адрес основной директории выполните команду:
    $BaseDirectory

    Например:

    Mathematica 11.x.x Kernel for Linux x86 (64-bit)
    Copyright 1988-2017 Wolfram Research, Inc.
    
    In[1]:= $PasswordFile                                                          
    
    Out[1]= /home/user/.Mathematica/Licensing/mathpass
    
    In[2]:= $BaseDirectory                                                          
    
    Out[2]= /usr/share/Mathematica
    

Используйте абсолютные адреса этих директорий при выполнении последующих инструкций.

  1. Директории Licensing может еще не существовать. В таком случае создайте ее, выполнив следующую команду:
    sudo mkdir /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

Установка

Установочные файлы webMathematica содержат файл webMathematica.zip. Поместите его в директорию webapps вашего сервера Apache Tomcat для того, чтобы при запуске сервера этот файл открывался и распаковывался. Предполагая, что переменная $TOMCAT_INSTALL содержит абсолютный путь к директории установки вашего сервера Tomcat, выполните следующие команды:

  1. sudo mv webMathematica $TOMCAT_INSTALL/webapps/
  2. sudo chown tomcat $TOMCAT_INSTALL/webapps/webMathematica
  3. sudo chgrp tomcat $TOMCAT_INSTALL/webapps/webMathematica
  4. su tomcat
  5. ./$TOMCAT_INSTALL/bin/shutdown.sh
  6. ./$TOMCAT_INSTALL/bin/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.4.3 был выпущен с работы с Mathematica 11.3 и проверяет директории, куда исполняемые файлы системы Mathematica устанавливаются по умолчанию.

Для того, чтобы указать местоположение подходящей версии системы 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/11.x/Executables/MathKernel
          </KernelExecutable>
          <URLPattern>/*</URLPattern>
    </KernelPool>
  5. Примечание: Эта инструкция предполагает, что система Mathematica 11.x установлена в директории /usr/local/Mathematica/11.x/. В случае установки в другую директорию, используйте соответствующий путь установочной директории.

Конфигурирование Xvnc в минимальном или серверном варианте операционной системы Linux

Многие “Server” или “Minimal” дистрибутивы операционной системы Linux не включают в себя оконный сервер X Window по умолчанию. Некоторые функциональные возможности системы Mathematica, а, следовательно, и некоторые функции webMathematica требуют использования оконного сервера X Window. Например, Plot Example, пример с построением графика, не может правильно работать без наличия какой-нибудь оконной системы X Window. С этой целью рекомендуется установить Xvnc серверс.

  1. Установите Xvnc сервер, что, как правило, можно сделать с помощью установочных приложений для командной строки, таких как yum или apt-get.
  2. Запустите vnc дисплей, выполнив команду “vncserver”. В начале от вас потребуется ввести номер дисплея (как правило, используется номер 1).
  3. Укажите, чтобы webMathematica использовала этот дисплей, указав это в конфигурационном файле $TOMCAT_INSTALL/webapps/webMathematica/WEB-INF/MSPConfiguration.xml, включив в него следующий фрагмент:
    <KernelPool>
    ....
    <FrontEndLaunchFlags>
    -display :1 -nogui 1000x500+10+10
    </FrontEndLaunchFlags>
    ....
    </KernelPool>
Была ли эта статья для вас полезной?
Да
Нет

Хотите оставить комментарий?

Спасибо за ваш отзыв.

Отправить

Обратиться в службу поддержки

Если у вас есть вопросы о ценах и оплате, активации или сомнения по техническим темам, мы готовы вам помочь.

1-800-WOLFRAM (+1-217-398-0700 для международных звонков)

Служба поддержки

Понедельник-пятница
с 08:00 до 17:00 по центральному времени США

  • Регистрация или активация продукта
  • Предпродажная информация и заказ
  • Помощь в установке и первом запуске

Расширенная техническая поддержка (для правомочных клиентов)

Понедельник-четверг
с 08:00 до 19:00 по центральному времени США

Пятница
с 08:30 до 10:00 и с 11:00 до 17:00 по центральному времени США

  • Приоритетная техническая поддержка
  • Поддержка по продуктам от экспертов Wolfram
  • Помощь специалистов по программированию на Wolfram Language
  • Расширенная поддержка установки