Instanzen anlegen + verwalten: Unterschied zwischen den Versionen
(→script) |
|||
(11 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 6: | Zeile 6: | ||
# BOINC-Manager ganz normal offen lassen, aber die Ur-Instanz anhalten (Steuerung / pausieren). | # BOINC-Manager ganz normal offen lassen, aber die Ur-Instanz anhalten (Steuerung / pausieren). | ||
− | # Neuen Bunkerordner anlegen, z.B. C: | + | # Neuen Bunkerordner anlegen, z.B. C:\boinc\b01 |
− | # Konsole öffnen (und offen lassen!) und dort folgenden '''Befehl eintragen:'''<br>"cd\"<br>"%ProgramFiles%\BOINC\boinc.exe" --allow_multiple_clients --dir C: | + | # Konsole öffnen (und offen lassen!) und dort folgenden '''Befehl eintragen:'''<br>"cd\"<br>"%ProgramFiles%\BOINC\boinc.exe" --allow_multiple_clients --dir C:\boinc\b01 --allow_remote_gui_rpc --gui_rpc_port 9001 |
− | # Mit STRG-C die neue Instanz nochmal kurz stoppen und im Bunker-Ordner in der Datei gui_rpc_auth.cfg, die eben unter anderem erstellt worden ist, das gewünschte Passwort für den Fernzugriff eintragen, z.B. p3d<br>Es muss nicht zwingend ein Passwort vergeben werden. Bleibt die Datei leer, ist später auch im Feld Passwort kein Eintrag erforderlich.<br>'''Passwort ändern:''' Mit Notepad " | + | # Mit STRG-C die neue Instanz nochmal kurz stoppen und im Bunker-Ordner in der Datei gui_rpc_auth.cfg, die eben unter anderem erstellt worden ist, das gewünschte Passwort für den Fernzugriff eintragen, z.B. p3d<br>Es muss nicht zwingend ein Passwort vergeben werden. Bleibt die Datei leer, ist später auch im Feld Passwort kein Eintrag erforderlich. <br>'''Passwort ändern:''' Mit Notepad "\boinc\b01\gui_rpc_auth.cfg" öffnen (Hinweis: Es kann sein, dass Passwörter automatisch erstellt sind und man keinen Zugriff auf die Instanz bekommt. Dann muss man wie beschrieben ein eigenes Passwort festlegen.) |
# Mit dem Befehl aus 3.) in der Konsole die Instanz wieder starten | # Mit dem Befehl aus 3.) in der Konsole die Instanz wieder starten | ||
# Im BOINC-Manager unter Datei / Computer verbinden die Adresse 127.0.0.1:9001 eintragen und das unter 4.) hinterlegte Passwort und schon bist Du mit der ersten Instanz verbunden und kannst ein Projekt verbinden | # Im BOINC-Manager unter Datei / Computer verbinden die Adresse 127.0.0.1:9001 eintragen und das unter 4.) hinterlegte Passwort und schon bist Du mit der ersten Instanz verbunden und kannst ein Projekt verbinden | ||
+ | # Die Berechnungseinstellungen anpassen, z.B. unter "Sonstiges" einstellen, dass mindestens 9 Arbeitstage gespeichert werden. | ||
+ | # Hinweis: Wer über die Host-Datei den Zugriff zum Server gesperrt hat, erhält natürlich keinen Zugriff auf das Projekt. Hier muss die Host-Datei also zum Besorgen der WUs vorübergehend angepasst werden. | ||
Zeile 16: | Zeile 18: | ||
# BOINC-Manager ganz normal offen lassen, aber die Ur-Instanz anhalten (Steuerung / pausieren). | # BOINC-Manager ganz normal offen lassen, aber die Ur-Instanz anhalten (Steuerung / pausieren). | ||
− | # Neuen Bunkerordner anlegen, z.B. /home | + | # Neuen Bunkerordner anlegen, z.B. /home/boinc/b01 |
− | # Konsole öffnen (und offen lassen!) und dort folgenden '''Befehl eintragen:''' /usr/bin/boinc --allow_multiple_clients --dir /home | + | # Konsole öffnen (und offen lassen!) und dort folgenden '''Befehl eintragen:''' /usr/bin/boinc --allow_multiple_clients --dir /home/boinc/b01 --allow_remote_gui_rpc --gui_rpc_port 9001 |
− | # Mit STRG-C die neue Instanz nochmal kurz stoppen und im Bunker-Ordner in der Datei gui_rpc_auth.cfg, die eben unter anderem erstellt worden ist, das gewünschte Passwort für den Fernzugriff eintragen, z.B. p3d<br>Es muss nicht zwingend ein Passwort vergeben werden. Bleibt die Datei leer, ist später auch im Feld Passwort kein Eintrag erforderlich.<br>'''Passwort ändern:''' gedit /home | + | # Mit STRG-C die neue Instanz nochmal kurz stoppen und im Bunker-Ordner in der Datei gui_rpc_auth.cfg, die eben unter anderem erstellt worden ist, das gewünschte Passwort für den Fernzugriff eintragen, z.B. p3d<br>Es muss nicht zwingend ein Passwort vergeben werden. Bleibt die Datei leer, ist später auch im Feld Passwort kein Eintrag erforderlich.<br>'''Passwort ändern:''' gedit /home/boinc/b01/gui_rpc_auth.cfg |
# Mit dem Befehl aus 3.) in der Konsole die Instanz wieder starten | # Mit dem Befehl aus 3.) in der Konsole die Instanz wieder starten | ||
# Im BOINC-Manager unter Datei / Computer verbinden die Adresse 127.0.0.1:9001 eintragen und das unter 4.) hinterlegte Passwort und schon bist Du mit der ersten Instanz verbunden und kannst ein Projekt verbinden | # Im BOINC-Manager unter Datei / Computer verbinden die Adresse 127.0.0.1:9001 eintragen und das unter 4.) hinterlegte Passwort und schon bist Du mit der ersten Instanz verbunden und kannst ein Projekt verbinden | ||
Zeile 33: | Zeile 35: | ||
====Browsertool==== | ====Browsertool==== | ||
− | ====Script==== | + | ====Script (Linux only)==== |
+ | Als Arbeitsverzeichnis empfiehlt sich: /opt/boinc/config_repo/boinc_accounts# | ||
+ | |||
+ | =====Vorbereitung===== | ||
+ | cd /usr/local/bin/ | ||
+ | wget https://raw.githubusercontent.com/MBlenn/BOINC/master/BOINC%20instancer/boinc-instancer.sh | ||
+ | apt install net-tools | ||
+ | chmod +x boinc-instancer.sh | ||
+ | boinc-instancer.sh -E https://raw.githubusercontent.com/MBlenn/BOINC/master/BOINC%20instancer/bic.tar | ||
+ | |||
+ | Um sich die weitere Arbeit zu erleichtern, können jetzt die Account-Dateien aus der Hauptinstanz umkopiert werden, | ||
+ | sodass beim anlegen einer neuen Instanz, diese Projekte gleich angemeldet werden. Beispielhaft sei dies am Projekt | ||
+ | SiDock gezeigt: | ||
+ | |||
+ | cd /var/lib/boinc-client/ | ||
+ | cp account_www.sidock.si_sidock.xml /opt/boinc/config_repo/boinc_accounts/ | ||
+ | |||
+ | In dem Verzeichnis config_repo liegen u.a. vorbereitete '''cc_config.xml''' und '''global_prefs_override.xml''' | ||
+ | Beim anlegen einer neuen Instanz, greift das Script auf diese Dateien zu. Darum emphielt es sich, diese Datei im Vorfeld an das eigene System anzupassen. | ||
+ | |||
+ | In der Datei '''cc_config.xml''' sind das in der Hauptsache: | ||
+ | |||
+ | <max_file_xfers>128</max_file_xfers> | ||
+ | <max_file_xfers_per_project>'''20'''</max_file_xfers_per_project> (In Abhängigkeit der Internetverbindung) | ||
+ | ... | ||
+ | <ncpus>'''16'''</ncpus> (In Abhängigkeit der Anzahl der Threads) | ||
+ | |||
+ | Der Inhalt der Datei '''global_prefs_override.xml''' sollte komplett mit dem Inhalt der Datei aus dem Verzeichnis | ||
+ | '''/var/lib/boinc-client/global_prefs_override.xml''' ersetzt werden, denn dort wurden diese Einstellungen bereits vorgenommen. | ||
+ | |||
+ | Damit sind die Vorbereitungen abgeschlossen. | ||
+ | |||
+ | =====Arbeiten mit dem Script===== | ||
+ | Als erstes kann die richtige Funktionsweise überprüft werden, indem mit dem ersten Script-Befehl -l (kleines L) gearbeitet wird. In welchem Verzeichnis dies erfolgt, ist egal. | ||
+ | |||
+ | boinc-instancer.sh -l | ||
+ | |||
+ | [[Datei:Screenshot Hauptinstanz.png|links]]<br> | ||
+ | <br> | ||
+ | <br> | ||
+ | In der Auflistung wird uns die Hauptinstanz angezeigt. Diese trägt immer die Nummer 31416. | ||
+ | |||
+ | Über "boinc-instancer.sh -h" lassen sich alle Befehlsstrings aufrufen. | ||
+ | |||
+ | Wurden einige Instanzen angelegt, sieht es dann wie folgt aus: | ||
+ | |||
+ | [[Datei:Script2.png|links]]<br> | ||
+ | <br> | ||
+ | <br> | ||
+ | <br> | ||
+ | <br> | ||
+ | <br> | ||
+ | <br> | ||
+ | Die Instanzen boinc_31422 und boinc_31423 wurden angelegt, aber nicht gestartet. | ||
+ | |||
+ | Wenn gerade mit Komandobefehlen gearbeitet wird, emphiehlt es sich, gleich noch den Benchmark pro Instanz anzustossen: | ||
+ | |||
+ | boinccmd --host localhost:31424 –run_benchmarks | ||
+ | |||
+ | Mit dem folgenden Befehl läßt sich die Auflistung, je nach eingestelltem Zeitablauf, mit aktuallisiertem Stand aufrufen: | ||
+ | |||
+ | while true; do clear; date; boinc-instancer.sh -l; sleep 60; done | ||
+ | |||
+ | In der Auflistung wird in der letzten Spalte die Information ausgegeben, mit der der Boinc-Manager mit der entsprechenden Instanz gestartet wird. Hier am Beispiel der Instanz 31417: | ||
+ | |||
+ | boincmgr -m -g 31417 & | ||
+ | |||
+ | Oder im Boinc-Manager über Datei -> Computer auswählen -> Rechnername: 127.0.0.1:31417 |
Aktuelle Version vom 12. Mai 2023, 06:53 Uhr
Bei manchen Projekten reicht es nicht aus, nur mit der Hauptinstanz zu arbeiten. Entweder arbeitet man dann mit Virtuellen Maschinen, oder mit zusätzlichen Instanzen. Hier zeigen wir, wie sich Instanzen unter Windows und Linux anlegen lassen.
Windows
- BOINC-Manager ganz normal offen lassen, aber die Ur-Instanz anhalten (Steuerung / pausieren).
- Neuen Bunkerordner anlegen, z.B. C:\boinc\b01
- Konsole öffnen (und offen lassen!) und dort folgenden Befehl eintragen:
"cd\"
"%ProgramFiles%\BOINC\boinc.exe" --allow_multiple_clients --dir C:\boinc\b01 --allow_remote_gui_rpc --gui_rpc_port 9001 - Mit STRG-C die neue Instanz nochmal kurz stoppen und im Bunker-Ordner in der Datei gui_rpc_auth.cfg, die eben unter anderem erstellt worden ist, das gewünschte Passwort für den Fernzugriff eintragen, z.B. p3d
Es muss nicht zwingend ein Passwort vergeben werden. Bleibt die Datei leer, ist später auch im Feld Passwort kein Eintrag erforderlich.
Passwort ändern: Mit Notepad "\boinc\b01\gui_rpc_auth.cfg" öffnen (Hinweis: Es kann sein, dass Passwörter automatisch erstellt sind und man keinen Zugriff auf die Instanz bekommt. Dann muss man wie beschrieben ein eigenes Passwort festlegen.) - Mit dem Befehl aus 3.) in der Konsole die Instanz wieder starten
- Im BOINC-Manager unter Datei / Computer verbinden die Adresse 127.0.0.1:9001 eintragen und das unter 4.) hinterlegte Passwort und schon bist Du mit der ersten Instanz verbunden und kannst ein Projekt verbinden
- Die Berechnungseinstellungen anpassen, z.B. unter "Sonstiges" einstellen, dass mindestens 9 Arbeitstage gespeichert werden.
- Hinweis: Wer über die Host-Datei den Zugriff zum Server gesperrt hat, erhält natürlich keinen Zugriff auf das Projekt. Hier muss die Host-Datei also zum Besorgen der WUs vorübergehend angepasst werden.
Linux
- BOINC-Manager ganz normal offen lassen, aber die Ur-Instanz anhalten (Steuerung / pausieren).
- Neuen Bunkerordner anlegen, z.B. /home/boinc/b01
- Konsole öffnen (und offen lassen!) und dort folgenden Befehl eintragen: /usr/bin/boinc --allow_multiple_clients --dir /home/boinc/b01 --allow_remote_gui_rpc --gui_rpc_port 9001
- Mit STRG-C die neue Instanz nochmal kurz stoppen und im Bunker-Ordner in der Datei gui_rpc_auth.cfg, die eben unter anderem erstellt worden ist, das gewünschte Passwort für den Fernzugriff eintragen, z.B. p3d
Es muss nicht zwingend ein Passwort vergeben werden. Bleibt die Datei leer, ist später auch im Feld Passwort kein Eintrag erforderlich.
Passwort ändern: gedit /home/boinc/b01/gui_rpc_auth.cfg - Mit dem Befehl aus 3.) in der Konsole die Instanz wieder starten
- Im BOINC-Manager unter Datei / Computer verbinden die Adresse 127.0.0.1:9001 eintragen und das unter 4.) hinterlegte Passwort und schon bist Du mit der ersten Instanz verbunden und kannst ein Projekt verbinden
Verwaltung
- Um den Überblick aller Instanzen zu bewaren, hat ydeeps ein Browsertool entwickelt.
- Um sich unter Linux eine Übersicht zu verschaffen, hat koschi ein Script geschrieben.
Bedienungsanleitungen
Browsertool
Script (Linux only)
Als Arbeitsverzeichnis empfiehlt sich: /opt/boinc/config_repo/boinc_accounts#
Vorbereitung
cd /usr/local/bin/ wget https://raw.githubusercontent.com/MBlenn/BOINC/master/BOINC%20instancer/boinc-instancer.sh apt install net-tools chmod +x boinc-instancer.sh boinc-instancer.sh -E https://raw.githubusercontent.com/MBlenn/BOINC/master/BOINC%20instancer/bic.tar
Um sich die weitere Arbeit zu erleichtern, können jetzt die Account-Dateien aus der Hauptinstanz umkopiert werden, sodass beim anlegen einer neuen Instanz, diese Projekte gleich angemeldet werden. Beispielhaft sei dies am Projekt SiDock gezeigt:
cd /var/lib/boinc-client/ cp account_www.sidock.si_sidock.xml /opt/boinc/config_repo/boinc_accounts/
In dem Verzeichnis config_repo liegen u.a. vorbereitete cc_config.xml und global_prefs_override.xml Beim anlegen einer neuen Instanz, greift das Script auf diese Dateien zu. Darum emphielt es sich, diese Datei im Vorfeld an das eigene System anzupassen.
In der Datei cc_config.xml sind das in der Hauptsache:
<max_file_xfers>128</max_file_xfers> <max_file_xfers_per_project>20</max_file_xfers_per_project> (In Abhängigkeit der Internetverbindung) ... <ncpus>16</ncpus> (In Abhängigkeit der Anzahl der Threads)
Der Inhalt der Datei global_prefs_override.xml sollte komplett mit dem Inhalt der Datei aus dem Verzeichnis /var/lib/boinc-client/global_prefs_override.xml ersetzt werden, denn dort wurden diese Einstellungen bereits vorgenommen.
Damit sind die Vorbereitungen abgeschlossen.
Arbeiten mit dem Script
Als erstes kann die richtige Funktionsweise überprüft werden, indem mit dem ersten Script-Befehl -l (kleines L) gearbeitet wird. In welchem Verzeichnis dies erfolgt, ist egal.
boinc-instancer.sh -l
In der Auflistung wird uns die Hauptinstanz angezeigt. Diese trägt immer die Nummer 31416.
Über "boinc-instancer.sh -h" lassen sich alle Befehlsstrings aufrufen.
Wurden einige Instanzen angelegt, sieht es dann wie folgt aus:
Die Instanzen boinc_31422 und boinc_31423 wurden angelegt, aber nicht gestartet.
Wenn gerade mit Komandobefehlen gearbeitet wird, emphiehlt es sich, gleich noch den Benchmark pro Instanz anzustossen:
boinccmd --host localhost:31424 –run_benchmarks
Mit dem folgenden Befehl läßt sich die Auflistung, je nach eingestelltem Zeitablauf, mit aktuallisiertem Stand aufrufen:
while true; do clear; date; boinc-instancer.sh -l; sleep 60; done
In der Auflistung wird in der letzten Spalte die Information ausgegeben, mit der der Boinc-Manager mit der entsprechenden Instanz gestartet wird. Hier am Beispiel der Instanz 31417:
boincmgr -m -g 31417 &
Oder im Boinc-Manager über Datei -> Computer auswählen -> Rechnername: 127.0.0.1:31417