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.
You can also set <allow_remote_gui_rpc>1</allow_remote_gui_rpc> in the options section of a cc_config.xml file (see Client configuration).
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 BOINC data directory.
- Windows XP/2000
On Windows XP/2000 the BOINC data directory is by default
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.
- Windows Vista/7/8/8.1
On Windows Vista/7/8/8.1 the BOINC data directory is by default
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:\Programdata\BOINC", into the Windows Explorer address line and it'll jump you there.
/var/lib/boinc (BOINC v7.10 onwards)
/var/lib/boinc-client (earlier versions of BOINC)
- 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 BOINC data directory, go the to client message log. Near the top of the startup section there will be a line 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