ラウンジスレより転載
パッケージが用意されているディストリビューション †[edit]
既にパッケージになっている場合はそれを使えばよい。
- Arch Linux
- boinc (ArchWiki)
- Debian
- boinc-client boinc-manager (Debian Wiki)
- Fedora
- boinc-client boinc-manager (BOINC Wiki)
- Gentoo
- sci-misc/boinc (BOINC Wiki)
- Mandriva
- boinc-client boinc-manager
- OpenSUSE
- boinc-client boinc-gui
- PCLinuxOS
- boinc-client boinc-manager
- Ubuntu
- boinc-client boinc-manager (Ubuntu Wiki)
ディストリビューションのパッケージで .desktop ファイルを用意していれば、メニューから BOINC Manager で GUI の起動が可能。
- http://boinc.berkeley.edu/ 経由でBOINCパッケージ(boinc_VERSION_{i686|x86_64}-pc-linux-gnu.sh、VERSIONはバージョンナンバーに置換)をダウンロード (各プロジェクトのダウンロードリンクが切れている場合が多いので、その時はhttp://boinc.berkeley.edu/download_all.phpからダウンするといいよ)
- 汚していいディレクトリの下にBOINCパッケージを持ってくる
- コマンドプロンプトを立ち上げ、cd コマンドでBOINCパッケージのある場所に移動
- コマンドラインから
$ sh ./boinc_VERSION_i686-pc-linux-gnu.sh
または
$ sh ./boinc_VERSION_x86_64-pc-linux-gnu.sh
とすると、その下にBOINCという名前のディレクトリが出来る。
シェルスクリプトから自動でインストールする場合はShellInstaller?から。
- 出来たBOINCという名前の中のboincをバックグラウンドで動かせば、Xを使わず動かすことが出来る。
$ ./boinc&
として
$ ps -A | grep boinc
で「boinc」で始まるプロセスが表示されれば無事動いている。
下記の FreeBSD の場合同様、以下のエラーが出て参加にに失敗した場合、
Scheduler request failed: Peer certificate cannot be authenticated with known CA certificates
ここ から証明書 ca-bundle.crt をダウンロード。
$ cd /var/lib/boinc-client
$ sudo mv ca-bundle.crt boinc-bundle.crt.org
$ sudo mv ~/Desktop/ca-bundle.crt ./
$ sudo chown root:root ca-bundle.crt
こんな感じで特に BOINC の再起動も必要なく参加できました。
64bit システムでの注意点 †[edit]
プロジェクトの中には、アプリケーションが 32bit 版しか提供されていないため、宿題その物の実行やグラフィックスの表示に 32bit ライブラリが必要なものがあります。宿題の実行には glibc とか glib とか、グラフィックスには X 関連の pango、xdamage、libxi、libgl、libxmu およびそれらが依存するパッケージとかがあれば良さげな感じです。
UbuntuやDebianでは $ sudo apt-get install ia32-libs
UbuntuやDebianでは
$ sudo apt-get install ia32-libs
をやっておくと安心かも
ソースからビルド †[edit]
自分でパッケージにしてパッケージ管理下に置きたいあなたのためのコーナーです。GentooのebuildなりFedoraのspecファイルなりDebianなりの既存のパッケージを参考に以下の情報で作成して見てください。
ソースコードの入手:
$ svn checkout http://boinc.berkeley.edu/svn/tags/boinc_core_release_${バージョン//./_}/
- 依存関係 (boinc-clientおよびboinc-manager使用の場合)
- ca-certificates
- openssl
- curl
- util-linux-ng
- zlib
- sqlite3
- freeglut
- libjpeg
- wxgtk または libwxgtk
- ビルド時のみ必要なもの
- libxslt
- pkgconfig
- perl-xml-sax
- subversion
- gcc とか make とかのビルド環境 (Debian、Ubuntuのbuild-essentialみたいなの)
他に以下のような留意点があります。
- _autosetup は LC_MESSAGE=ja_JP.* の状態で実行すると GNU make のバージョンチェックが失敗するので LANG=C/LC_ALL=C 指定で行う必要がある。
- gtk2 関連のインクルードファイルチェックがシカトされているので CXXFLAGS で指定してあげる必要がある。
- コンパイルオプションに -D_FORTIFY_SOURCE=2 を指定した場合、ビルドに失敗する問題のパッチ (BOINC 7.0.28)。
- boincmgr の詳細表示モード時にメニューバーが正常に表示されない問題のパッチ (BOINC 7.0.28)。このパッチを当てなくてもウィンドウサイズを変更すればメニューは表示される。
ビルド手順 (サーバなし、GUIあり)
$ CFLAGS+=" `pkg-config --cflags gtk+-2.0`"
$ CXXFLAGS+=" `pkg-config --cflags gtk+-2.0`"
$ LDFLAGS+=" `pkg-config --libs gtk+-2.0` -lX11"
$ LC_ALL=C ./_autosetup
$ ./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-server \
--with-wxdir=/usr/lib \
--enable-unicode \
--with-x \
--with-wx-config=$(which wx-config) \
--with-ssl
$ make
# make install
SVNリポジトリは、たとえリリース済みの安定版リリースのブランチであってもしれっと更新されるので注意 (上記注意点でもうまく行かないかもしれないし、一部またはすべてが要らないかもしれない)。
その他
WCG,TANPAKU,Rosettaにて確認
参考URL http://people.freebsd.org/~pav/boinc.html
/usr/ports/net/boinc-client/Makefile の34行目、CONFIGURE_ARGS にパラメータを1つ追加します。
CONFIGURE_ARGS= --disable-server --with-boinc-platform=i686-pc-linux-gnu
でもって普通に make; make install です。
実行時には、カーネルの設定も変更します。
sysctl kern.elf32.fallback_brand=3
/etc/rc.conf に boinc_enable="YES" を追加
/usr/local/etc/rc.d/boinc の boinc_user=boinc を boinc_user=root に変更(rootでプロジェクトにattachする場合)
あとは /usr/local/bin/boinc_client を普通に起動します(rcにスクリプト入ってるので次から自動起動)。
WCG参加時に、
Scheduler request failed: problem with the SSL CA cert (path? access rights?)
が出て参加に失敗したときは、
- 一旦projectをdetach
- http://boinc.berkeley.edu/dev/forum_thread.php?id=1783
の下の方のTry hereなリンクからca-bundle.crtという証明書をダウンロードし、
/var/db/boincに突っ込む
(http://boinc.berkeley.edu/trac/wiki/ErrorReferenceのDownload the missing file.からも、
ca-bundle.crtが入手可能)
→2010年2月現在、ここ(http://boinc.berkeley.edu/trac/wiki/Error/Scheduler%20request%20failed)のDownload the missing file.からDL可。
- projectにattach
- attachできて、WUも降ってきたのに"ELF binary type "0" not known."と表示されて動かない場合
linux環境がない(?)と言われているので、 emulators/linux_base-fc4 をportsで入れる。
rc.conf に linux_enable="YES" と追加しておくのを忘れずに。
パッケージなどでインストールしてBoincManager?があればそこからWindowsのように実行可能。
1-4の作業はBOINCを実行するマシン上で行う必要はないが、5から先はBOINCを実行するマシン上で行うこと。
- (登録していないなら)WCGのユーザ登録を行う。入力方法はhttp://team2ch.info/WorldCommunityGrid/ 参照。
2つめの画面(Download)まで行ったら一度ホームに戻る。
- 「マイ・グリッド」(My Grid)からサイン・インする。
- マイ・グリッドページから「マイ・プロファイル」ページに移動。
- 下の方にある BOINC アカウント・キー: の後の32文字の英数字(アカウントキー)を記録しておく。
- コマンドプロンプトを立ち上げ、cd コマンドで先ほど BOINC をインストールした場所((汚していいディレクトリ)/BOINC) に移動。パッケージ管理や手前ビルドでシステムワイドにインストールした場合はそれぞれで設定したディレクトリへ。
- BOINC をまだ動かしていないなら動かす。動かし方は後述の[実行]を参照。
- コマンドラインから
./boinccmd --project_attach http://www.worldcommunitygrid.org (アカウントキー)
例: アカウント・キーが 0123456789abcdeffedcba9876543210 だったら
./boinccmd --project_attach http://www.worldcommunitygrid.org 0123456789abcdeffedcba9876543210
- いつでも実行していいなら、コマンドラインから
(汚していいディレクトリ)/BOINC/run_client -daemon
とするとdaemon(サービス)として動き出す。常時接続の人は
(汚していいディレクトリ)/BOINC/run_client -daemon -return_results_immediately
しておくといいかもしれない。
マシンの起動と同時に起動する場合は、cronを使う。具体的にはcrontab -eを実行して
@reboot (汚していいディレクトリ)/BOINC/run_client -daemon -return_results_immediately >/dev/null 2>&1
という1行を加えればよい。
boinccmd でも一通りの操作はできるが、状態を詳しく見たい場合は遠隔操作がお薦め。
BOINC を実行する前に (汚していいディレクトリ)/BOINC/remote_hosts.cfg に操作元の
マシンのIPアドレスを書いておく。BOINCはTCPの31416番ポートを利用するので、
LAN 側にもファイアウォールを立てているなら受け入れられるように設定を変更すること。
http://team2ch.info/BOINC_Manager/#v2d2ea73 等を参照。
操作のほとんど全ては ./boinccmd を叩けばよい。./boinccmd --help でコマンド一覧が出るので参考にすること。
よく使う操作の一覧は以下の通り。
- 常時実行させる・サスペンドから復帰:
./boinccmd --set_run_mode always
- サスペンド:
./boinccmd --set_run_mode never
- WCGの手動更新:
./boinccmd --project http://www.worldcommunitygrid.org update
- BOINCを終了:
./boinccmd --quit
プロクシ(Proxy)経由 †[edit]
client_state.xmlに書き足す。
<proxy_info>
<use_http_proxy/>
<http_server_name>proxyserver</http_server_name>
<http_server_port>proxyport</http_server_port>
</proxy_info>
バージョンアップ †[edit]
http://www.spy-hill.net/~myers/help/boinc/unix.html
↑の一番下を参考に
コメントはありません。 Comments/Linux?