Controlling BOINC remotely
The two programs communicate over a local connection, using 'GUI RPC' (Graphical User Interface Remote Procedure Call). It's also possible to use the BOINC Manager to control a client on a different host:
You can use add-on programs such as BoincTasks or BOINCView to control many BOINC clients at once:
Access control for GUI RPC
GUI RPCs are divided into two categories:
- Status operations which return information about tasks, project, etc.
- Control operations which change the state of BOINC (suspend/resume, add project, etc.).
Some GUI RPCs are authenticated with a GUI RPC password. This is stored in the file gui_rpc_auth.cfg in the BOINC data directory. On a multiuser computer, this should be protected against access by other users. When BOINC client first runs, it generates a random password. You can change it if you like; max length is 255 characters.
A "local" RPC is one that comes from the computer where the BOINC client is running (but perhaps from a different logged-in user).
Local status RPCs are not authenticated. On a multiuser computer, a user can see the status of any other user's BOINC client.
Local control RPCs are authenticated using the GUI RPC password.
A "remote" RPC is one that comes from a different computer.
All remote RPCs (both status and control) are authenticated using the GUI RPC password.
By default, remote RPCs are not accepted from any host. To specify a set of hosts from which RPCs are allowed, create a file remote_hosts.cfg in your BOINC data directory containing a list of allowed DNS host names or IP addresses (one per line). Only these hosts will be able to connect. The remote_hosts.cfg file can also have comment lines that start with either a # or a ; character.
Alternatively, if you run the client with the --allow_remote_gui_rpc command line option, it will accept connections from any host (subject to password authentication). If you have a remote_hosts.cfg file but also start the client with --allow_remote_gui_rpc, the file will be ignored, and any host will be allowed to connect.
Note that the "Read config file" on the BOINC Manager, Advanced menu will also read in the remote_hosts.cfg file i.e. a restart of the client is not required to enable changes to the remote host list.
BOINC data directory
gui_rpc_auth.cfg and remote_hosts.cfg need to be placed in the correct BOINC directory.
On Windows with BOINC v5.x the BOINC directory is by default in C:\Program Files\BOINC
On Windows with BOINC v6.x the BOINC directory is by default in
C:\Documents and Settings\All Users\Application Data\BOINC
This is a hidden directory so if you can't navigate to it via Windows Explorer Folder view just paste the whole path name, "C:\Documents and Settings\All Users\Application Data\BOINC", into the Windows Explorer address line and it'll jump you there.
When upgrading from BOINC v5.x to v6.x your gui_rpc_auth.cfg and remote_hosts.cfg files are automatically moved for you.
- Mac OS X
On a Mac, the client data is in: /Library/Application Support/BOINC Data
- All platforms
If you are in any doubt, to find the exact data directory, go the to client message log. Near the top of the startup section there will be a line printed similar to these examples:
11/02/2010 9:04:24 AM Data directory: C:\Documents and Settings\All Users\Application Data\BOINC
26-Apr-2010 13:08:53 [---] Data directory: /var/lib/boinc-client
Boinccmd command line tool