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. “Tomcat” 사용자의 라이선스 파일 접근 허용법
  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-get install openjdk-8-jre
sudo apt-get install openjdk-8-jdk

설치 성공 여부를 확인하기 위해 명령줄에서 다음을 실행합니다.

java -version


 

Tomcat 설정하기

설치

webMathematica는 Java Servlet 컨테이너 내에서 작동하도록 설계되어 있습니다. 다양한 Servlet 컨테이너의 사용이 가능하지만, 여기서는 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”이라 명명한 계정을 설정합니다. 이 계정은 webMathematica의 실행 권한이 필요합니다.

  1. 터미널에서 아래를 수행하여 계정을 생성합니다.
    sudo useradd tomcat
    sudo passwd tomcat
  2. apache-tomcat 서버를 설치한 디렉토리의 상위 디렉토리에서 다음 명령을 실행하여 Tomcat 설치 디렉토리의 소유자와 그룹을 “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 패킷을 수신 할 수 있도록 포트가 열려 있는지 확인합니다.
  • Oracle 웹 사이트에서 Java를 다운로드 한 경우 Tomcat 서버가 Java 설치를 인지 하지 못하는 경우가 있습니다. 그런 경우에는 시스템 변수 JAVA_HOME을 Java의 설치 디렉토리로 설정합니다. 예를 들어, Java가 /usr/local/jdk1.8.0에 설치되어 있다고 가정하면 bash 명령 줄에서 다음을 실행하거나 아래의 명령을 .bashrc에 추가합니다.
    JAVA_HOME=/usr/local/jdk1.8.0
    export JAVA_HOME

Mathematica 설치하기

Mathematica를 설치하고 Mathematica를 활성화하여 생성된 라이선스 정보를 사용하는 시스템에서 글로벌하게 접근이 가능한 위치로 옮겨 놓습니다.

설치

다음의 명령을 Linux 설치 프로그램에 수행하여 Mathematica를 설치합니다.

sudo sh Mathematica_11.x_LINUX.sh

기본 디렉토리를 사용하지 않는 경우 선택한 설치 디렉토리를 명령에 사용하는 것을 잊지 마십시오.

활성화

온라인 또는 수동 활성화 프로그램을 사용하여 Mathematica를 활성화합니다.

X Window가 설치되지 않은 Linux에서는 Mathematica 프론트엔드를 사용할 수 없으므로, 커널에서 Mathematica를 활성화합니다.

  1. 아래의 명령을 평가합니다.
    math
  2. 활성화 키를 넣습니다. 활성화 키는 XXXX-XXXX-XXXXXX의 형태를 이루고 있습니다.

“Tomcat” 사용자의 라이선스 파일 접근 허용법

Mathematica는 기본적으로 라이선스 정보를 사용자 정의된 위치의 mathpass 파일에 위치 시킵니다. 사용하고있는 “tomcat” 계정에서 라이선스 정보에 접근할 수 있도록 mathpass 파일을 글로벌 액세스가 가능한 Mathematica의 기본 디렉토리에 복사하고 모든 계정이 파일을 읽을 수 있도록 권한을 설정합니다.

  1. Mathematica에서 다음을 평가하면 mathpass 파일의 위치를 파악할 수 있습니다.
    $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/jasong/.Mathematica/Licensing/mathpass /usr/share/Mathematica/
    Licensing/. 
  3. 모든 계정이 mathpass 파일을 읽을 수 있도록 권한을 설정합니다.
    sudo chmod a+r /usr/share/Mathematica/Licensing/mathpass

webMathematica 설치 및 설정하기

설치

webMathematica 설치 파일은 webMathematica.zip이 포함되어 있습니다. 이것을 Apache Tomcat 서버의 webapps 디렉토리에 놓고 압축을 풀어 부팅시 문제 없이 열리도록합니다. Tomcat 서버의 설치 디렉토리를 $TOMCAT_INSTALL로 정의한 경우 다음을 평가합니다.

  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 용으로 출시되었고, 이 webMathematica는 Mathematica 11.3 설치 디렉토리에서 실행 파일을 찾으려고합니다.

알맞는 버전의 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/10.4/Executables/MathKernel
          </KernelExecutable>
          <URLPattern>/*</URLPattern>
    </KernelPool>
  5. 참고: 이러한 설치 방법은 Mathematica 11.x가 /usr/local/Mathematica/11.x/에 설치되어 있다는 가정하에 따르는 설명입니다. 설치 디렉토리가 다른 경우 귀하가 사용한 설치 디렉토리로 대체해야합니다.

Minimal 또는 Server 버전의 Linux에 Xvnc 설정 방법

Linux의 “Server” 또는 “Minimal” 배포판의 대부분은 기본적으로 X Window 서버가 포함되어 있지 않습니다. Mathematica 나아가 webMathematica의 기능 중 일부는 X Window 서버를 사용해야만 하는 경우도 있습니다. 예를 들어 Plot Example은 어떠한 종류의 X Window System 없이 제대로 수행할 수 없는 경우가 발생합니다. 이러한 경우에 대비하여 Xvnc 서버를 실행하는 것을 권장하고 있습니다.

  1. Xvnc 서버를 설치합니다. 이 서버는 yum 또는 apt-get과 같은 명령줄 설치 응용 프로그램을 통해 얻을 수 있습니다.
  2. 명령 “vncserver”를 이용하여 vnc 디스플레이를 시작합니다. 이제 디스플레이 번호 (일반적으로 1)의 제공을 요구합니다.
  3. 다음 코드를 포함하는 파일 $TOMCAT_INSTALL/webapps/webMathematica/WEB-INF/MSPConfiguration.xml을 편집하여 webMathematica를 설정하고 디스플레이를 사용합니다.
    <KernelPool>
    ....
    <FrontEndLaunchFlags>
    -display :1 -nogui 1000x500+10+10
    </FrontEndLaunchFlags>
    ....
    </KernelPool>

[English]

설명이 도움이 되었나요?
아니오

하실 말씀이 있습니까?

피드백 감사합니다.

제출하기

지원 문의

청구서, 제품 동기화에 관한 질문에서 기술적인 질문까지 부담없이 문의하세요.

1-800-WOLFRAM (국제 전화는 +1-217-398-0700)

고객 지원

월요일 - 금요일
8am–5pm 중부 표준시

  • 제품 등록 및 동기화
  • 구매 전 정보 및 주문
  • 설치 및 동작

고급 기술지원 (해당 고객을 대상으로)

월요일 - 목요일
8am–7pm 중부 표준시

금요일
8:30–10am & 11am–5pm 중부 표준시

  • 우선적 기술지원
  • Wolfram 전문가들의 제품 지원
  • Wolfram 프로그래밍
  • 고급 설치 지원