Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 137224 - /etc/init.d/boinc attach does not work for setiathome
Summary: /etc/init.d/boinc attach does not work for setiathome
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: AMD64 Other
: High major (vote)
Assignee: Tomáš Chvátal (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-06-18 21:04 UTC by Matt Garman
Modified: 2009-01-21 15:32 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matt Garman 2006-06-18 21:04:27 UTC
Using "/etc/init.d/boinc attach" does not yield a working boinc client, at least for setiathome on AMD64 (x86_64).

Installed packaged: sci-misc/boinc-5.2.14 USE="X -server" and sci-astronomy/setiathome-4.18-r1 USE="-server"

# /etc/init.d/boinc attach
    Enter the Project URL: http://setiathome.berkeley.edu
    Enter your Account Key: xxxxx
 * Re-caching dependency info (mtimes differ)...
 * Re-caching dependency info (mtimes differ)...
 * Re-caching dependency info (mtimes differ)...
 * Re-caching dependency info (mtimes differ)...
 * Starting BOINC ...
 * Directory /var/lib/boinc not existing, creating now.
 * File /var/lib/boinc/lockfile does not exist, assuming first run.
 * You need to setup an account on the BOINC project homepage beforehand! Go to http://boinc.berkeley.edu/ and locate your project.
 * Then either run /etc/init.d/boinc attach or connect with a gui client and attach to a project with that.                                               [ ok ]
 * Attaching to project ...                                               [ !! ]
2006-06-18 22:54:02 [---] Starting BOINC client version 5.2.14 for x86_64-pc-linux-gnu
2006-06-18 22:54:02 [---] libcurl/7.15.1 OpenSSL/0.9.7i zlib/1.2.3
2006-06-18 22:54:02 [---] Data directory: /var/lib/boinc
2006-06-18 22:54:02 [---] Processor: 2 AuthenticAMD AMD Athlon(tm) 64 X2 Dual Core Processor 3800+
2006-06-18 22:54:02 [---] Memory: 1003.02 MB physical, 980.52 MB virtual
2006-06-18 22:54:02 [---] Disk: 7.52 GB total, 6.49 GB free
2006-06-18 22:54:02 [---] No general preferences found - using BOINC defaults

# cat /var/log/boinc.log
2006-06-18 22:54:02 [---] Starting BOINC client version 5.2.14 for x86_64-pc-linux-gnu
2006-06-18 22:54:02 [---] libcurl/7.15.1 OpenSSL/0.9.7i zlib/1.2.3
2006-06-18 22:54:02 [---] Data directory: /var/lib/boinc
2006-06-18 22:54:02 [---] Processor: 2 AuthenticAMD AMD Athlon(tm) 64 X2 Dual Core Processor 3800+
2006-06-18 22:54:02 [---] Memory: 1003.02 MB physical, 980.52 MB virtual
2006-06-18 22:54:02 [---] Disk: 7.52 GB total, 6.49 GB free
2006-06-18 22:54:02 [---] No general preferences found - using BOINC defaults
2006-06-18 22:54:35 [---] Remote control not allowed; using loopback address
2006-06-18 22:54:35 [---] This computer is not attached to any projects.
2006-06-18 22:54:35 [---] There are several ways to attach to a project:
2006-06-18 22:54:35 [---] 1) Run the BOINC Manager and click Projects.
2006-06-18 22:54:35 [---] 2) (Unix/Mac) Use boinc_cmd --project_attach
2006-06-18 22:54:35 [---] 3) (Unix/Mac) Run this program with the -attach_project command-line option.
2006-06-18 22:54:35 [---] Visit http://boinc.berkeley.edu for more information
2006-06-18 22:54:38 [---] Running CPU benchmarks
2006-06-18 22:55:36 [---] Benchmark results:
2006-06-18 22:55:36 [---]    Number of CPUs: 2
2006-06-18 22:55:36 [---]    1741 double precision MIPS (Whetstone) per CPU
2006-06-18 22:55:36 [---]    4742 integer MIPS (Dhrystone) per CPU
2006-06-18 22:55:36 [---] Finished CPU benchmarks
2006-06-18 22:55:37 [---] Resuming computation and network activity
2006-06-18 22:55:37 [---] request_reschedule_cpus: Resuming activities

At this point, the boinc_client program is running, but no setiathome processes are running.  So I wait two whole days.

# sleep 48h

Still no setiathome processes, boinc_client still running.  No change in /var/log/boinc.log.  So perhaps I need to restart boinc:

