So richten Sie SETI @ home unter Ubuntu 14.04 oder Debian 7 ein

Einführung

SETI@home ist ein großes freiwilliges verteiltes Computerprojekt, bei dem auf Teilnehmersystemen ausgeführte Software zur Analyse von Radiodaten des Weltraumteleskops verwendet wird, um Signale oder Anzeichen eines intelligenten Lebens zu identifizieren. SETI @ home verwendet die als BOINC bekannte Software, die auf vielen Plattformen einschließlich Linux verfügbar ist.

BOINC hat eine grafische Anwendung, funktioniert aber auch über die Kommandozeile. Dies macht es sehr einfach, SETI @ home auf einem Droplet oder einem anderen kopflosen Server auszuführen. SETI @ home benötigt nur sehr wenig Festplattenspeicher - normalerweise sind 100 MB ausreichend - kann jedoch so viel CPU verbrauchen, wie es angegeben ist.

Voraussetzungen

  • Ein Ubuntu 14.04 oder Debian 7 Droplet, egal welcher Größe.

  • Ein sudo-Benutzer ohne Rootberechtigung. Sie können den ersten vier Schritten von this tutorial für die Einrichtung unter Ubuntu und https: // www folgen .digitalocean.com / community / tutorials / initial-server-setup-with-debian-7 [dieses Tutorial] für Debian.

Erster Schritt - Installieren Sie den boinc-client

SETI @ home funktioniert über den BOINC-Client, der in den Standard-Debian- und Ubuntu-Repositories verfügbar ist.

sudo apt-get install boinc-client

Schritt Zwei - Stellen Sie eine Verbindung zu einem SETI @ home-Konto her

Mit SETI @ home erhalten Sie eine SETI-Gutschrift für abgeschlossene Arbeiten. Um diesen Host mit einem SETI @ home-Konto zu verbinden und Guthaben zu erhalten, wird ein Kontoschlüssel benötigt.

Zuerst create a SETI @ home account oder melden Sie sich bei Ihrem vorhandenen SETI@home an Konto. Einmal drinnen, klicken Sie auf * Anzeigen * neben * Kontoschlüssel *.

Sie sehen Ihren SETI @ home-Kontoschlüssel oben auf der nächsten Seite. Führen Sie den folgenden Befehl mit Ihrem Kontoschlüssel aus:

boinccmd --project_attach http://setiathome.berkeley.edu

Zu diesem Zeitpunkt beginnt boinc mit den Standardwerten zu brechen.

Beenden Sie vorerst den Boinc-Client-Dienst, damit die CPU-Nutzungseinstellungen festgelegt werden können.

sudo service boinc-client stop

Schritt 3 - Konfigurieren Sie die Benutzervorgaben für die Host-CPU

Standardmäßig verwendet der BOINC-Client 100% der verfügbaren CPU. In diesem Schritt konfigurieren wir den Host so, dass er weniger CPU benötigt.

  • Hinweis *: In einer Cloud-Hosting-Umgebung müssen Sie die CPU-Auslastung von 100% senken, um eine übermäßige Auslastung zu vermeiden, die benachbarte Droplets beeinträchtigen kann.

Lokale Hosteinstellungen werden in der Datei + / var / lib / boinc client / global_prefs_override.xml + festgelegt, die anfangs leer sein wird. Im Folgenden finden Sie eine Beispieldatei für dieses Handbuch, die die empfohlene Konfiguration für ein Droplet darstellt.

Bearbeiten Sie die Datei "+ / var / lib / boinc-client / global prefs override.xml".

sudo nano /var/lib/boinc-client/global_prefs_override.xml

Sie werden einen vorhandenen Text sehen, der so aussieht:

<global_preferences>
</global_preferences>

Löschen Sie das und fügen Sie es in diese Beispieldatei ein.

<global_preferences>
  <run_on_batteries>0</run_on_batteries>
  <run_if_user_active>1</run_if_user_active>
  <run_gpu_if_user_active>0</run_gpu_if_user_active>

  <start_hour>0.000000</start_hour>
  <end_hour>0.000000</end_hour>
  <net_start_hour>0.000000</net_start_hour>
  <net_end_hour>0.000000</net_end_hour>
  <leave_apps_in_memory>0</leave_apps_in_memory>
  <confirm_before_connecting>1</confirm_before_connecting>
  <hangup_if_dialed>0</hangup_if_dialed>
  <dont_verify_images>0</dont_verify_images>
  <work_buf_min_days>0.100000</work_buf_min_days>
  <work_buf_additional_days>0.500000</work_buf_additional_days>
  <max_ncpus_pct>100.000000</max_ncpus_pct>
  <cpu_scheduling_period_minutes>60.000000</cpu_scheduling_period_minutes>
  <disk_interval>60.000000</disk_interval>
  <disk_max_used_gb>10.000000</disk_max_used_gb>
  <disk_max_used_pct>90.000000</disk_max_used_pct>
  <disk_min_free_gb>1.500000</disk_min_free_gb>
  <vm_max_used_pct>75.000000</vm_max_used_pct>
  <ram_max_used_busy_pct>50.000000</ram_max_used_busy_pct>
  <ram_max_used_idle_pct>90.000000</ram_max_used_idle_pct>
  <max_bytes_sec_up>0.000000</max_bytes_sec_up>
  <max_bytes_sec_down>0.000000</max_bytes_sec_down>

  <daily_xfer_limit_mb>0.000000</daily_xfer_limit_mb>
  <daily_xfer_period_days>0</daily_xfer_period_days>
