差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
softwares:nestdaq:installation2023 [2023/07/09 09:16] – [インストール] kobayashsoftwares:nestdaq:installation2023 [2023/10/02 15:08] (現在) – [インストール] kobayash
行 299: 行 299:
 $ chmod +x redisinsight-linux64 $ chmod +x redisinsight-linux64
 $ ./redisinsight-linux64 $ ./redisinsight-linux64
 +<なにも表示されなければOK。Ctrl-Cで殺す。殺したときはいろいろ言われる。>
 +
 +</code>
 +  * スクリプトなどの設定
 +    * run ディレクトリ作成<code>$ mkdir $HOME/run
 +</code>
 +    * 初期設定ファイル nestdaq.sh を /home/nestdaq/run に作成<code>$ cd $HOME/run
 +$ emacs nestdaq.sh
 +</code>中身は以下。<code>#!/bin/sh
 +export NESTDAQ=$HOME/nestdaq
 +export PATH=$NESTDAQ/bin:$PATH
 +</code>さらに、.bashrc に以下の行を追記。<code>
 +# For NestDAQ 2023.06.09                                                       
 +source $HOME/run/nestdaq.sh
 +</code>
 +    * redis の立ち上げのためのファイル作成<code>$ cd $HOME/run
 +$ emacs init.sh
 +</code>中身は以下。<code>#!/bin/sh
 +redis-server $NESTDAQ/etc/redis.conf --loadmodule $NESTDAQ/lib/redistimeseries.so
 +RIHOST=0.0.0.0 redisinsight-linux64 &
 +#daq-webctl >& $NESTDAQ/log/daq-webctl.log &
 +daq-webctl >& /dev/null &
 +</code>さらに、実行権限を付与<code>
 +$ chmod +x ./init.sh
 +</code>
 +    * NestDAQ起動のためのスクリプトをコピー<code>$ cd $HOME/run
 +$ cp $HOME/nestdaq/scripts/*.sh ./
 +</code>
 +==== 動かしてみる ====
 +  * run ディレクトリに移動<code> cd $HOME/run
 +</code>
 +  * .bashrcをソースし、init.sh を実行する。<code>
 +$ source $HOME/.bashrc
 +$ ./init.sh
 +</code>2回以上 ./init.sh を実行すると、以下のようなエラーが出る。<code>
 +$ ERROR 2023-07-09 00:50:12,338 redisinsight_startup Error running web app
 +Traceback (most recent call last):
 +  File "startup.py", line 138, in run_web_app
 +...
 +OSError: [Errno 98] Address already in use
 +ERROR 2023-07-09 00:50:12,338 redisinsight_startup Error in main()
 +Traceback (most recent call last):
 +  File "startup.py", line 565, in main
 +...
 +OSError: [Errno 98] Address already in use
 +[149481] Failed to execute script 'entry.prod' due to unhandled exception!
 +</code>もし間違って .init.sh を複数回実行した場合、redis と daq-webctl のプロセスを殺す。プロセスの殺し方は色々あるが、<code>$ killall redis-server
 +$ killall redisinsight-linux64
 +$ killall daq-webctl
 +</code>とすれば、全部殺せる。このようなスクリプトを用意しておいても良いかも。または、init.sh を編集し、すでにプロセスが立ち上がっていたら新たに立ち上げないとか、既存のプロセスを殺してから立ち上げるとか、賢い感じに編集しても良い。
 +  * リモートで作業をするために、VNCサーバーもインストールしておく。SELinux もdisable しておく。<code>$ su
 +Password:
 +# dnf install tigervnc tigervnc-server
 +# emacs /etc/selinux/config
 +#SELINUX=enforcing
 +SELINUX=disabled
 +# reboot
 +</code>ちなみに、SELinux を殺さない場合、macOS からVNCクライアント (RealVNCの VNC Viewer) でログインはできてデスクトップも表示されるが、ウィンドウを立ち上げようとすると、以下のようなエラーが出てvncserverが落ちる。<code>
 +On no! Something has gone wrong.
 +A problem has occurred and the system can't recover.
 +Please log out and try again.
 +[ Log Out ]
 +</code>{{:softwares:nestdaq:vncerver_error_almalinux9_20230609.png?400|}}
 +  * これで Firefox などのブラウザを立ち上げ、http://localhost:8080/にアクセス
 +  * web ブラウザ上で、 任意の Run Number を入力
 +  * デバイスを複数立ち上げるため、まず tmux をインストール<code>$ su
 +Password:
 +# dnf install tmux
 +# exit
 +</code>
 +  * tmux を立ち上げ、ウィンドウを分割。Ctl-b " で上下方向分割、Ctl-b % で左右方向分割。ウィンドウ間の移動は Ctl-b o。emacs のショートカットに近いものに設定しても良い。
 +  * tmux 上で 3 分割くらいにして、以下のスクリプトを実行。<code>
 +---------------------------------------
 +$ ./topology-1-1.sh
 +...
 +---------------------------------------
 +$ ./start_device.sh Sampler
 +...
 +---------------------------------------
 +$ ./start_device.sh Sink
 +...
 +---------------------------------------
 </code> </code>
-  
  
softwares/nestdaq/installation2023.1688861784.txt.gz · 最終更新: 2023/07/09 09:16 by kobayash
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0