# /etc/init.d/boinc restart
 * Re-caching dependency info (mtimes differ)...
 * Stopping BOINC ...                                                     [ ok ]
 * Re-caching dependency info (mtimes differ)...
 * Re-caching dependency info (mtimes differ)...
 * Re-caching dependency info (mtimes differ)...
 * Re-caching dependency info (mtimes differ)...
 * Starting BOINC ...                                                     [ ok ]

cat /var/log/boinc.log
2006-06-18 23:02:09 [---] Starting BOINC client version 5.2.14 for x86_64-pc-linux-gnu
2006-06-18 23:02:09 [---] libcurl/7.15.1 OpenSSL/0.9.7i zlib/1.2.3
2006-06-18 23:02:09 [---] Data directory: /var/lib/boinc
2006-06-18 23:02:09 [---] Processor: 2 AuthenticAMD AMD Athlon(tm) 64 X2 Dual Core Processor 3800+
2006-06-18 23:02:09 [---] Memory: 1003.02 MB physical, 980.52 MB virtual
2006-06-18 23:02:09 [---] Disk: 7.52 GB total, 6.49 GB free
2006-06-18 23:02:09 [---] No general preferences found - using BOINC defaults
2006-06-18 23:02:09 [---] Remote control not allowed; using loopback address
2006-06-18 23:02:09 [---] This computer is not attached to any projects.
2006-06-18 23:02:09 [---] There are several ways to attach to a project:
2006-06-18 23:02:09 [---] 1) Run the BOINC Manager and click Projects.
2006-06-18 23:02:09 [---] 2) (Unix/Mac) Use boinc_cmd --project_attach
2006-06-18 23:02:09 [---] 3) (Unix/Mac) Run this program with the -attach_project command-line option.
2006-06-18 23:02:09 [---] Visit http://boinc.berkeley.edu for more information

So running /etc/init.d/boinc attach didn't actually do what was needed.

Not sure how to proceed.

# emerge --info
Portage 2.1 (default-linux/amd64/2006.0, gcc-3.4.5, glibc-2.3.6-r3, 2.6.15-gentoo-r5 x86_64)
=================================================================
System uname: 2.6.15-gentoo-r5 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+
Gentoo Base System version 1.6.14
dev-lang/python:     2.4.2
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1-r2
sys-devel/gcc-config: 1.3.13-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=athlon64 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.mirrors.tds.net/gentoo http://gentoo.cites.uiuc.edu/pub/gentoo/ http://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://gentoo.chem.wisc.edu/gentoo/"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://septictank/portage"
USE="amd64 X alsa avi berkdb bitmap-fonts cli crypt cups dri dvd eds emboss encode flac foomaticdb fortran gif gpm gstreamer gtk gtk2 imlib ipv6 isdnlog jpeg lzw lzw-tiff mp3 mpeg ncurses nptl nvidia offensive opengl pam pcre pdflib perl png pppd python qt quicktime readline reflection samba sdl session spell spl ssl tcpd tiff truetype-fonts type1-fonts usb video_cards_nvidia xorg xpm xscreensaver xv xvmc zlib elibc_glibc kernel_linux userland_GNU"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 1 Cameron Maxwell 2006-07-15 02:02:56 UTC
The bug appears to be in the boinc_cmd program used by the init scripts.  If you launch boinc_client directly with:

$boinc_client --project_attach http://setiathome.berkeley.edu XXXXXXXXX

then it will attach properly and start running.
Comment 2 Craig Andrews gentoo-dev 2006-10-16 19:21:56 UTC
Actually, setiathome does not work on AMD64. Once you attach to the project, you can look at the log and you'll see errors like this:
"[SETI@home] Message from server: platform 'x86_64-pc-linux-gnu' not found"
The SETI server won't provide you with an x86_64 executable. I have been unable to get this to work, unfortunately. There is a hack involving app_info.xml, and compiling your own setiathome executable. I downloaded some pre-made executables I found via google, but haven't gotten them to work. If someone can make this work,  I'd love to know!
I think the real cure would be update the setiathome ebuild in portage: bug 136862 - http://bugs.gentoo.org/show_bug.cgi?id=136862
Comment 3 Peter Humphrey 2006-12-21 09:20:58 UTC
I get a supposedly running client, but nothing happening. No errors either, such as those in comment 2.

