たぶん他人には役に立たない 自分のためのおぼえがき
「Linux で PCクラスタを組む」記
2002年9月 TurboLinux 7 インストール
2003年11月 TurboLinux 10 desktop インストール
2006年5月 TurboLinux 11 Fuji インストール(2002年9月)いままで,自分で買ったパソコンはMacintoshのみ,Unixの利用経験はあるが, Linuxマシンの所有も,サーバ管理の経験もない.こんな私が,予算を 取得した関係上,いきなりIntelのCPUをもったPCクラスタ4台を立ち上げ(しかも ノーブランド), Cactus計算基盤を用いて 並列数値計算を行おう,という無謀この上ないプロジェクトを始めた.
(2003年11月)10月にTurboLinux 10 desktop が発売された.これまで無料で配付されていた versionは,もうすぐサポートされなくなるとのこと.頑張って,システムを再構築した奮戦記を並記した.
(2006年5月)新たな職に就き,再びマシンのlinux化を開始.これしか知らないので,TurboLinuxをインストールしてみる.世の中 version 11となっており,名前もFUJIと付けられているのであった. 今回インストールしたのは,手元にあった,Fujitsu FMV Esprimo C5200 Intel 3GHzである.
(2006年10月)Fedora Core インストール体験記を書き始めた.
マシンを発注 (2002/9)
インストール (2002/9, 2003/11) or インストール (2006/5)
Intel Fortran
初期設定(ポートの制限など)(2002/9, 2003/11) or 初期設定(ポートの制限など) (2006/7)
必要なソフトのインストール
外部との接続など
並列化の実装
Cactusコード
reboot
latexに関して
user管理
LAPACKインストール
update
ファイルエラー
コマンドリスト
マシンを発注 2002/9
- 科研費が当たったので,その申請書に書いたPCクラスタを組むことにした. 世の中,ベクトル型から並列型計算機環境へ,急速に移行している. 値段の高いスーパコンピュータを使うよりは,廉価のPCを何台も 使ったマシンの方がコストパフォーマンスが良くなっているからである. アメリカで開発されたこのPCクラスタは,何台も組み合わせると 場所を取るのが(日本人にとっては)難点である.しかし,これからの 科学研究では確実に広がってゆく手段の一つとして位置づけられよう.
- 手っ取り早く手に入れるには,PC組み立て業者に発注する方法がある. しかし,「Pentium 4の2GHzを4台」というようなアバウトな見積もりをしてもらうと, いろいろ含めて180−250万円という回答が返ってきた.これを見た研究室のF氏, 「私なら半額で作れますよ」.渡りに舟.半額の範囲内で,金に糸目を付けず, F氏に部品の発注と組み立てを依頼することにした.
- しかし,パソコンの性能は,欲を言えばきりがない.半年経てば,性能も値段も 規格も変わってしまう.部品の希望を挙げているうちに,どうしても「数年満足して 使える」ことにこだわりが出て,結局値段もどんどん上がっていった.クラスタを組むと なるとメモリもハードディスクも同時期に同性能のものを搭載しておかないと 並列処理に支障が出る.値段の折り合いが難しかったが,結局,各マシン当たり
CPU Pentium 4 2.53GHz メモリ 500MB を4枚=2 GB HD 80 GBというモンスター規格(メモリ全部で8GB !!),しかも4台をGigabit Ethernetでつなぐ, ということで,どこかの雑誌でも実現できなかった 「Giga cube(GHz CPU,GB HD, Gigabit ethernet)」を超える「Giga quattro」の実現である.確か数年前のNCSAのSGIスパコンが この位だったか? (ちなみに現在の最速Pentium4は,2.80GHz)
最後に悩んだのが,箱をどうするか.縦に積み置きできるラック型にすると,スペースが省けて いいのだが,箱が小さくて作業が難しいしラックも値が張る(高さ120cmくらいでも10万)らしい. で,普通の縦型 デスクトップの箱 (18cm x 44 cm x 46 cm) 4つということで落ち着く.浮いた金額はCPUの速さに回した.
以上の他にHUBやGigabitボードも含めて,しめて120万円也.このうち半分はメモリ代である. ちょっとメモリを欲張りすぎた.しかしこれで,120^3のグリッドが組めて 一般相対論シミュレーションができるはず.- モニタも必要だった.パソコンショップで液晶モニタを選んできた.将来の使い方を 考えて2つの入力ポートがあるものを選ぶ.
- マウスとキーボードはPS2という入力規格のものを用意. F氏が500円キーボードを用意してくれたが,マウスは3ボタンを探したため 4200円.このほか,ethernetケーブルやら電源ケーブルやら,最後にばたばた買い物あり.
- ラックは,家具屋の通信販売で,テレビ台なるワゴン(横72cm)を購入. 4台一列に並べばかっこいいが, 下に3台,上に一台+Hubなど,という構造になる.
- できあがって来た4台を眺めた第一印象,「人件費をかけないと,パソコンはこうまで安く 仕上がるものなのか」.(そういえば かつてそうやって資金を集めていた 宗教団体がありましたな).
インストール
黒字 2002/9/19 TurboLinux7workstation版
茶字 2003/11/4 TurboLinux10desktop版
- RedHatかTurboLinuxか.まずLinuxの配布版でどれを選択するのかを悩む. 最近では日本語環境もほとんど差がないらしいが,もともと日本語を使うのが目的では ないので,それは選択の条件からはずす. 広く使われているのはRedHat,システムのupdateが楽なのは TurboLinuxだとF氏に言われた. 問題は,使いたいソフトウェアが対応しているかどうかという点らしい. たいていのGNUソフトはOKであるが,多くのソフトデベロッパは,RedHatでしか 動作確認をしないという.
TurboLinuxに心が傾くが,問題はIntel Fortranの対応.RedHat 7.2で動作確認 とwebページにあるだけで,TurboLinuxに関する記述なし.ただ,商品版の TurboLinux 8 Workstation にはIntel Fortranの評価版がパッケージされているらしい.ということは, Turboも対応しているはず. 手元の雑誌の付録CDは,TurboLinux 7であったが,TurboLinuxを使うことに決める.- 2003年10月,TurboLinuxは, 有料でversion 10 desktop版を 発売した. Windowsユーザの取り込みを狙って,ソフトを大量に追加し,kernelを 2.6に上げている.主な解説記事として,
http://pc.watch.impress.co.jp/docs/2003/1003/hot283.htm
http://www.zdnet.co.jp/enterprise/0310/02/epn09.html
http://www.zdnet.co.jp/enterprise/0310/31/epn01.html- さて,いよいよインストール開始.まず一番は,4台の上に設置する ルータの設定.ルータの下にNetscape閲覧が可能なMacを取り付けて, networkからのアクセスをルータのところでポート22(ssh)のみに絞る.これで 外からはsshアクセスが可能,他のwebやmailで外に発信することはない.だから それだけsecurityが高いのだという.
- 何もOSが入っていないパソコンは,BIOSというプログラムで起動するらしい. F2キーを押しながら,BIOSで起動.起動する優先順位をCDrom driverにして, 雑誌の付録のCDromを挿入.IPアドレスやマシンの名前,キーボードの種類やマウスの 確認,rootパスワードの設定などを行って,「とりあえず全部」のパッケージをインストール. 一度,HDのフォーマットチェックを同時に行うことにしたら,全然終わらないようなので (80GBだと30000秒という噂),あわてて強制終了し,もう一度やり直す.
- マウスとディスプレイが一つしかなく,しかもマウスはPS2規格のため,これらの 抜き差しは,電源を切ったときにしかできない.一台ごとに正味40分位時間をかけて CDromからのインストールが終了するのだが,その後のrebootとXwindowの起動 まで確かめながらいくので一台1時間強を要した. 「とりあえず全部」のパッケージをインストールしてしまうと,reboot時に いちいち時間がかかる.この辺は,知識があればインストール時点で,パッケージを 選択する作業をさぼったから仕方がない.
- 後で判明したことだが,このとき,root以外のアカウントも作るべきであった. telnetではrootのログインができないことを知らなかった.一つのマシンから隣を 操作するためには,個人アドレスが必要である.翌日は,そのために,4台それぞれに 再びディスプレイとマウスを付け替えながら,この作業を行う羽目になった.
- これで次は,いよいよ必要なソフトのインストールか,と思いきや, F氏がやってきて,OSを最新版にupdateしよう,となった.雑誌は半年前に出版された ものだが,CDromに入っていたものは1年くらい前のOSだという. 幸い,研究室にupdaterがあったので,***.rpmというファイルをそのまま すべてダウンロード.rootから
turbopkgとして,すべてのファイルを選択し,おまかせupdate.これを4台繰り返す わけだが,何故か,telnet loginがまだ,上手くいかないため,(/etc/hostsにきちんと 相手を認識させるようにしていなかったからだが),結局もういちど ディスプレイとマウスを付け替えながら進行. updateしたために,いろいろversionが上がった.例えばOpenSSHは2.95から3.14に. ただ,KDEでTerminalを立ち上げると,画面がぎくしゃくして,以前より悪い. ktermを使うことにしてしのぐことにする. ktermのフォントを大きくする方法がわからず苦労するが,Ctrl+右マウスクリックで 毎度調整できることを発見した.TurboLinux10desktop版 では,
- インストール時に,それまでのLinuxファイルはすべて 消去されてしまうので,バックアップが必要.(Workstation8版からのアップデートさえ,推奨していない.)
- インストール開始時には,私の機種ではビデオカードの問題か,VESAモードを選ばないと,画面が真っ黒になって 先へ進まない.
- デスクトップはgnomeもあるが,KDEがデフォルトだそうだ.見かけはずいぶんと変わった.Windowsっぽくなって残念.
- userは先に作っておく.インストールが完了したら,chshで/bin/tcshにしておく.
- やはり,直ちにturbopkgで,最新版にupdateする.
インストール 2006
緑字 2006/5/31 TurboLinux11 FUJI 版
黒字 2006/9/27 TurboLinux11 FUJI 版 追記
- 2005年11月,TurboLinuxは, 有料でversion 11 FUJIを 発売した. Windowsユーザの取り込みを狙って,今回は,WindowsエミュレータDavidを搭載. 社長は「新版Turbolinux FUJIでMicrosoftの独占を止めたい」と申されているそうな. kernelは2.6.13.主な解説記事として,
http://pc.watch.impress.co.jp/docs/2005/1020/turbo.htm
http://itpro.nikkeibp.co.jp/article/NEWS/20051020/223191/- マシンにすでにあるファイルはすべて消去して,まっさらインストール. はじめに,予定するIPアドレスを入力し,rootともう一つアカウントを設定することができるようになっている. 追加パッケージもとりあえずすべてインストール.2時間くらい.
(2006/9追記.すでにWindowsがcドライブにインストールしてあるときは,Dドライブを選んでインストールすることにより, 自動的にデュアルブートになるようだ.すばらしい.)- インストールを開始するとき、IPアドレスを固定するのであれば、インストール時に固定して設定したほうがよい。デフォルトでDHCPになってしまうと、後で、コントロールパネルのインターネット接続環境を再設定して、何回か再起動しないと、IPアドレスやhostnameを完全に覚えてくれないようである。変なの。
- 今回から,ライセンス番号の取り扱いが厳しくなった.ライセンス番号を入力して有効化しないと, インストールしてもOSとして機能しない.ライセンス番号を入力すると,turbolinuxのサイトから 登録したメールアドレスへライセンスファイルが送られてくる.一度,インストール後にIPアドレスの設定を 全部消してしまったら何故か二度と設定できなくなったので,全部を再インストールした.このときにもう一度 ライセンス登録をすると,「すでにその番号は登録されています」とのメールが来る.一度だけしか送付されて こないライセンスファイルをきちんと保管することが必要になる.
- turbopkgは,turboプラスと名前を変えた.インストール後,アップデートを行う.約2時間.
- デーモンの確認,ポートの開閉などの作業を頑張って始めたが,実は,セキュリティの設定を 「厳格」ではなく中程度の「標準」にしておくと,ssh のポートが開くようだ.今回のマシンでは パラレルに組む予定がないので,とりあえずこれで済ます.
- 初期インストール時に、すべてのパッケージをインストールしたはずなのに、なぜかemacsやccが含まれていなかった。そんなときは、もう一度、CD-romより、パッケージをインストールする必要がある。こういう開発環境は、オプション、ということなのだろうか。
TurboPlusを開き、「アプリケーションの追加」を選ぶ。「CD-romよりインストール」を選んで、「Install CD No.2」を入れる。選ぶのが面倒なので「すべてのパッケージ」を選択してインストール開始にすると、「CD No.1」「CD No.2」の順にCDを入れ替える必要があるが、10数分でインストールが完了する。
Intel Fortranが動く
黒字 2002/9/20 TurboLinux7workstation版
茶字 2003/11/4 TurboLinux10desktop版
緑字 2006/5/31 TurboLinux11 FUJI 版
- まず,試したかったのは, Intel Fortran 6.0 がTurboLinuxで動くか,という 点であった.さっそく,Intel Fortran 6.0をダウンロードし,インストールする. ユーザー登録をすると,直ちにライセンスキーがメールで送られてきた. non commercialな目的ならただで使える,という太っ腹戦略がすばらしい. PATHを/opt/intel/binを加える操作が必要だったが, はたして,きちんと動いたのであった. 1台だけで試したが,これまで常用していた研究室のLinuxよりは2.5倍速い.よしよし.
- 実は,その後Cactusコードコンパイル時に, リンクエラーが生じることが発覚したが,LD_LIBRARY_PATHを設定し,さらに
setenv IA32ROOT /opt/intel/compiler60/ia32とすることで解決.
- TurboLinux10desktop版には,Intel Fortran評価版入り,とパッケージには 書いてあるが,自動的にはインストールされなかった.
- 2003年11月現在,Intel Fortranは,7.1になり,アクセス先は Intel Fortran 7.1. non commercialな目的ならただで使える,という太っ腹戦略は同じである. ユーザー登録をすると,直ちにライセンスファイルがメールで送られてきた. kernel 2.4までしか対応を表明していないので,TurboLinux10desktopで使えるかちょっと どうか心配であったが,結果から言えば大丈夫.
- インストール方法は, ここにもあるが, tarでファイルを解凍し,rootになって,/install.その際,ライセンスファイル ***.lic も同じディレクトリに入れておく. ***.licは chmod 666 しておく. インストール先は /opt/intel.
- .tcshrcに /opt/intel/compiler70/ia32/bin へのpathを追加し,さらに,
source /opt/intel/compiler70/ia32/bin/ifcvars.csh setenv IA32ROOT /opt/intel/compiler70/ia32 setenv F90 ifcとしておく
- Intel Fortranもversionは,9.1 になっている. ここの説明から,まだ non commercialな目的ならただで使える,という太っ腹戦略は同じであることを知り, ここより,メールで名前を登録してライセンスファイルを受け取る.non commercialのversion は8月まで9.0だそうだ.十分であろう.
- インストーラーまかせにしていると,/opt/intel/fc/9.0/ および /opt/intel/idb/9.0 にコンパイラ ifortとデバッガーidbがインストールされる.環境設定をしなければならないが,そのためのシェルは,/opt/intel/fc/9.0/bin/ifortvars.csh および/opt/intel/idb/9.0/idbvars.csh.ただし,これらのファイルに記載されている INSTALLDIR は,手書きで自分の マシンに設定したディレクトリを記入することが必要のようだ.2つのファイルができたら,.tcshrcファイルに
source /opt/intel/fc/9.0/bin/ifortvars_new.csh source /opt/intel/idb/9.0/bin/idbvars_new.cshと加えておけばよい.
初期設定(開いているポートの制限など)
黒字 2002/9/24 TurboLinux7workstation版
茶字 2003/11/4 TurboLinux10desktop版
- 何も考えずにすべてのパッケージをインストールすると,いろいろ 背景になんとかデーモンが走っているようで,bootが遅いし,OSも重いし, いろいろsecurity面からも危険なんだそうだ.
- 走っているデーモンを確かめるのは
# chkconfig --list | sort | more- 開いているポートを確認するコマンドは
# netstat -n -l | lessLISTENとなっているところが沢山あってまずい. そういうわけで, 物の本によると,停止した方がよい ポートは,次のもの.ポート番号 サービス名 サーバ名 機能 security上 自分の設定 21 ftp proftpd FTP 停止推奨 open 22 ssh sshd SSH open 23 telnet telnet rlogin 停止推奨 open ?? login inetd rlogin 停止推奨 open ?? shell inetd rlogin 停止推奨 open ?? telnet inetd telnet 停止推奨 open 25 smtp postfix メール 停止推奨 sendmail 53 domain named DNS 停止推奨 79 finger 80 http httpd Web 停止推奨 110 pop3 ipop3 POP 停止推奨 pop3 111 sunrpc portmap NFS/NIS 停止推奨 open 111 ?????? portmap NFS/NIS 停止推奨 open 139 netbios-ssn smb Samba 停止推奨 143 IMAP4 443 HTTPS 515 lpd print 停止推奨 901 swat Samba 停止推奨 2049 nfs nfs NFS 停止推奨 open 2049 ??? ??? NFS 停止推奨 open 5680 canna canna 漢字 停止推奨 22273 FreeWnn 漢字 停止推奨しかし,内部LANでは,telnet/ftp/NFSを使いたいので,それらは残す.後に,外部との接続をopenにしたときに,firewallを通して情報を 交換するポートは,
双方向 22 ssh 外部へ 21 ftp 80 http 443 HTTPS 2401 CVS- 起動するデーモンを絞るには,
ntsysvで,設定して再起動しても良いが,そうすると,そのlevelでしか 設定が有効ではない.そこで,きちんとrootから,chkconfig --level 2345 portmap on chkconfig --level 2345 proftpd on chkconfig --level 2345 xinetd on /etc/init.d/apmd stop /etc/init.d/apmd start /etc/init.d/apmd statusなどとする.
- TurboLinux10desktop版 では,telnet/rsh関連がデフォルトではインストールされないようだ.
rpm -qa | grep telnet >> telnet-client-0.17-23 rpm -qa | grep rsh >> noneturbolinux.co.jpのサイトでも対応するrpmファイルは見当たらない.そこで,古いversionのrpmを強引にインストールすることにした. ftp://ftp.turbolinux.co.jp/pub/TurboLinux/TurboLinux/ia32/Workstation/8/install/turbo/RPMSより,rsh-0.17-19.i586.rpm telnet-0.17-19.i586.rpmをダウンロードする.rootになって,このファイルのあるディレクトリより,rpm -Uvh rsh-0.17-19.i586.rpm rpm -e telnet-client-0.17-23 rpm -Uvh telnet-0.17-19.i586.rpm起動するために,turboserviceでshellをon.ついでにcannaをoff,ypbindをoff./etc/xinetd.d のディレクトリにある,loginファイルとtelnetファイルの disable=yesをdisable=noに 書き換えて,service xinetd restartそのほかchkconfig --level 2345 portmap on service portmap restart chkconfig --level 2345 ypbind off- TurboLinux10desktop版 では,nfs関連はインストールされるのだが,デフォルトでは起動しないようだ.
chkconfig --level 2345 nfs on service nfs start /etc/rc.d/init.d/nfs status
- 使っているうちに,しばらくするとマシンがスリープしてしまうことに 気が付いた.BIOSでスリープが入っていたらしい.BIOS設定をもういちど調整. これで解決...かと思いきや,また スリープしてしまう.どうやらapmdデーモンの仕業らしい.そこで,
chkconfig --level 2345 apmd off- proftpdやtelnetデーモンを起動していても, telnet/ftpができないのは,何でや?と思っていたら,
/etc/hosts.allowに,必要なアクセスマシンを書くのだそうだ.ここにはsshやrloginなどで アクセスするばあいにも許可する旨を書いておかないといけない.- もっと初期にやるべきだったかもしれないが,
turbonetcfgにて,4台互いのマシンの認識をaliasesでできるように設定. /etc/hostsに書き込まれるので,一つできたら,それを4台にコピーした.
初期設定(開いているポートの制限など)
緑字 2006/7/7 TurboLinux11Fuji版
- セキュリティの設定を「厳格」ではなく中程度の「標準」にしておくと,ssh のポートが開くようだ.今回のマシンではパラレルに組む予定がないので,とりあえずこれで済ます.(これでだめな場合,「コントロールセンター」の「システム管理」で、「サービス管理」の「sshd」を実行にする.)
- /etc/hosts と /etc/hosts.allow に,室内の友達マシンを記載する.
- httpdデーモンを起動させるためには,
/etc/httpd/conf/httpd.confにて、public_htmlをenableにして, 「コントロールセンター」の「システム管理」で、「サービス管理」の「httpd」を実行にする。
必要なソフトのインストールなど 2002/9/25
- xgraph : 私がこれまで愛用していたxgraphの NCSAサイト は閉鎖されてしまったようだ.機能は制限されているが, 日本人による hacked version は,入手可能である.インストール後,問題なく動く.
- ygraph : xgraphの後継ソフト.これまでMacOSXでは,インストールに成功しなかったが, Linuxでは問題なく動く.入手先は ygraph .
- Cactusコードが 要求する ソフトは次の通り. Cactusに関する説明は, ここ.
- Perl ... TurboLinuxには標準添付.
- GNU make / rpm ... TurboLinuxには標準添付.
- GNU C ... TurboLinuxには標準添付.
- GNU CPP ... TurboLinuxには標準添付.
- GNU CVS / rpm ... TurboLinuxには標準添付.
- GNU C++ ... とりあえずまだ,インストールしていない.
- F95/F77 ... Intel Fortran 6.0 でOK. (2003/11現在,versionは7.0)
- MPICH ver 1.2.2.1 or later ... インストールした.(2003/11現在,versionは1.2.5.2)
- ctags/etags ... とりあえずまだ,インストールしていない.
外部との接続など 2002/9/26
- さて,ずっと外側世界のWANとの接続ができていなかったが,ルータのポートフォワーディング 機能を指定していないことが原因だったようだ.ルータに割り当てたIPアドレスが,そのまま 直下の一台に接続できるように22番ポートを開けた.
並列化の実装など 2002/9/27
mpirunを可能にするためには,いくつかの準備が必要であった.
- rサービス(rlogin, rsh, rcp, いわゆるrcmd)を有効にしておかないといけない. rloginなどでpasswordなしでloginできるようにする必要がある. そのためには,自分のディレクトリに.rhostsファイルを作ってログインするだろう 元のマシンとユーザ名を記入する.
確認方法はrsh hostname |lsこれで相手のディレクトリが見えればよろしい.
ただ,rサービスは,セキュリティ上危険. rootのホームディレクトリに.rhostsというファイルをあらかじめ作成(かつchmod 700) すれば,他人が勝手に作成できなくなるので,少しはマシらしい.- MPICHをインストールする.役に立ったのは, ここ.
ソースの入手先はここ. 入手したversionは,mpich-1.2.4であった.(2003/11現在,versionは1.2.5.2)
- インストール.インストール先の指定,configure,makeの順である.
# ./configure -prefix=/usr/local/mpich-1.2.5.2 # make # make install- マシンファイルの設定.実行用のmpirunが読むホスト名一覧のファイルが
/usr/local/mpich-1.2.5.2/share/machines.LINUXにあるので,ここに並列化するマシンを記入する.実は,ここに記入した順で,並列設定の マシンが動くようだ.自分のマシンのhostnameを一番に書くのを忘れないように.------machines.LINUX の記述例-------- machine1 machine2 machine3 --------------------------------hostnameが一致していないときは,hostname newname- mpirunなどのコマンドがある
/usr/local/mpich-1.2.5.2/binへ,パスを通す.- とりあえずテスト
make testing何故かerrorが....まあいいか.- NFSサーバの設定とNFSクライアントの設定.ディレクトリが共通に使えなければならないので,NFSを設定する必要がある.役に立ったのは, ここ.
NFSサーバー側の設定(自分のファイルが外に対して公開できるよ,という宣言をする) これは,ディレクトリを他に公開する1台のみに行った.NFSクライアント側の設定(隣のマシンのディレクトリを読む,という設定をする) これも4台すべてについて行うのだが,親分となるhostname_serverは一つにした.そうしないと 起動時に相手の認識をするための無限ループに入ってしまうらしい.
- まず以下のサービスが起動している必要がある. portmapper nfsd mountd (これはnfsdに含まれているのかもしれない)
chkconfig --level 2345 portmap on chkconfig --level 2345 nfs on- 以下のファイルについて確認, 編集が必要
/etc/exports /etc/hosts ---> ホスト名の一覧 /etc/hosts.deny /etc/hosts.allow ------/etc/exportsの記述例-------- /pub *mn(rw) /home *mn(rw) #/pub 192.168.0.102/255.255.255.0(rw) #/home 192.168.0.102/255.255.255.0(rw) # /pub *.local.domain (rw) # sample /etc/exports file # / master(rw) trusty(rw,no_root_squash) # /projects proj*.local.domain(rw) # /usr *.local.domain(ro) @trusted(rw) # /home/joe pc001(rw,all_squash,anonuid=150,anongid=100) # /pub (ro,insecure,all_squash) -------------------------------- ------/etc/hostsの記述例-------- (turbonetcfgで自動生成) 127.0.0.1 localhost.localdomain localhost 192.168.100.101 あmん あmuぬ 192.168.100.102 いmん いmuぬ 192.168.100.103 うmん うmuぬ 192.168.100.104 えmん えmuぬ --------------------------------- rpc.mountd と rpc.nfsd を再起動 TurboLinux10desktopでサーバをrebootしたときは,ここを再実行
# exportfs -a # /etc/rc.d/init.d/nfs stop # /etc/rc.d/init.d/portmap restart # /etc/rc.d/init.d/nfs start次に設定を確認# showmount -e localhostname
- サーバーのファイルシステムをマウントするためのディレクトリを作る.
# mkdir -p /pubサーバーがどのようにエクスポートの設定をしているか確認するには・・# showmount -e hostname_server- マウントする.TurboLinux7/10desktopで クライアントをrebootしたときは,ここを再実行
# mount -t nfs hostname_server:/pub /pub または, # mount -t nfs -o rsize=1024,wsize=1024 hostname_server:/pub /pub
Cactusコードを走らせる 2002/9/27
さていよいよCactusコードをダウンロードし,
- CVSが動くためには .cvspass という空のファイルをまず作っておく必要があった.
- コンパイル時に,次のsetenvをしておく必要があることが判明した.
source /opt/intel/compiler60/ia32/bin/ifcvars.csh setenv IA32ROOT /opt/intel/compiler60/ia32 setenv F90 ifc setenv MPICH_LIB_DIR /usr/local/mpich-1.2.4/lib setenv MPICH_DIR /usr/local/mpich-1.2.4- 2003/11のversionでは,
source /opt/intel/compiler70/ia32/bin/ifcvars.csh setenv IA32ROOT /opt/intel/compiler70/ia32 setenv F90 ifc setenv MPICH_LIB_DIR /usr/local/mpich-1.2.5.2/lib setenv MPICH_DIR /usr/local/mpich-1.2.5.2あと,F90FLAGS -132 ????- これにより,コンパイルは,
make xxx make xxx MPI=MPICHでできるようになった.めでたし,めでたし.
reboot 2002/11/5
停電後,rebootすることになった.mountは,毎回行うことが必要らしい. go to mount
LaTeX 2002/11/12
latexは,標準でインストールされているのだが,revtexなどのスタイルファイルを インストールする必要があった./usr/share/texmf/tex/latexの所にrevtex4ディレクトリを置いて,mktexlsrこの件についてはttaka氏に世話になった.日本語 latex に関して 2006/5/31
緑字 2006/5/31 TurboLinux11 FUJI 版
- platexは標準でインストールされる.今回は,日本語のlatex環境が必要なので,初めて,日本語にチャレンジ.すると,どうも xdvi の日本語が対応していないようだ.詳しくは ここ.
- 私は特に xdvi にはこだわらないので,pdfにして見ることにして,
platex sample.tex dvipdfmx sample.dvi acroread sample.pdfで済ませてしまおうかな.- プリンタ出力まではまだ確かめていない.
user管理 2002/11/15
userが増えてくると,その管理も必要になってきた.特に他からhomeを mountしているときは,uidやgidが一致していないと混乱をきたす. まず,groupを一つ作り,user登録はその元で分類した.groupadd -g 1100 guest useradd -g guest -u 1103 username passwd usernameちなみに,userdel usernameとすればuser情報が消去される. これらの情報は,/etc/groupと/etc/passwdに登録される. これらのファイルを修正するときはvi /etc/group vipw /etc/passwdすでに/homeにあるディレクトリを修正するときは,rootになって,/home で,chgrp -R guest username chown -R yoneda username chgrp -R root shinkai chown -R shinkai shinkaiなどとする必要があった.-Rはrecurrsive.ファイルのownerが変になったときは,chown -R shinkai:root *など
LAPACKインストール 2003/4/9 未完...
LAPACK (Linear Algebra PACKage) をインストールする必要に迫られた.しかし,intel fortran compiler ifcとの 組み合わせがなかなか相性悪い.この件についてはttaka氏に世話になった.
- LAPACK (Linear Algebra PACKage)よりlapack.tgzをダウンロード.現在手に入る versionは,version 3.0 + UPDATES.May 31, 2000
tar xvfz lapack.tgzすると,LAPACKディレクトリができる.このセットには,LAPACKで必要となる BLAS (Basic Linear Algebra Subprograms) も含まれている.- しかし,これにはバグが 沢山ある そうだ.patch を一まとめにしたものをttaka氏が作ってくれて, lapack-patch-oct4-2002.tgz. これをダウンロードして,cd LAPACK してから
tar xvfz lapack-patch-oct4-2002.tgzとすればpatch があたる(patch と言うかもろに上書きですが).- ifcに対するmake.incの書き換え例は, ここにあって, それに従うと,
FORTRAN = ifc OPTS = -O3 LOADOPTS = -L /opt/intel/compiler60/ia32/lib -lPEPCF90とすることになるのだが,そうすると後にエラーが発生する.ttaka氏によれば,FORTRAN = ifc OPTS = -O3 DRVOPTS = $(OPTS) NOOPT = -O0 LOADER = ifc LOADOPTS = -O0 -L /opt/intel/compiler60/ia32/lib -lPEPCF90とするとよい.
さらに,BLAS/SRC/dcabs1.fというプログラムにoptionをつけてコンパイルすると こける(g77だと,zamax.f も問題らしい)そうなので, BLAS/SRC/Makefileの最後に2行追加する. すなわち,.f.o: $(FORTRAN) $(OPTS) -c $*.f dcabs1.o: $(FORTRAN) $(NOOPT) -c $*.f
ちなみに,make cleanでは,BLAS/TESTING/*.oは,消去されないので,make clean rm -f BLAS/TESTING/*.oとしておくと良い.- あとは,コンパイルとテスト.以下ttaka氏からのコメント.
make install ---- マシン依存のsource のcheck make blaslib make blas_testingこの結果としてBLAS/*.out ができるが、grep FAIL BLAS/*.out としてFAIL が検出 されたらNG.現在OK.make lapacklib make tmglib make testing -- lapack のtestこれは,make[2]: Leaving directory `/home/shinkai/LAPACK/TESTING/LIN' Testing DOUBLE PRECISION LAPACK linear equation routines ./xlintstd < dtest.in > dtest.out 2>&1と表示されたまま,動作が無限ループの気配.make timingこれも,make[2]: Leaving directory `/home/shinkai/LAPACK/TIMING/LIN' Timing square DOUBLE PRECISION LAPACK linear equation routines ./xlintimd < dtime.in > dtime.out 2>&1と表示されたまま,動作が無限ループの気配.make blas_timingこれは,終了する.
f90で併用するには,さらにLAPACK95を利用可能にしなければならない.
- LAPACK95 よりlapack95.tgzをダウンロード. 現在のversion 3.0, November 30, 2000.
tar xvfz lapack95.tgzすると,LAPACK95ディレクトリができる.- LAPACK95/make.incを開き,次のような変更をする.(上記にならって,-O0)
FC = ifc FC1 = ifc OPTS = -O3 LOADOPTS = -O0 -L /opt/intel/compiler60/ia32/lib -lPEPCF90 LAPACK_PATH = /home/shinkai/LAPACK/ #LAPACK_PATH = /usr/local/lib/LAPACK3/ LAPACK_PATH = /home/shinkai/LAPACK/ # 私の場合 #LAPACK77 = $(LAPACK_PATH)/lapack.a LAPACK77 = $(LAPACK_PATH)/lapack_LINUX-intel.a #TMG77 = $(LAPACK_PATH)/tmglib.a TMG77 = $(LAPACK_PATH)/tmglib_LINUX-intel.a #BLAS = $(LAPACK_PATH)/blas.a BLAS = $(LAPACK_PATH)/blas_LINUX-intel.aifcでは,moduleファイルは,*.modではなく,*.dなので,以下の変更をする.
LAPACK95/SRC/makefile,LAPACK95/TESTING/makefileで, 数カ所 *.mod を *.d になおす.すなわち,cp *.mod ../lapack95_modules/ を cp *.d ../lapack95_modules/ に直す. 最後のclean: 'rm' -f *.a *.o *.mod *.l core を 'rm' -f *.a *.o *.d *.l core とするなどなど.- コンパイルとテスト
LAPACK95/SRC/で make single これはOK # for single precision library, make double これはOK # for double precision library, make single_complex # for single precision and complex library, error la_cgesvd.f90 make single_double これはOK # for single and double precisions library, make double_dcomplex # for double precision and double complex library, error la_zgesvd.f90 make single_double_complex # for single and double precision, and complex library, error la_cgesvd.f90 make single_double_complex_dcomplex # for single and double error la_cgesvd.f90 LAPACK95/TESTING/で make linsingle error la_test_sgesv.f90 ifc -c -O3 -I./../lapack95_modules la_test_sgesv.f90 external subroutine LA_TEST_SGESV Error FCE22 : Module LA_PRECISION USEd by subroutine LA_TEST_SGESV in work.pc not found Error FCE22 : Module F95_LAPACK USEd by subroutine LA_TEST_SGESV in work.pc not found Error 355 : In program unit LA_TEST_SGESV variable WP has not been given a type 3 Errors compilation aborted for la_test_sgesv.f90 (code 1) make lindouble error la_test_dgesv.f90 make all 当然だめ make これはOK.LIB/testlib.a できる. ???
セキュリティアップデート 2003/5/22, 2003/9/18
「またまたSSHに脆弱性発見」とかいうらしいので,updateするように,上から言われた.この簡単さがturbolinuxの良いところ,とか.
- turbolinuxのサイト から,情報収集
- 自分のversionの確認は
rpm -qa | grep ssh- rootでログインして,
turbopkgこれでupdateを選び,FTPサイトとして,ftp.turbolinux.co.jp /pub/TurboLinux/TurboLinux/ia32/Workstation/7/updates/RPMS anonymousを登録してあれば,一発終了.- turbopkg+FTPで,うまくいかない時は,直接ファイルをftpサイトからanonymous loginでダウンロード.
ftp ftp.turbolinux.co.jp cd /pub/TurboLinux/TurboLinux/ia32/Workstation/7/updates/RPMS mget openssh*rootでログインして,turbopkgこれでupdateを選び,ダウンロードしたRPMファイルがあるディレクトリを選択し, 数分待つことにより終了.- turbopkgがそれでもうまくいかない時は,地道に
rpm -Fvh openssh-3.7.1p1-4.i586.rpm rpm -Fvh openssh-askpass-3.7.1p1-4.i586.rpm rpm -Fvh openssh-clients-3.7.1p1-4.i586.rpm rpm -Fvh openssh-server-3.7.1p1-4.i586.rpm
ファイルエラー 2003/10/15
久しぶりに終了,再起動をしたら,ディスクのチェックが自動的に始まり,エラーを検出して起動が途中で 止まってしまった.fsckをマニュアルで行え,とかかれていたので,rootで入り,fsck /あとはClearするかにyesとだけ答え,修復を信じるばかり.
コマンドリスト
起動コマンド
kterm -sl 500 スクロールを500行にしてkterm起動 xhost + すべてのホストからXserverへの接続を許可 確認コマンド
df 空き容量 -mでMbyte表示, umount /mnt/cdrom CDromをアンマウント find . -name filename -print
find . -name "*.conf" -printファイル捜索 ifconfig インターフェース状態の確認 netstat -n -l | less 開いているポートを確認 nslookup hostname IPアドレスなどの確認 rpm -qa | more
rpm -qa | grep XFree86ソフトウェア・パッケージ一覧 rpm -qf /etc/ftpaccess そのファイルがどのパッケージに属しているか rpm -q --whatrequires +gtk 指定したパッケージがどのパッケージに必要とされているか rpm -qR wu-ftpd パッケージが依存しているパッケージとファイルのリスト rpm -i wu-ftpd パッケージ情報 rpm -ql wu-ftpd パッケージに含まれているファイルの一覧 uname -a システム情報 who 誰情報 w 現在のプロセス状況 grep -e "hoohoo" */*/* |& more hoohooを含むファイルをまとめて表示 管理コマンド only from root
adduser user追加,直後にpasswdでパスワードの設定 chkconfig --list | sort | more
chkconfig --level 2345 portmap onデーモン管理 ntpdate 134.160.4.5
ntpdate ntp1.jst.mfeed.ad.jp
ntpdate ntp1.tohoku.ac.jp
ntpdate ntp.hiroshima-u.ac.jp時刻の同期 limit coredumpsize 0 coredumpsizeを無効に ln -s oldname newname シンボリックリンク loadkeys us キーボードをUSに.jp106なら日本語 ntsysv デーモン管理(そのレベルのみ,reboot 必要) turbonetcfg IPアドレスの設定など turbopkg パッケージ更新 shutdown -r now リスタート shutdown -h now 終了 これで,私も情報系の職に応募資格を得たか???
F様,お世話になりました.末永くお幸せに.
Go back to the top page ofor
![]()
My current Email address is![]()
Last updated: 2006/10/19