Ubuntu 18.04 LTS, 20.04 LTSへの汎用インストール#

著者:

稲村泰弘

最終更新日:

Jan. 4th, 2021

概要#

本章では比較的様々なバージョンのUbuntu Linuxへ空蟬をインストールために作成された汎用的なスクリプトを利用する方法を示す。このスクリプトにより、本来インストールに必要なソースコードのコンパイル、必要なライブラリの別途インストールなどをUbuntu Linuxのバージョンに依存せず同一の方法で行うことができる。

なお、2022年11月現在で、対応しているMLFにおけるビームラインは以下の通りである。

Available Beam lines for script installation for Ubuntu#

BL(code)

注意点

BL01(SIK)

特になし

BL02(DNA)

QENSfitは含まず

BL14(AMR)

特になし

BL11(HPN)

Teuseは含まず

BL15(SAS)

Dviewは含まず

動作環境#

本章で使用するスクリプトによるインストールの対象OSは以下の通りである。

Available Ubuntu Linux version for general installation script#

Ubuntu Linux

Architecture

20.04 LTS

x86_64 (amd64), arm64

18.04 LTS

事前の確認事項#

Ubuntuは目的のPCに既に導入されていることを想定 している。また極力OSに付属するパッケージを利用するため、そのOSに対応したインストール用レポジトリにアクセスできる、つまりPCがネットに接続された状態にしておくこと。

他のOS(CentOSなど)にインストールしたい場合は、別項のマニュアルを参照のこと。

また、インストール途中でインターネットへの接続を行うので、インターネットに接続していることを確認する。Webブラウザなどで確認する程度でよい。ネットワークの設定や、確認方法は割愛する。

手順の概要#

主な手順としては、以下の通りである。

  1. インストールファイルのダウンロード

  2. 圧縮ファイルの展開

  3. インストールスクリプトの実行

以降の手順では、圧縮ファイルはユーザーのホームディレクトリに存在するものとする。

インストール#

ファイルのダウンロード#

Ubuntuに空蟬環境をコンパイル・インストールするためのスクリプト、およびソースコードは一つの圧縮ファイルで存在する。

ファイル名の例

Utsusemi4_4.0_210104_Ubuntu_1604_2004LTS.tar.gz