</global_preferences>

Als nächstes werden wir zwei Einstellungen in dieser Beispieldatei in Bezug auf die CPU untersuchen, die oben hervorgehoben sind.

Die erste Einstellung ist + cpu_usage_limit +, mit der die von SETI @ home verwendete CPU-Kapazität begrenzt wird. Die Beispieldatei verwendet eine Einstellung von 25.000000, was bedeutet, dass die CPU-Auslastung auf maximal 25% begrenzt ist. 25.000000 ist eine gute Einstellung, wenn Ihr Gerät für eine andere Aufgabe oder einen anderen Service vorgesehen ist, jedoch weiterhin ein Beitrag zu SETI @ home gewünscht wird.

Die zweite Einstellung ist "+ suspend_cpu_usage +", mit der SETI @ home vorübergehend für den Betrieb gesperrt wird, wenn die CPU-Auslastung durch eine andere Anwendung diese Stufe erreicht. In der Beispieldatei ist suspendcpuusage auf 50.000000 oder 50% festgelegt.

Weitere Informationen zu den BOINC-Einstellungen finden Sie unter on their wiki.

Starten Sie nach dem Speichern und Schließen der Datei den boinc-client. Dadurch kann SETI @ home mit der Arbeit beginnen.

sudo service boinc-client start

Schritt 4 - Überprüfen Sie den neu hinzugefügten Host

Nach ungefähr fünf Minuten sollte der neue Host online angezeigt werden. Verbundene Computer können auf der SETI@home account page angezeigt werden.

Fünfter Schritt - Überprüfen Sie den Status der Arbeitseinheiten

Verwenden Sie den folgenden Befehl, um den Status von Arbeitseinheiten oder Aufgaben anzuzeigen:

boinccmd --get_simple_gui_info

Beachten Sie, dass hier Ihre allgemeinen SETI @ home-Kontoinformationen angezeigt werden, gefolgt von den aktuell auf diesem bestimmten Host ausgeführten Aufgaben.

Unten finden Sie eine Beispielausgabe für –getsimplegui_info:

boinccmd --get_simple_gui_info
======== Projects ========
1) -----------
  name: SETI@home
  master URL: http://setiathome.berkeley.edu/
  user_name: stmiller
  team_name: SETI.USA
  resource share: 100.000000
  user_total_credit: 33159.675770
  user_expavg_credit: 1409.252845
  host_total_credit: 0.000000
  host_expavg_credit: 0.000000
  nrpc_failures: 0
  master_fetch_failures: 0
  master fetch pending: no
  scheduler RPC pending: no
  trickle upload pending: no
  attached via Account Manager: no
  ended: no
  suspended via GUI: no
  don't request more work: no
  disk usage: 0.000000
  last RPC: 1423684749.199424
  project files downloaded: 0.000000
GUI URL:
  name: Message boards
  description: Correspond with other users on the SETI@home message boards
  URL: http://setiathome.berkeley.edu/forum_index.php
GUI URL:
  name: Help
  description: Ask questions and report problems
  URL: http://setiathome.berkeley.edu/forum_help_desk.php
GUI URL:
  name: Your account
  description: View your account information
  URL: http://setiathome.berkeley.edu/home.php
GUI URL:
  name: Your preferences
  description: View and modify your computing preferences
  URL: http://setiathome.berkeley.edu/prefs.php?subset=global
GUI URL:
  name: Your results
  description: View your last week (or more) of computational results and work
  URL: http://setiathome.berkeley.edu/results.php?userid=9351194
GUI URL:
  name: Your computers
  description: View a listing of all the computers on which you are running SETI@Home
  URL: http://setiathome.berkeley.edu/hosts_user.php?userid=9351194
GUI URL:
  name: Your team
  description: View information about your team: SETI.USA
  URL: http://setiathome.berkeley.edu/team_display.php?teamid=115396
GUI URL:
  name: Donate
  description: Donate to SETI@home
  URL: http://setiathome.berkeley.edu/sah_donate.php

======== Tasks ========
1) -----------
  name: 25fe12ab.24545.17667.438086664204.12.226_0
  WU name: 25fe12ab.24545.17667.438086664204.12.226
  project URL: http://setiathome.berkeley.edu/
  report deadline: Wed Mar  4 02:06:18 2015
  ready to report: no
  got server ack: no
  final CPU time: 0.000000
  state: downloaded
  scheduler state: scheduled
  exit_status: 0
  signal: 0
  suspended via GUI: no
  active_task_state: EXECUTING
  app version num: 701
  checkpoint CPU time: 352.733700
  current CPU time: 378.866400
  fraction done: 0.088431
  swap size: 110309376.000000
  working set size: 40030207.999996
  estimated CPU time remaining: 2505.901220

Der Status des SETI @ home-Guthabens kann auch auf Ihrer account page unter * Computing and credit * eingesehen werden.

Fazit

Das SETI@home forum ist der beste Ort für Neuigkeiten und Fragen zum Ausführen von SETI @ home.

Um einem Team beizutreten, besuchen Sie die team page!