$ cat /var/log/boinc.log
2006-12-21 13:39:24 [---] Starting BOINC client version 5.4.11 for x86_64-pc-linux-gnu
2006-12-21 13:39:24 [---] libcurl/7.15.1 OpenSSL/0.9.8d zlib/1.2.3
2006-12-21 13:39:24 [---] Data directory: /var/lib/boinc
2006-12-21 13:39:24 [---] Processor: 1 AuthenticAMD AMD Sempron(tm) Processor 2800+
2006-12-21 13:39:24 [---] Memory: 183.77 MB physical, 2.01 GB virtual
2006-12-21 13:39:24 [---] Disk: 4.99 GB total, 3.74 GB free
2006-12-21 13:39:24 [lhcathome] URL: http://lhcathome.cern.ch/; Computer ID: 3778906; location: home; project prefs: default
2006-12-21 13:39:24 [Einstein@Home] URL: http://einstein.phys.uwm.edu/; Computer ID: 827392; location: home; project prefs: default
2006-12-21 13:39:24 [Predictor @ Home] URL: http://predictor.scripps.edu/; Computer ID: 278236; location: home; project prefs: default
2006-12-21 13:39:24 [SETI@home] URL: http://setiathome.berkeley.edu/; Computer ID: 2968115; location: home; project prefs: default
2006-12-21 13:39:24 [---] No general preferences found - using BOINC defaults
2006-12-21 13:39:24 [---] Local control only allowed
2006-12-21 13:39:24 [---] Listening on port 31416

It's now 3.4 hours since starting boinc with "/etc/init.d/boinc attach". What is the client expecting to hear on that port? Tcpdump doesn't show any activity. Do I have to open a port in the firewall? Which one?

I had been running boinc on this box, but using a program from the Berkeley site. Now though I have a no-multilib profile and I can't see a statically linked boinc client on their site so I tried the portage package.
Comment 4 Peter Humphrey 2007-02-14 09:05:41 UTC
So, it looks as though the 64-bit client is reporting itself as such to the participating projects and asking for work for that platform. When it doesn't get any it just sits around.

Until the projects recognise our platform, it would be sensible for the client to ask for an x86 program; could this be implemented, please? I'm still having to do the whole job manually, which is feasible but not convenient.
Comment 5 Gokdeniz Karadag 2007-04-27 17:00:23 UTC
I have an x86 gentoo and /etc/init.d/boinc attach does not work for me either for setiathome; this post has helped me, 
http://forums.gentoo.org/viewtopic-p-3998772.html#3998772
"" Put **any** password in /var/lib/boinc/gui_rpc_auth.cfg. Restart boinc. Run boinc_gui and go to "Advanced>>Select Computer, for hostname put in "localhost" for password "your_password". Now you should be able to attach. ""

Maybe you should include it in the ebuild as a message.

in my condition, "boinc_cmd --project_attach http://setiathome.berkeley.edu <id>" gives the follwing error.
Authorization failure: -155



