動作確認をした環境は、いわゆるパソコンとLinux(VineLinux2.6r1)です。AIPSのインストールなど。 いつの日にか、あの研究室で役に立ちますように…。
Vine Linux 2.6r1にはfortranコンパイラ(gcc-g77)が入っていないので Vine Plusからrpmパッケージを取ってきてインストールしておく。 というよりも、apt-get install gcc-g77を実行した方が簡単かも。
AIPS管理用のユーザーaipsmngrとAIPSを使用するグループとして aipsusrを事前に作成する。
/usr/local/aips/というディレクトリを作成しておく。 ここにAIPSのプログラム群をいれることにする。 このディレクトリの所有者、所有グループはaipsmngr,aipsusrとする。
AIPS本体のファイルと、インストール用のperlスクリプトを NRAOのサイトから取ってきて/usr/local/aipsに入れておく。
以下、aipsmngrで作業を進める。
perl install.plを実行する。
screen 0 : 1を選択。AIPSのファイルをローカルディスクから探す。
screen 1 : Sを選択。ローカルディスクのファイルからインストールする。
screen 2 : Yを選択。提示されたものでよければそのまま進む。
screen 3 : /usr/local/aips/と入力。 先ほど作ったディレクトリにインストールする。
screen 4 : aipsusrを指定。 指定したグループに所属するユーザーだけがAIPSを利用できる。
screen 4b : グループaipsusrに、実際に利用許可を与える。
screen 5 : 使用する計算機がある場所を指定。 例えばkagoshimaとか...。
screen 5b : LINUXを指定。利用する計算機のアーキテクチャを入力する。
screen 6 : 他の計算機のAIPSからこの計算機のAIPSの データを利用しないのであれば、入力する必要は無い。 後から追加もしくは変更可能。
screen 7 : 提示されるにしたがって、 /usr/local/aips/DATA/LOCALHOST_1と入力。 計算機のhostnameによって、提示される "LOCALHOST"の部分は変わってくる。 後から追加もしくは変更可能。
screen 8 : AIPSからプリンタを使用したいときに指定する。 後から追加または変更可能。
screen 9 : AIPSからテープドライブを使用したいときに指定する。 後から追加または変更可能。
screen 9b : 他の計算機からテープドライブまたは FITSファイル格納ディレクトリ(FITS)を利用したいときには その計算機のIPアドレスなり、hostnameを指定する。 後から追加または変更可能。
screen 10 : 他の計算機からこの計算機のAIPSを 利用したい場合にはinetを指定する。
screen 11 : AIPSをコンパイルするときの細かい設定。 ("APSIZE"は、可能なかぎりおおきく取った方が、 処理が早くなるようです。)
screen 12 : 最終確認。
以上でインストールの準備は整い、あとは実際にコンパイル作業に進む。コンパイル作業に入る前に、作業者の名前やら連絡先やら聞かれるが、 まぁ、そこは丁寧に答えることにする。(でもホントに連絡が来たり するんでしょうかね...少し疑問。 参考までに、コンパイルに要した時間は、 CPU=2.0GHz,RAM=2.0GBで40分、CPU=700MHz,RAM=128MBで80分 というところ。
コンパイルし終えたら、"enjoy!"なるメッセージが出る。(注 : ホントにenjoyできる人がいるのかどうかは知りません。)
screen 10で"inet"を指定したときには、/etc/servicesの 一番最後に以下の記述を追加しておく。
#========================================================================
sssin 5000/tcp SSSIN # AIPS TV server
ssslock 5002/tcp SSSLOCK # AIPS TV Lock
msgserv 5008/tcp MSGSERV # AIPS Message Server
tekserv 5009/tcp TEKSERV # AIPS TekServer
aipsmt0 5010/tcp AIPSMT0 # AIPS remote FITS disk access
aipsmt1 5011/tcp AIPSMT1 # AIPS remote tape 1
aipsmt2 5012/tcp AIPSMT2 # AIPS remote tape 2
aipsmt3 5013/tcp AIPSMT3
aipsmt4 5014/tcp AIPSMT4
aipsmt5 5015/tcp AIPSMT5
aipsmt6 5016/tcp AIPSMT6
aipsmt7 5017/tcp AIPSMT7
#========================================================================
最後の設定を行うが、ここから先はやらなくても動く。 しかも、具体的に何をやっているか不明な点がちらほら…。
source /usr/local/aips/LOGIN.SH とコマンド入力する。
$CDTST とコマンド入力する。 インストールしたAIPSのバージョンが表示される。
RUN FILAIP とコマンド入力する。 聞かれるパスワードには、"AMANAGER"と入力する。 以下、質問に答えていく。
# disks, # cat entries/disk (<0 => private catlgs) (2 I) →→→ 35-100 と入力する。
# interactive AIPS, # batch queues (2 I) →→→ 8 2 と入力する。
# tape drives (I) →→→ 1と入力する。
何やらメッセージが表示され、最後に 「FILAI1: Done!」 と出ればよい。
やらなくても動く設定はもうひとつある。
RUN POPSGN とコマンド入力する。
Enter Idebug, Mname, Version (1 I, 2 A's) (NO COMMAS) : →→→ 0 POPSDAT TST と入力する。ここでプロンプトが">"に変わる。
RUN SETPAR とコマンド入力する。
POPSG1: Popsgen complete
POPSG1: 計算機名 31DEC04 TST: Cpu= 0.0 Real= 1126
といった感じの表示が出ればよいが、場合によってはこのあと 表示されるメニューで "35 Computer speed rating (AIPSmarks)" を 20 に変更する。
以上で、インストール作業はおしまい。実際に起動してみる。
source /usr/local/aips/LOGIN.SH →→→ AIPS内で使われる変数などを読み込む。
/usr/local/aips/START_AIPS →→→ AIPS起動。 (注 : ktermからではなく、xtermまたはgnome-terminalから 起動しなければ、TVサーバーが立ち上がらないようです。
もう一度はじめからインストールし直したいときは、 /home/aipsmngr/にあるインストール設定ファイル.AIPSRCと .AIPSRC.OLDを削除してから行う。
各種設定を変更したいときには...
ディスクの追加
/usr/local/aips/DA00/DADEVS.LIST
/usr/local/aips/DA00/NETSP
に、それぞれ初期設定ディスクの表記にしたがって記述追加。 その後、作成したディスクの中に"SPACE"という中身の無い ファイルを作らなければいけない。具体的には、
touch SPACE
とすればよい。
テープドライブの使用
「mt」というコマンドを使う(Magnetical Tapeの略らしい)。 しかしこれもVine Linux 2.6r1のインスール時には選択することが できないため、Vine Plusから取って きてインストールしなければならない。 更に、Linuxカーネルを再構築してテープドライブをカーネルに認 識させるようにしてあげる必要がある。 テープドライブは、HPやCOMPAQ(現在HPに吸収合併)の製品ならば特 に問題無く認識し使用できた。規格も、DDT-4の使用まで確認済み。 テープドライブは高額機器のため、購入はご慎重に…。
テープドライブの追加
/usr/local/aips/DA00/TPDEVS.LIST に、以下のように記述する。
#========================================
LOCALHOST /dev/st0 テープドライブの機種名
#========================================
上記の例のように「ホスト名 デバイス名 テープドライブ名」という 記述を追加し、/dev/st0の利用権限について aipsusrグループに読み込みを許可する。
/usr/local/aips/DA00/TPHOSTS に、以下のように記述する。その後実際にAIPS内からmountを実行して反応があればOK。
#========
LOCALHOST
#========
リモートテープドライブからデータを読み出したいとき
リモート計算機(テープドライブがある方)のTPHOSTSに、 ローカル計算機(自身が使う方)の名前を登録する。 ローカル計算機のTPDEVS.LISTには、 上記の「テープドライブの追加」と同様に記述を追加する。 ホスト名には、ローカル計算機側で指定したホスト名あるいは IPアドレスを直接記述する。 あとはローカル計算機側のAIPSで「REMHOST ホスト名」と入力後、 「mount」としたときにエラーが出なければよい。
プリンタの追加
/usr/local/aips/DA00/PRDEVS.LIST に、以下のように記述する。
#===========================
LP0 PS NONE プリンタの機種名
#===========================
事前にfortranのコンパイラをインストールしておく必要がある。
/usr/local/pgplot/, /usr/local/src/pgplot/という ふたつのディレクトリを作っておく。
FTPサイトからPGPLOTのソースファイルを取ってきて、 /usr/local/src/pgplotに入れ、tarコマンドで展開する。
展開してできたdrivers.listファイルをエディタで編集する。
このファイルは、インストール後にPGPLOTで使用できる 画像形式を指定するもので、使いたい形式が記述されている 行のコメントアウト"!"を削除するだけでよい。 例として、今回指定したファイル形式は、PS, VPS, CPS, VCPS, XTERM, GIF, VGIF, XWINDOW, XSERVE, LATEX, XDISPで、 最後のXDISPを指定しなかったらインストール後の 動作確認で使うデモンストレーションプログラム、 pgdemoが動かなかった。 さらに、PNGはどうも使えないらしい。
/usr/local/src/pgplotで、makeなどを行う。
/usr/local/src/pgplot/makemake /usr/local/src/pgplot linux g77_gcc
make
makeがうまくいかなかったら、もう一度やり直す。 大抵の場合、利用できないファイル形式をdrivers.listで 指定してしまっていることが多い。 もしくは、makemakeを行うときに指定するOSと コンパイラが間違っているとか...。
正常に終了したら、必要なくなった中間ファイルを削除する。 また、CのプログラムでPGPLOTを呼び出したいときは 続けて"make cpg"と入力する。
make clean
make cpg
以上で終了だが、実際に使うためにはPGPLOT用の環境変数を 指定して上げる必要がある。
bashを使っている場合、以下の記述を.bashrcに追加する。
export PGPLOT_DIR="/usr/local/pgplot/"
export PGPLOT_DEV="/XWINDOW"
export LD_LIBRARY_PATH="/usr/local/pgplot"
csh系を使っている場合、以下の記述を.cshrcなどに追加する。
setenv PGPLOT_DIR /usr/local/pgplot
setenv PGPLOT_DEV /XWINDOW
setenv LD_LIBRARY_PATH /usr/local/pgplot
デモンストレーション用プログラムを試してみる。
/usr/local/pgplot/pgdemo1
などなど...。
DifmapはPGPLOTを利用するので、事前にPGPLOTをインストールしておく。
ソースファイルを/usr/local/にダウンロード、展開する。 "uvf_difmap"というディレクトリができる。
展開してできたconfigureファイルをエディタで編集する。
変更箇所はPGPLOT_LIBで、
PGPLOT_LIB="-L/usr/local/pgplot -L/usr/X11R6/lib -R/usr/local/pgplot:/usr/X11R6/lib -lpgplot -lX11"
を採用することにする。
configureファイルを引数つきで実行、 その後makeallファイルを実行する。
cd /usr/local/uvf_difmap
./configure linux-i486-gcc
./makeall
以上でコンパイルは完了し、実行ファイル"difmap"ができる。
/usr/local/bin/に、/usr/local/uvf_difmap/difmapへの シンボリックリンクを張る。
ln -s /usr/local/uvf_difmap/difmap /usr/local/bin/difmap
起動できるか試してみる。「difmap」と入力して、プロンプトが"0>"に変わればよい。
まずはじめに注意点をいくつか...。
Vine Linux 2.6r1では2003/02/28版をコンパイルすることができず、 途中でエラーを起こしてしまった。 (何日、何時間かけても結局未解決のままです...。)
ここでは、2002/11/29版をインストールすることを前提に話をする。 しかし、同じVine Linux 2.6r1でも違う計算機には インストールできなかった(開発環境の違い?)。
これから書くことは基本的に 国立天文台野辺山のページ How to install NEWSTAR で書かれていることに対する捕捉という位置づけであることを 明記しておく。
つまり、必ずインストールできると言う自信が私にはありません。orz
事前にfortranのコンパイラをインストールしておく必要がある。 加えて、lesstifあるいはopenMotifというものが必要になるため、 Vine Plusからrpmパッケージを取ってきてインストールしておく。
NEWSTAR利用グループ"newstar"を作成する。
インストールディレクトリ/home/newstarを作成し、 所有グループをnewstar、利用権限を770とする。
/home/newstarの中にソースファイルnewstar.tar.gzを移し、 tarコマンドで展開する。
/home/newstar/installに移る。
これから使うインストール用設定ファイル"setLINUX"は、 使用するシェルがcsh/tcsh用なので、bashを使っている場合は
tcshコマンドでシェルを変更してsetLINUXを読み込む。
setLINUXの内容をbash用に書き換えたものをbashで読み込む。
のどちらかを行えば良い。 この設定ファイルの中にインストールプログラムのバージョンが 書かれているため、別に指定したい場合は記述を書き換える。 デフォルトでは"31DEC99"だが、これで問題はないはず。
コマンドラインで"ALL"と入力すると、そのファイルが コンパイル・インストールを行ってくれる。
[root@localhost install]# ALL ←実行する。
...大量のメッセージが流れる...
Compilation seems completed. ←最後にこのメッセージが出れば成功。
[root@localhost install]#
実際に使うときの環境設定を行う。
/home/newstar/exe/cpulistを書き換える。
[root@localhost exe]# more /home/newstar/exe/cpulist
localhost /home/newstar
↑ホスト名とインストールディレクトリを記入。
/home/newstar/exe/nadmintoolでユーザーの登録を行う。
==============================================
Group (ユーザーアカウント)
Project (解析テーマ名、例えば"H2O maser"など。)
AIPS ID (基本的に、デフォルトの"1"で問題ない。)
Server (cpulistに一致するホスト名を指定する。)
Title (お好みでつける。)
Real name (ユーザーの名前を指定する。)
==============================================
以上を入力したら、"APPLY"ボタンを押せばよい。 このとき、登録が正常に行われてもなぜか 「mkdir: ディレクトリ `/home/ユーザーアカウント/解析テーマ' を作れません: ファイルが存在します」 というメッセージが出てしまうが、気にすることはないらしい (NEWSTARヘビーユーザー談)。
作業ディレクトリのアクセス権を変更する。
成功すると、ユーザーアカウントのホームディレクトリに "Project"で指定した解析テーマの名前のディレクトリができるが インストールしたユーザー(root)の所有になっているので、 chownコマンドとchgrpコマンドを使い、所有権を変更する。 これから後は、各ユーザーの作業になる。
各ユーザーで設定を行う。
ユーザーのホームディレクトリの".rhosts"と".Xdefaults"を変更する。 もともとない場合は、新しく作ればよい。 /home/newstar/install/model/dot以下にあるファイルを参考にすること。
[user@localhost seichiro]$ more .rhosts
+localhost
↑ホスト名の前に"+"をつける。
[user@localhost ~]$ more .Xdefaults
!##### NEWSTAR #####!
*NsWin*fontList:-misc-fixed-medium-r-normal--10-*-*-*-*-*-*-*
*NsWin*frame*indicatorType: ONE_OF_MANY_DIAMOND
*NsWin*background: Grey
*NsWin*foreground: MidnightBlue
*NsWin*NsLabel*foreground: Black
*NsWin*menubar*foreground: Blue
*NsWin*selectColor: Green
*NsWin*message*background: Grey88
*NsWin*helptext*background: Grey88
*NsWin*command*background: Grey88
MMM*geometry: +300+200
ButtonPanel*geometry: +0+200
ButtonPanel*EXIT*background: LightCoral
ButtonPanel*ActiveProc*background: Green
TTT*geometry: 620x460-0-0
TTT*canvas*background: Black
TTT*canvas*foreground: Green
最後に、ユーザーのログインシェル設定ファイルに 環境変数(PATH,NSHOME)を指定する記述を付け加える。 シェルがbashの場合は、.bashrcに以下のように
#==================================
export PATH=$PATH:/home/newstar/exe
export NSHOME=/home/newstar
#==================================
と書き足せば良い。
実行する。「/home/newstar/exe/newstar&」 と入力して、動けば完了。 要求されるパスワードは必要ない(NEWSTARヘビーユーザー談)。
無事インストールできた方、何か"コツ"みたいなものがあったのでしたら、ぜひご連絡ください。
以下のURLから、Linux用のJAVA開発環境をダウンロードする。
http://java.sun.com/j2se/1.4.2/ja/download.html
ダウンロードしたファイル (j2sdk-1_4_2-nb-3_5_1-bin-linux.binなどという名前) を実行すると、インストーラが起動する。
インストール先(お好み)には、「/usr/local/j2sdk_nb」を指定して、インストール完了。
ここで紹介するNEWSTAR JAVA版は、2003年春期天文学会で配布されたもの。 事前にJAVAをインストールしておく必要がある。
パッケージファイル(JNewstarLinux.tar.gz)を、 /home/の下に展開する(rootの作業)。
/hoem/JNewstarLinux以下の全てのファイルの所有グループをnewstarにする。
chown -R root:newstar /home/JNewstarLinux という具合。
プログラムファイルなどをユーザーが不意に変更してしまわないよう、 root以外は書き込み権限を与えないようにする。
chmod -R 755 /home/JNewstarLinux という具合で。 ただし、/home/JNewstarLinux/data/というディレクトリは FITSファイル置き場およびデータファイル置き場、また /home/JNewstarLinux/env/というディレクトリは ユーザーの解析パラメータ保存場所となるので、 このふたつのディレクトリはユーザーの書き込みも許可しておくこと。
ここまででインストールは完了。あとはユーザーごとの設定。
各ユーザーのホームディレクトリにある シェルの設定ファイルを変更する。
bashの場合の例を示すと、
# ================================================== #
#
# for jnewstar
#
export PATH=$PATH:/usr/local/j2sdk_nb/j2sdk1.4.2/bin
export PATH=$PATH:/home/JNewstarLinux
alias jnewstar='newstar.sh &'
# ================================================== #
という記述を、.bashrcの最後に書き足す。
.bashrcを読み込み直す。
source ~/.bashrc という具合で。 あるいは、ログインし直しても可。
以上の作業は一回行えばそれだけでよい。
jnewstar と入力することで、JAVA版が起動する。