Some of you may have read our previous article on world community grid, saying why it is a good idea to donate your spare cpu time. We recommended this for desktop computers mostly, but also servers if they are completely idle. If you want, you can also join team IOFLOOD on world community grid. IOFLOOD.com has donated, as of this writing, over 37 years of idle server compute time to world community grid, and we’d love for you to join us.
We felt a followup article on actually installing and using world community grid would be called for here. Although installing the windows client is quick and painless, you may be at a bit of a loss on how to install this under linux. After looking through various tutorials, installing packages, dependencies, etc, I can tell you it’s a bit of a mess! So I’d like to help with that process with a simple guide.
First, some assumptions:
1) You are installing this remotely, on a computer with no readily accessible GUI
Most of the guides out there assume you’re installing this on your desktop computer with a linux GUI, so naturally, our guide is more helpful if you’re installing this on a linux server
2) You’re installing this on Ubuntu and NOT Centos
Although I love Centos, trying to get BOINC installed under Centos just leaves you in dependency hell. By comparison, installing in Ubuntu is quick and painless, so we’re focusing this guide there. If we figure out an easy way to get this installed in Centos, we’ll post a followup guide in the future.
3) You’ll be running commands over SSH, and are comfortable editing text files in linux via ssh (using a program such as nano)
If you’re not sure how to SSH login to your server, or don’t know how to edit text files in linux, this guide won’t include enough detail for you.
4) You want to run the BOINC client as a daemon, that is, 24/7
These steps will configure the BOINC client to run 24/7 including at bootup. It will still honor your configuration for what time of day to do CPU crunching, but the control process will always be running in the background.
Next, the steps:
1) Install a reasonably up to date copy of Ubuntu, if you haven’t already.
Getting this done is outside the scope of this article, but there are plenty of other guides available online.
2) Login to your Ubuntu computer / server over SSH.
The remaining steps assume you’ll be running shell commands over an SSH login
3) Make sure apt-get is up to date and cleaned up.
Run the command “apt-get update”
This may be necessary if your computer did not have internet access at the time you installed ubuntu initially.
4) Install BOINC with the command: “apt-get install boinc-client -y”
If apt-get is working, and you have a reasonably new-ish copy of Ubuntu, just wait a bit and that’s it for this step. If only the Centos install process could be this easy!
5) Kill the running copy of boinc and edit the config file
Run the following shell commands:
This will now open a text editor. Scroll to the portion that says “enabled = 0” and change it to “enabled = 1”. Save your changes and exit the text editor. This will run BOINC at bootup
6) Add a password for remote configuration of BOINC
Run the following shell command to open an editor for the password file:
Enter in a password of your choice. Save your changes and exit the text editor. You will be using this to manage the BOINC install.
7) Add a list of hosts you want to be able to connect to BOINC remotely
Run the following shell command to open an editor for the hosts access list:
Add the IP addresses of the computers that will be accessing this copy of BOINC remotely. Then save your changes and exit the text editor.
It is best if you access BOINC from an IP address that does not change so that you won’t need to update this file in the future. If all your BOINC computers are local, you can enter your local IP address (192.168.x.x or 10.x.x.x). If the BOINC server you’re installing is on a remote network, you’ll need to enter the public IP your computer uses on the internet. If you are not sure what public IP address your local computer has, you can check your current IP address at www.ipflag.com
8) Start running BOINC as a Daemon
Run the following shell command to start BOINC with the new settings:
9) Connect to your remote BOINC install
From your World Community Grid GUI client on your desktop computer, click “advanced” and then “select computer”.
Where it asks for “hostname”, Enter the IP address of the computer where you just installed BOINC. If you and the BOINC computer are on the same local network, enter the local IP of the BOINC computer (192.168.x.x). If the BOINC computer is on a remote network, enter the public static IP of the BOINC computer. If the remote BOINC computer does not have a public static IP, you will need to set up port forwarding, which is beyond the scope of this article. Under “password”, enter the password you configured earlier.
If the remote BOINC computer is accessible, you’ve selected the correct IP for the remote computer, and you are accessing it from an allowed IP address (configured in step 6), then it should now ask you to add a project to the BOINC install for that computer. From this point onwards, just do what you would normally do for installing BOINC under windows.
You’ve now installed your first copy of BOINC under Ubuntu Linux. The first time is always a bit tricky, but after you’ve done it before, the next few times should be a piece of cake. If you feel any important steps were missing, or have anything else to contribute to this guide, please email us at sales [at] ioflood.com.