User Tools

Site Tools


userspace:opsi_without_permanent_loginblocker

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
userspace:opsi_without_permanent_loginblocker [2013/03/14 17:00]
tobias [Ein erster Versuch]
userspace:opsi_without_permanent_loginblocker [2021/08/23 08:37] (current)
Line 1: Line 1:
 ====== OPSI ohne LoginBlocker ====== ====== OPSI ohne LoginBlocker ======
 +
 +**Deprecated !!! Don't use it without modifications
 +**
  
 Dies soll ein Konzept für OPSI ohne dauerhaft installierten LoginBlocker darstellen.  Dies soll ein Konzept für OPSI ohne dauerhaft installierten LoginBlocker darstellen. 
 Dadurch werden Benutzer niemals grundlos an der Anmeldung am Betriebssystem gehindert. Der LoginBlocker wird dabei bedarfsweise im System registriert und blockt somit nur bei anstehenden Softwareinstallationen.  Dadurch werden Benutzer niemals grundlos an der Anmeldung am Betriebssystem gehindert. Der LoginBlocker wird dabei bedarfsweise im System registriert und blockt somit nur bei anstehenden Softwareinstallationen. 
  
-Funktionsprinzip:+===== Funktionsprinzip ======
   - **PREinstallation:** Dabei wird der PC auf die anstehende Softwareinstallation vorbereitet. Das bedeutet das event_gui_startup wird von active = false auf active = true gesetzt, der LoginBlocker im Systemregistriert und anschließend der PC neugestartet.   - **PREinstallation:** Dabei wird der PC auf die anstehende Softwareinstallation vorbereitet. Das bedeutet das event_gui_startup wird von active = false auf active = true gesetzt, der LoginBlocker im Systemregistriert und anschließend der PC neugestartet.
   - **SETUP:** Nun startet noch vor der Anmeldung die eigentliche Installation.   - **SETUP:** Nun startet noch vor der Anmeldung die eigentliche Installation.
Line 18: Line 21:
  
  
 +Damit überhaupt eine Verbindung zum OPSI Server stattfindet (beim Systemstart wird ja kein Connect durchgeführt) wird ein weiteres Event benötigt welches gelegentlich auf Software prüft. Dazu eignet sich am besten ein Timer Event (Beschreibung folgt)
 ====== Ein erster Versuch ====== ====== Ein erster Versuch ======
 Ich habe aus den bestehenden Skripten von UIB einige Codezeilen übernommen. Unter anderem die Zeilen aus der Installation des opsi-client-agents bei dem der LoginBlocker installiert wird.  Ich habe aus den bestehenden Skripten von UIB einige Codezeilen übernommen. Unter anderem die Zeilen aus der Installation des opsi-client-agents bei dem der LoginBlocker installiert wird. 
Line 267: Line 271:
  
 </code> </code>
 +
 +===== Notwendige Host-Parameter =====
 +**ACHTUNG:
 +Seien Sie beim bearbeiten der Host-Parameter vorsichtig. Durch falsche Einstellungen kann der opsi-client-agent unter umständen seine Verbindung zum Server verlieren. Sie können diese Clients dann nicht mehr verwalten!!!**
 +
 +Damit das Konzept korrekt umgesetzt werden kann, werden spezielle Host-Parameter benötigt.
 +Ich habe dazu die Client-Events von UIB zum Teil deaktiviert (active = false).
 +Anschließend habe ich eine eigene, neue Konfiguration gebaut. 
 +
 +**Diese besteht aus folgenden Events (ich habe diese mit dem Kürzel fhg "markiert"):**
 +
 +**event_fhg_gui_startup**
 +Bei einem normalen Systemstart dient das event dazu eine Verbindung mit dem Server aufzubauen und evtl. eine Produkt Synchronisation zu beginnen. Dieser Vorgang läuft im Hintergrund ab und die Benutzer merken davon nichts. 
 +
 +**event_fhg_timer**
 +Läuft automatisch alle X Minuten ab und ruft wie gui_startup das event_fhg_sync auf um eventuell anstehende Produkte zu synchronisieren.
 +
 +**event_fhg_sync**
 +Wird von gui_startup oder timer aufgerufen und führt die Produktsynchronisation zwischen Client & Server aus.
 +
 +**event_fhg_sync_completed**
 +Wenn die Produktsyncronisation erfolgreich abgeschlossen wurde, startet dieses event die Produktinstallation. 
 +Ist ein Benutzer angemeldet wird er vor dieser Produktaktion informiert. 
 +Wird das PREinstallation Paket ausgeführt wird der Benutzer ebenfalls beim Reboot vorher gefragt.
 +
 +
 +==== opsiclientd.conf Beispiel ====
 +<code>
 +
 +[event_fhg_sync]
 +cache_dynamic_bandwidth = True
 +cache_products = True
 +event_notifier_command = 
 +process_actions = False
 +super = default
 +sync_config_from_server = False
 +sync_config_to_server = False
 +type = template
 +
 +[event_fhg_sync_completed]
 +event_notifier_command = 
 +get_config_from_service = true
 +process_actions = false
 +super = default
 +type = sync completed
 +use_cached_config = false
 +use_cached_products = false
 +write_log_to_service = True
 +sync_config_to_server = False
 +writelogtoservice = True
 +active = False
 +update_config_file = True
 +
 +[event_fhg_sync_completed{cache_ready_user_logged_in}]
 +action_user_cancelable = 3
 +action_warning_time = 500
 +process_actions = True
 +sync_config_to_server = False
 +shutdown_user_cancelable = 10
 +shutdown_warning_time = 500
 +
 +[event_fhg_sync_completed{cache_ready}]
 +process_actions = True
 +sync_config_to_server = True
 +
 +[event_fhg_timer]
 +active = True
 +interval = 2000
 +super = fhg_sync
 +type = timer
 +
 +[event_fhg_timer{cache_ready}]
 +active = False
 +super = default
 +
 +</code>
 +
 +Wer dieses Testen möchte, sollte sich einen testclient nehmen und diesen Teil der Konfiguration in die opsiclientd.conf eintragen.
 +Die UIB Standard events gui_startup, sync_completed und sync sollten mit active = false abgeschaltet werden. 
 +Außerdem muss update_config_file ebenfalls auf false gesetzt werden. 
 +
 +Wer dieses Konzept dauerhaft nutzen möchte, sollte die Events per Host-Parameter implementieren. 
 +
 +Dabei müssen die Host-Parameter folgendermaßen aufgebaut sein:
 +
 +opsiclientd.eventname.property z.B. opsiclientd.event_fhg_gui_startup.super
 +
userspace/opsi_without_permanent_loginblocker.1363280457.txt.gz · Last modified: 2021/08/23 08:37 (external edit)