the world of migges IT and my way of life …

BOINC auf Linux Root-Server

Heute möchte ich kurz erklären, wie man auf einem Linux Root-Server oder auch auf jedem anderen Linux-Client, BOINC zum laufen bekommt.

Zunächst solltet ihr einen User anlegen unter dem der BOINC-Client laufen soll, er sollte nie unter root laufen!

Code:
useradd USERNAME -m
passwd USERNAME

Nun den User wechseln und anschließend ins Homeverzeichnis gehen.

Code:
su USERNAME
cd ~

Danach besorgen wir uns die neuste Version von der offiziellen BOINC-Website.

Mein System ist ein AMD Athlon(tm) 64 X2 Dual Core Processor 4000+ mit 1GB RAM, darauf läuft openSUSE 11 (64 Bit). Dementsprechend wähle ich den Linux x64-BOINC-Client in der Version 6.4.5  (ist in der Zukunft anzupassen).

Code:
wget http://einstein.aei.mpg.de/download/boinc/dl/boinc_6.4.5_x86_64-pc-linux-gnu.sh
chmod u+x boinc_6.4.5_x86_64-pc-linux-gnu.sh
./boinc_6.4.5_x86_64-pc-linux-gnu.sh

Es sollte die Meldung "use /home/BOINC/run_manager to start BOINC" erscheinen.

Der BOINC-Client ist nun prinzipiell einsatzbereit, allerdings fehlt uns noch ein Projekt das wir unterstützen möchten. Ich habe mich für das Projekt POEM entschieden. Die Vorgehensweise sollte bei den meisten anderen Projekten identisch sein.

Als erstes erstellen wir uns einen Account auf der Projektseite und loggen uns ein.
In unseren persönlichen Account-Einstellungen finden wir unseren persönlichen "Account key", dieser Key ermöglicht das Einloggen in euren Account, daher solltet ihr ihn möglichst geheim halten.

Wir wechseln in das BOINC-Verzeichnis ...

Code:
cd BOINC/

... starten BOINC und teilen gleichzeitig mit, mit welchem Projekt sich der Client verbinden soll. Hier verwendet ihr den oben erwähnten Account key.

Code:
./boinc --attach_project http://boinc.fzk.de/poem/

Nun sollte der Client sich mit dem Projekt verbinden, einen Benchmark durchführen und die ersten Aufgaben herunterladen. Das kann man in der Regel sehr schön in der Kommandozeile verfolgen. Alternativ könnt ihr auch in eurem Profil nach schauen ob euer Rechner bereits geführt wird.

Im Prinzip war das alles. Da der Client aber im Hintergrund laufen soll und sich nicht beenden soll, wenn wir Putty beenden, starten wir den Client in einem screen.

Dazu beenden wir den Client mittels strg+c. Danach starten wir BOINC im screen mittels ...

Code:
screen -A -m -d -S ./boinc

... wieder. Ihr könnt einen beliebigen Screennamen wählen, allerdings würde sich "boinc" anbieten ;) Der screen und damit BOINC läuft nun, eine erneute Eingabe des Projekts oder des Key ist nicht notwendig. Ob der screen läuft könnt ihr mit ...

Code:
screen -r

... überprüfen. Wenn ihr BOINC beenden wollt, könnt ihr das an dieser Stelle mittels strg+c realisieren. Andernfalls schließen wir den screen mit strg + a + d und der BOINC-Client läuft im Hintergrund weiter.

Thats it, viel Spaß damit ...

Kommentare (2) Trackbacks (1)
  1. Das ist ja grausam!
    Wenn du Programme schon an der Paketverwaltung vorbei installierst – ist ja hin und wieder gerechtfertigt – dann solltest du Sie aber auch ordentlich starten. Die Idee mit dem Benutzer ist schon ganz gut, aber er braucht ganz bestimmt kein Homeverzeichnis.
    Stattdessen erstellt man mit “useradd –system BENUTZERNAME” einen Systembenutzer und installiert das Programm, sprich Boinc dort wo es hingehört, nämlich in /usr/local/
    Das Schlimmste ist aber, Dienste mittels “screen” zu betreiben, da dreht sich jedem Admin der Magen um. Das Mittel der Wahl heißt hier “start-stop-daemon” – zur Benutzung siehe man page.

  2. Hi Henry,

    warum ist das denn so grausam? Man kann das Ganze sicher mittels daemon realisieren, aber das ist in meinen Augen eine Glaubensfrage. Genauso wie der Speicherort, der meines Erachtens die Installation nicht schlechter macht. Es ist das eine Kritik zu üben, dann doch bitte aber auch sagen was eine andere Variante für Vorteile mit sich bringt. Das hätte mich wirklich interessiert.
    Genau diese Installation läuft bei mir jetzt über 2 Jahre Problemfrei und ist damit aus meiner Sicht vollkommen in Ordnung.


Kommentar schreiben