BOINC provides a set of scripts for setting up and controlling a BOINC server complex. These scripts require all the server components to run on a single host. This has been tested only on Linux and Solaris hosts; it may work with small modifications on Windows also.

The scripts can be used to create multiple BOINC projects on the same host. This can be handy for creating separate projects for testing and debugging.

Install all components listed in the Software Prerequisites page. Your operating system must have shared memory enabled, with a max shared segment size of at least 32 MB.

Creating the server

Run the make_project script; example command lines:

    cd tools/
    ./make_project yah
will create $HOME/projects/yah with html_user_url set to http:///yah/ and long project name 'Yah'.
    cd tools/
    ./make_project --base $HOME/boinc --url_base http://boink/ yah 'YETI @ Home'
will create $HOME/boinc/projects/yah with the html_user_url set to http://boink/yah/.

See 'make_project --help' for more command-line options available (such as finer control of directory structure or clobbering an existing installation).

The script does the following:

The script gives further instructions, namely

The php scripts need access to the database, so the user that Apache runs under needs SELECT,INSERT,UPDATE,DELETE to the database just created.

At this point you need to add platform(s) and application(s) to the database using the add tool or the xadd tool, and add core versions and application versions using the update_versions tool.

Directory structure

Designate a 'BOINC projects' directory on the server host. The scripts will create subdirectories as follows:
boinc_projects/
    proj1/
        config.xml
        bin/
        cgi-bin/
        log/
        pid/
        download/
        html_ops/
        html_user/
        keys/
        upload/
    proj2/
    ...
where proj1, proj2 etc. are the names of the projects you create. Each project directory contains: When you run the make_project script it will give you lines to append to your Apache httpd.conf. (Basically you need to alias html_user, alias html_ops, and script-alias cgi-bin, all with appropriate directory permissions.) It will also give you a crontab line to install.

You should also set the default MIME type as follows:

DefaultType application/octet-stream

At this point you hopefully have a functioning BOINC server, but it has no applications or work to distribute. The remaining steps to make a public project include:

If you want distributed or replicated server components, you'll need more information. "; page_tail(); ?>