This page is under heavy revision. Please refer to
http://doc.desktopgrid.hu/
for up-to-date information and documentation.
Install Your Own Desktop Grid

Operating System

A desktopgrid server requires a low cost server hardware and a configured operating system (Debian®) with BOINC installed. To make the install procedure a snap, we provide BOINC in a fine-tuned Debian® package.

  • The recommended hardware configuration up to 1000 connected PCs:
      Processor: 1000 Mhz Intel® Pentium®
      Hard disk: 60GB
      Internet: 100Mbit/sec
      
    Up to 100 PCs a virtual machine is also suitable.

  • The recommended hardware configuration over 1000 connected PCs:
      Processor: 2000 Mhz Intel® Pentium®
      Hard disk: 100GB
      Internet: 100Mbit/sec
If you have the hardware prepared and it is connected to the internet, install the latest release of Debian. Assuming the server has a high-speed uplink to the internet, we recommend to install Debian® via the internet. Download the minimal CD set from here. Choose the i386 version from the official netinst images for the "stable" release. Burn the downloaded image on a CD and boot it up. Install the Debian® operating system by following the on screen instructions. If you may need any help with the install, please use this online manual or contact our laboratory. After the operating system has been installed it has to be set up for network usage. Also, please note that for most of the configuration tasks you will need root privileges. First insert the following in the /etc/hosts file. Change the IP address and the domain name of the second line in the example to the values of your own.
	127.0.0.1        localhost.localdomain   localhost
	190.191.192.193  boinc.myserver.com    boinc
  
The first line is the localhost address. It is same for everyone.
The second line is the IP address and the domain of the server where the BOINC server package will be installed.

Install a mailing system

This is necessary for a public project, so users can recieve their registration details via email, but can be skipped for a local install. In the example below we demonstrate the installation of exim. Naturally, you can exchange this to any other mailing system available for the Debian® operating system.
	apt-get install postfix
	apt-get install exim4
	dpkg-reconfigure exim4-config
  
Complete the configuration dialogs as neccessary. Append the following line to the file /etc/inetd.conf
  smtp	stream	tcp	nowait	mail	/usr/sbin/exim exim -bs
  
Restart inetd as root with one of the following commands, depending on your install:
/etc/init.d/inetd restart
or
/usr/sbin/inetd restart

Install the BOINC server

The BOINC server package can be installed using apt. Add the following line to the /etc/apt/sources.list file:
deb http://www.desktopgrid.hu/debian/ squeeze szdg
Run
apt-get update
In case you receive a PGP error, run
apt-key advanced --keyserver pool.keyserver.eu --recv-keys 7B1AAC6F
Install the BOINC server:
apt-get install boinc-server
This will also install all of the dependencies of boinc (about 110 if using a freshly installed os), including the Apache web server and the MySQL database engine. Some 73 MB of data will be downloaded.

Configure MySQL
Further help can be found at /usr/share/doc/mysql-server-5.0/README.Debian.gz

During the setup process you will have to set the root password. Generate a random password and use one of them:
pwgen -s 10
Create the file /root/.my.cnf with the following content:
  [mysql]
  user = root
  password = <password>
  [mysqladmin]
  user = root
  password = <password>
  

Create a BOINC project

Now that you have a fully configured operating system, it is time to install the BOINC project on it. In the upcoming examples, we will use the following example names. Please, do not forget to change them to your own preferences.
  The project to be created will be named 'My Desktop Grid'
  Short name for the project: 'myproject'
  Full name of the project: 'My Desktop Grid'
  
A BOINC project can be created with the boinc_create_project command as root user. The files of the project will be hosted in the /var/lib/boinc directory.
  boinc_create_project --name=<name> --long-name=<long-name>
  e.g.: boinc_create_project --name=myproject 
  --long-name='My Desktop Grid'
  
Please note: The project name cannot contain any special characters only English letters and numbers.

The names of the project components will be automatically added based on the name you gave to your project:
  The administrator user of the project will be named: boinc-myproject
  The database of the project will be named: boinc_myproject
  The password for the database can be located in: config.xml
  
As root user grant project administrator permission to one or more Linux users. They will be able to switch to the main BOINC administrator user account and they can access the project website's administrator interface with their Linux username and password.
  boinc_admin --NAME=<project's short name> --add <username>
  e.g.: boinc_admin --NAME=myproject --add linuxuser
  
Log in to the server as a linux user, who has project administrator rights and switch to project administrator user account. Do not edit the files of the project with the root user account!
  sudo su - boinc-<project short name>
  e.g.: sudo su - boinc-myproject
  
The administrator interface of the project is located at:
  http://<host name>/<project short name>_ops
  e.g.: http://szdg.lpds.sztaki.hu/szdg_ops
  
From this point the project is installed and ready to run. However, it still needs some setup before it is fully functional. Please continue on the next section to learn how to compile applications to be used with BOINC.

After the BOINC project has been successfully installed, you can continue on the next page with application development.