Comment 6 Peter Humphrey 2007-05-16 10:43:25 UTC
(In reply to comment #5)

> "" Put any password in /var/lib/boinc/gui_rpc_auth.cfg. Restart boinc. Run
> boinc_gui and go to "Advanced>>Select Computer, for hostname put in "localhost"
> for password "your_password". Now you should be able to attach. ""

Yes, it is possible to attach, but still no work is done. I get this in boinc.log:

[SETI@home] Message from server: platform 'x86_64-pc-linux-gnu' not found

Until Gentoo, BOINC and its projects get together to create a client that will run effectively on amd64, for its users there's no point in having boinc in portage at all. It should be hard-masked out of all 64-bit platforms. It would be good if the BOINC project were to be more open about this problem, but the whole experience of trying to find any useful info on their Web site is like wading through treacle.

I'd like to raise the severity of this bug in the hope of getting someone's attention, but of course I can't, not being its originator.
Comment 7 Matt Garman 2007-05-16 12:53:21 UTC
(In reply to comment #6)
> Until Gentoo, BOINC and its projects get together to create a client that will
> run effectively on amd64, for its users there's no point in having boinc in
> portage at all. It should be hard-masked out of all 64-bit platforms. It would
> be good if the BOINC project were to be more open about this problem, but the
> whole experience of trying to find any useful info on their Web site is like
> wading through treacle.

I've since totally given up on using BOINC/seti from portage.  I agree that it should be hard-masked, since it doesn't work at all.

I set up BOINC+seti manually now, but even that can be kind of flaky:

    http://setiathome.berkeley.edu/forum_thread.php?id=32464

It's been working mostly consistently for me, though I can't remember exactly what steps I took to set it up.

> I'd like to raise the severity of this bug in the hope of getting someone's
> attention, but of course I can't, not being its originator.

I'm the originator; I'll bump the severity up a notch.
Comment 8 Peter Humphrey 2007-05-16 22:17:46 UTC
(In reply to comment #7)
 
> I set up BOINC+seti manually now, but even that can be kind of flaky:
> 
>     http://setiathome.berkeley.edu/forum_thread.php?id=32464

Thanks for the pointer. I've added a comment there to describe my method, which isn't particularly flaky apart from the very odd scheduling algorithm in boinc-core.
Comment 9 Dave V 2007-07-30 22:52:39 UTC
/etc/init.d/boinc attach does not work UNLESS you "cd ~boinc", I'm no bash expect, but I think a simple

cd ${RUNTIMEDIR}

would fix the problem in the attach function.
(I'm using version 5.8.15.)
Comment 10 Abraham Marin Perez 2008-07-06 13:42:51 UTC
(In reply to comment #9)
> /etc/init.d/boinc attach does not work UNLESS you "cd ~boinc", I'm no bash
> expect, but I think a simple
> 
> cd ${RUNTIMEDIR}
> 
> would fix the problem in the attach function.
> (I'm using version 5.8.15.)
> 

I found the same to be true, th problem is /etc/init.d/boinc attach calls boinc_cmd, and that command only works if executed in boinc dir, as pointed at

http://boinc.berkeley.edu/dev/forum_thread.php?id=977

(Here they specifically advise not to shell boinc_cmd)

If you call boinc_cmd or even /etc/init.d/boinc attach from /var/lib/boinc it works flawlessly.
Comment 11 Dagorath 2008-11-16 11:32:29 UTC
(In reply to comment #10)
> (In reply to comment #9)
> > /etc/init.d/boinc attach does not work UNLESS you "cd ~boinc", I'm no bash
> > expect, but I think a simple
> > 
> > cd ${RUNTIMEDIR}
> > 
> > would fix the problem in the attach function.
> > (I'm using version 5.8.15.)
> > 
> 
> I found the same to be true, th problem is /etc/init.d/boinc attach calls
> boinc_cmd, and that command only works if executed in boinc dir, as pointed at
> 
> http://boinc.berkeley.edu/dev/forum_thread.php?id=977
> 
> (Here they specifically advise not to shell boinc_cmd)
> 
> If you call boinc_cmd or even /etc/init.d/boinc attach from /var/lib/boinc it
> works flawlessly.
> 

The reason boinc_cmd works flawlessly if called from /var/lib/boinc is because there exists a file name /var/lib/boinc/gui_rpc_auth.cfg which contains the password boinc_cmd needs.  If run without the --passwd <password> arg, boinc_cmd looks for qui_rpc_auth.cfg in the current dir.  If it finds it in the current dir and has read permission then it reads the password and all is well. If it doesn't find gui_rpc_auth.cfg in current dir then it fails.  So, you can run boinc_cmd from *any* dir if you also give the password contained in /var/lib/boinc/qui on the command line.  Do boinc_cmd --help for command line syntax.

The password in gui_rpc_auth.cfg is very long and inconvenient for putting on the command line.  Just stop boinc then edit the password to something shorter and more convenient for you.  Then restart boinc and use boinc_cmd with the new password.  Using boinc_cmd to control the client (boinc or boinc-core) is very inconvenient.  Use the manager (boinc-gui) instead, unless your system is CLI only, of course. 

The problems you people are having with boinc_gui are the same as with boinc_cmd.  We call boinc-gui "the manager".  The manager wants the password contained in /var/lib/boinc/gui_rpc_auth.cfg.  It needs the password in order to establish TCP on port 31416 to communicate with the client.  The client does all the work such as attaching to projects, downloading and running tasks, etc.  The manager is just an easy interface to the client.  When you start the manager it looks in your home dir for gui_rpc_auth.cfg.  If it finds gui_rpc_auth.cfg there (or even a link to /var/lib/boinc/gui_rpc_auth.cfg) and if it has read access then it obtains the password in gui_rpc_auth.cfg and connects with the client.  Having a link to /var/lib/boinc/gui_rpc_auth.cfg in your home dir is best then you have only 1 copy to edit if you ever want to change the password.

Comment 12 Jeroen Roovers (RETIRED) gentoo-dev 2009-01-09 15:04:37 UTC
# ChangeLog for sci-misc/boinc
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/sci-misc/boinc/ChangeLog,v 1.45 2009/01/02 20:40:21 cryos Exp $

  02 Jan 2009; Marcus D. Hanwell <cryos@gentoo.org> metadata.xml:
  Removed myself as maintainer.
Comment 13 Tomáš Chvátal (RETIRED) gentoo-dev 2009-01-21 15:32:34 UTC
Fixed in sci overlay, i will push it for boinc-bin and boinc into the main tree when i am finished with both of them.
(I know it is not yet fixed in the main tree but i am closing it now so i wont forget about it later when i commit boinc to the tree).
So far in sci-misc is only boinc-bin. (21.1.2009)
(i will definetly try to have both up& running till the end of february so bare with us).
Btw anyone willing to test it there? (reopen if it is not working as you expected) :]