ファイル名の 4.0 はリリース番号と呼ばれ、比較的大きなバージョンアップがあった場合に新たに付与される。 210104 はソースコードの最終変更日でリリース番号とは独立にコードのアップデートとともに増加する。実際の入手方法は、空蟬のポータルサイト( https://mlfinfo.jp/groups/comp/ja/utsusemi.html )の「インストール」項目を参照すること。

圧縮ファイルの展開#

$ tar xzvf Utsusemi4_4.0_210104_Ubuntu_1604_2004LTS.tar.gz

…(ログ)

結果として、Utsusemi4_4.0_210104_Ubuntu_1604_2004LTSという名前のディレクトリが作成される。以下のように確認できる。

$ ls -F
Utsusemi4_4.0_210104_Ubuntu_1604_2004LTS/ Utsusemi4_4.0_210104_Ubuntu_1604_2004LTS.tar.gz

なお、Utsusemi4_4.0_210104_Ubuntu_1604_2004LTS ディレクトリには以下のファイルやディレクトリが存在する。

$ ls -F Utsusemi4_4.0_210104_Ubuntu_1604_2004LTS/

Install.py src/

スクリプトの実行#

まず、先ほど展開したディレクトリへ移動する。

$ cd Utsusemi4_4.0_210104_Ubuntu_1604_2004LTS

インストールスクリプトを下記のように Python3 で実行する。

$ python3 Install.py

すると、以下のようなメインメニューが現れる。

$ python3 Install.py

=================================================================
     Welcome to Utsusemi software installer (ver.C0.3.8)
=================================================================

----------------------------------------------------------
 Install Directories
    MLF software root (Manyo, Utsusemi): /opt/mlfsoft
    User's home directory : /home/yinamura
    RAW data Directory : /data
----------------------------------------------------------


-----------------------------------------------------------------
       Utsusemi Install Main Menu for Debian or Ubuntu
-----------------------------------------------------------------

  0... Install ALL modules for an instrument

           note: this will DELETE all of modules installed before.

  ----------------------------------------------------
  1... Required Ubuntu Packages
  2... Utsusemi software (Manyo-lib and common code)
  3... Utsusemi software for each BL

  7... Change Install Directories

  9... Uninstall

others.. exit
-----------------------------------------------------------------
>> Which ?

ここで、行いたい作業の数字を打ち込む。

なお、メニューの頭に表示されているインストール先となるディレクトリは、メニュー番号7 で変更可能である。初期状態では、MLF計算環境公式の場所である。ユーザーのホームディレクトリにインストールしたい場合は、番号7を選ぶこと。

Menu number and meanings on Install.py#

番号

動作

0

全てのインストールを自動で行う。全く最初のインストールの時や、新しいバージョンにすべて置き換えるとき等に使用する。 これは以下にあるメニュー番号1,2,3,4を順次実行することと同等である。

1

空蟬環境をインストールするために必要なUbuntuのパッケージを自動でインストールする。Ubuntu自身の機能を用いるため、 インターネットに接続している必要がある。

2

万葉ライブラリと空蟬の自動インストールを行う。この過程ではソースコードからのコンパイルが入るため、時間がかかる。

3

空蟬の装置依存コードのインストールと設定を自動で行う。装置ごとに設定が異なるため、インストール時に装置を選択する 必要があるが、別の装置の環境をインストールしたいときに使用する。

7

インストール先を変更する。(詳細は2-6節)

9

インストールされた空蟬環境を取り除くのに使用する。

例として、メニュー番号0を選び、すべてをインストールする。

>> Which ? 0 [リターン]

この後さらに、万葉ライブラリのマルチスレッド対応のために動作させる最大スレッドの数を入力する。通常はそのPCのコア数でよいだろう。

Please input the number of threads, which is required to use
Manyo-lib with multi-threads.

>> How many threads? [>=1, default=1]

これらの質問に答えると、実際のコンパイルやインストール作業に入る。その際、システム管理者の権限(root)が必要となるので、以下のようにパスワードが聞かれることがある。そのユーザーのパスワードを打ち込むこと。

[sudo] password for hoge:

これらの後、自動的にコンパイルやインストール、必要なディレクトリの作成、コードのコピー、環境の設定などが行われる。大量のログが流れる。大まかな順序は、メニューにあった項目の順である。具体的に何をやっているか知りたい場合は4章以降を参照のこと。

特に問題がなければ、以下のように表示される。

-----------------------------------------------
  Install of
       - manyo-core
       - manyo-utsusemi
       - python-utsusemi
       - python-utsusemi-SIK
       - python-utsusemi-AMR
       - python-utsusemi-HPN
       - python-utsusemi-SAS
       - manyo-SAS
       - manyo-TKtools
       - python-utsusemi-TKtools
                               were completed.
-----------------------------------------------


-------------------------------------------------------
  Utsusemi Base Environment Setting has been completed.
-------------------------------------------------------

----------------------------------------------------------
  Utsusemi Environment Setting for SIK has been completed.
----------------------------------------------------------

----------------------------------------------------------
  Utsusemi Environment Setting for AMR has been completed.
----------------------------------------------------------

----------------------------------------------------------
  Utsusemi Environment Setting for HPN has been completed.
----------------------------------------------------------

----------------------------------------------------------
  Utsusemi Environment Setting for SAS has been completed.
----------------------------------------------------------

----------------------------------------------------------
  Utsusemi Environment Setting for TKtools has been completed.
----------------------------------------------------------

Utsusemi Default Install was completed.
>> Back to Main Menu? [Y/n]

インストールが終了すると以下のように聞かれるので、終わるならnを入力すること。リータンだけやyを入力すると、先のメインメニューへ戻る。

>> Back to Main Menu?[Y/n]

メニュー番号2を選んだ場合#

メニュー番号2を選ぶと万葉ライブラリのインストールを行う。

選択後に、万葉ライブラリのマルチスレッド対応のために動作させる最大スレッドの数を入力する。通常はそのPCのコア数でよいだろう。

Please input the number of threads, which is required to use
Manyo-lib with multi-threads.

>> How many threads? [>=1, default=1]

これらの質問に答えると、実際のコンパイルやインストール作業に入る。その際、システム管理者の権限(root)が必要となるので、以下のようにパスワードが聞かれることがある。そのユーザーのパスワードを打ち込むこと。

[sudo] password for hoge:

メニュー番号3を選んだ場合#

このメニュー番号を選ぶとBL毎に個別にインストールを行うことができる。

選択後に、メニュー2を実行したか聞かれるので、確認すること。

>> Have you installed ManyoLib and Utsusemi Base system ( menu number 2 ) [y/N]?

続けて以下のようにインストールするビームラインの選択が行われる。

---------------------------------
  Select Beam Lines you install
---------------------------------
 [ 1] BL01 4SEASONS (SIK)
 [ 2] BL02 DNA (DNA)
 [14] BL14 AMATERAS (AMR)
 [11] BL11 PLANET (HPN)
 [15] BL15 Taikan (SAS)
 [TK] TKtools
 [-1] Exit menu
---------------------------------

>> Which Package?

必要な数字を打ち込んでリターンする。四季(BL01)なら1を、アマテラス(BL14)なら14を入力する。-1であれば、このメニューから抜ける。

インストール先のディレクトリについて#

デフォルトのインストール先#

デフォルトのインストール先は、下記のようになっている。

Default Installation path#

表現

デフォルト場所

説明

MLF (Utsusemi) software directory

/opt/mlfsoft/

万葉ライブラリ、空蟬などをインストールする場所。

RAW data directory

/data

各分光器のイベントデータディレクトリが置かれる場所。 この場所に 解析に必要となる各装置のデータを置くためのフォルダ

SIK/

AMR/

などが作成される。

Users’ home directory

/home/XXXXX

( ~/ )

一時保管用の解析用パラメータファイル等が置かれるディレクトリ

ana/xml

ana/tmp

などが置かれる場所。

以上の場所は、MLFの標準に近いものとなっている。

ただし、インストール先が/opt/mlfsoftなど他のユーザーにも影響がないとも限らない場所であるため、個人のディレクトリにインストールも可能となっている。その変更はインストールメニュー7で行うことができる。

個人のディレクトリへのインストール#

個人のディレクトリにインストールする際のデフォルトは以下のようになっている。

Default Installation path for private area#

場所

MLF (Utsusemi) software directory

~/mlfsoft

RAW data directory

~/mlfsoft/RAWDATA

Users’ home directory

~/

この場合、ソフトウェアのアンインストールは、ほぼ~/mlfsoftディレクトリを削除するだけでほぼ終了する。

インストールメニュー7を選ぶと以下のメニューが現れる。

------------------------------------------------
Install Directories Menu
----------------
1..... Change Directories to private area
2..... Return Directories to MLF default
3..... Load Previous Install Directories
4..... Show Present Setting

0..... Exit
>> Which?

ここで1を入力すると、以下のようにデフォルト設定の個人用インストール先が示される。

============================================================
                 Set your install paths
============================================================
 1. Path to install Utsusemi software
   --> /home/yinamura/mlfsoft

 2. Path to Event data directory
   --> /home/yinamura/mlfsoft/RAWDATA

 3. Path to user directory (for ana/xml or exp/xml)
   --> /home/yinamura
============================================================

>> Which do you change ? [1 to 3. 0 to exit]

さらに変更を加えたいならその番号を入力する。変更が不要であれば0を入力すると一つ前の「Install Directories Menu」に戻るので、そこでさらに0を入力するとメインメニューへ戻る。なお、元のMLF計算環境準拠の設定に戻る場合は「Install Directories Menu」で2を選ぶとよい。

メインメニューへ戻ると、メニュー上部にあるInstall Directoriesの情報が変更されているはずである。

初期設定#

空蟬における初期設定は、環境変数を設定することである。それを「空蟬環境を有効にする」と呼ぶ。

空蟬環境の有効化#

必要なソフトウェアはすべてインストールされている。空蟬環境を実行するための設定(~/.bashrcに書かれている)を有効にするために、以下のようにコマンドを打つ。

$ source ~/.bashrc

もしくは、ターミナルを閉じて再度開くと有効となっている。

環境が有効になったかどうかは、それぞれの分光器の環境へ移るためのキーワードを打ち込む。キーワードは各分光器の略称である。

Keywords for Utsusemi environment setting#

装置

キーワード

四季(BL01)

SIK

DNA(BL02)

DNA

アマテラス(BL14)

AMR

大観(BL15)

SAS

例えば四季の場合なら以下のように表示される。

$ SIK
===========================================
 Welcome to Utsusemi Environment for SIK
===========================================
 Ana : Sequencer
 D4mat : D4MatSlicer
 Inv : MethodAssistant
===========================================
$

BL01環境への移行が完了したことがわかるメッセージが表示される。

ホームフォルダ直下の”.bashrc”ファイルには、上記のキーワードごとに参照するbashスクリプトが存在し、その中で以下のような空蟬用環境変数が指定されている。環境に応じて書き換えること。詳細は省く。

Environment variables for Utsusemi#

環境変数

デフォルト値

役割、意味

UTSUSEMI_INST_CODE

<inst-code>

装置コード(SIK,AMRなど)

UTSUSEMI_DATA_DIR

“/data”

データフォルダの指定

UTSUSEMI_USR_DIR

${UTSUSEMI_USR_DIR-${HOME}}

ユーザーのフォルダ(デフォルトはホームフォルダ)

UTSUSEMI_LOG_QUIET

n

データ処理実行時のログ表示。”Y”だとかなり減る

UTSUSEMI_MULTH

8

データ処理実行時のマルチプロセッシングの数

UTSUSEMI_DEBUGMODE

n

デバッグ用フラグ(デフォルトnで良い)

空蟬の実行#

初期設定が終わっていれば、ターミナルから空蟬のコマンドが実行できるはずである。例えば空蟬の基本GUIであるSequencerの起動は以下のようになる。

$ Ana

空蟬のバージョン確認#

空蟬のバージョンの確認方法を示す。バグなどの報告や、アップデートする際の目安となる。 前節の空蟬環境の有効化を済ませたのちに下記のコマンドを入力する。

$ python3
>>> import utsusemi
>>> utsusemi.__version__
'4.0.220825'

もしくは以下のように入力するとリリース番号とバージョン番号が表示される。

$ python3
>>> import UtsusemiInfo
---------------------------------------------
               Utsusemi Info
---------------------------------------------
         version : 4.0 (rev 220825)
  Contact person : Yasuhiro Inamura
      e-mail : yasuhiro.inamura@j-parc.jp
---------------------------------------------

Manyo>>>

アンインストール#

アンインストールを行う手順としては、インストールスクリプトを起動し、メニューから以下を選択する。

9..... Uninstall

なお、まだいくつかフォルダ(データフォルダ、データ処理用フォルダ)が残っているので下記のように削除する。

$ rm -r ~/ana
$ sudo rm -r /data

問題が発生した場合#

インストール時にエラーや予期せぬ状態になった場合、使用したOSとインストール方法を確認して手順に問題がないようなら、担当者(著者)へ状況報告をお願いしたい。

インストール後の動作に問題が発生した場合は、前節に示した空蟬のバージョンを確認し、発生した事象を報告していただきたい。