Profil von Inst.benutzer pcpatch wird nicht geladen (XP)

Antworten
jkan
Beiträge: 17
Registriert: 13 Sep 2010, 15:06

Profil von Inst.benutzer pcpatch wird nicht geladen (XP)

Beitrag von jkan »

Hallo,

ich habe im opsi-client-agent 4.0.1 das Problem, dass bei Installationen unter Windows XP das Profil des Installationsbenutzers pcpatch nicht richtig geladen wird, was bei einigen Setups zu Fehlern führt. Der konkrete Grund der Fehlschläge ist bei den meisten Setups, dass für den Benutzer kein Registry-Hive geladen wurde, das Setup jedoch versucht, Registrywerte unter HKEY_USERS\<SID von pcpatch> zu schreiben. Zusätzlich sind auch die Umgebungsvariablen USERNAME und USERDOMAIN nicht gesetzt sind, was ich mir auch gut als potentielle Fehlerquelle vorstellen kann.

Ab Windows Vista tritt dieses Problem nicht auf. Dort ist mir auch aufgefallen, dass die Installationen im Benutzerkontext der Logon-Sitzung laufen, also als Benutzer SYSTEM. Das hat wohl mit der ab Windows Vista eingeführten Session-0-Isolierung zu tun. Das Profil ist dort korrekt initialisiert.

Ich habe auch die Quellen von der OPSI-Python-Bibliothek untersucht, die Ausführung der Installationsskripte in der Login-Sitzung vom Windows-Dienst aus scheint in der Klasse OPSI.System.Impersonate implementiert zu sein. Dort ist mir folgender Block in der Methode start aufgefallen:

Code: Alles auswählen

                        if createEnvironment:
                                # http://www.java2s.com/Open-Source/Python/Windows/pyExcelerator/pywin32-214/win32/Demos/win32cred_demo.py.htm
                                self.userProfile = win32profile.LoadUserProfile(self.userToken, {'UserName': self.username, 'Flags': 0, 'ProfilePath': None})
                                logger.debug(u"User profile loaded")
                                
                                self.userEnvironment = win32profile.CreateEnvironmentBlock(self.userToken, False)
                                logger.debug(u"Environment block created")
Das Laden des Profils scheint also tatsächlich vorgesehen zu sein, allerdings findet sich in den Logdateien kein Anzeichen, dass dieser Block irgendwann mal ausgeführt wird. Leider kann ich die Auswirkung einer entsprechenden Änderung im Quellcode nicht testen, da die Quellen von opsi-client-agent nicht veröffentlicht sind. Oder täusche ich mich da?

Wird der Fehler in einer zukünftigen Version von opsi-client-agent behoben? Es wäre unschön, wenn ich mir mit einem Workaround innerhalb der Installationsskripte behelfen müsste.

Grüße
Johannes
Benutzeravatar
d.oertel
uib-Team
Beiträge: 3327
Registriert: 04 Jun 2008, 14:27

Re: Profil von Inst.benutzer pcpatch wird nicht geladen (XP)

Beitrag von d.oertel »

Hi,

nein kein Bug - das ist genau so gewollt.

Unter nt5 wird der opsi-winst unter dem account pcpatch ausgeführt aber für diesen user wird kein environment und kein profil erstellt.
Unter nt6 wird der opsi-winst unter dem account SYSTEM ausgeführt.

Wenn es probleme gibt mit Programmen die unbeding in das Profil eines eingloggten user greifen wollen, siehe:
http://download.uib.de/opsi4.0/doc/html ... ocal-admin
und das standrad produkt:
opsi-template-with-admin.

Ab der nächsten größeren opsi-winst version 4.11.3 wird es wahrscheinlich hierfür noch elegantere Lösungen geben.

gruss
d.oertel


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


jkan
Beiträge: 17
Registriert: 13 Sep 2010, 15:06

Re: Profil von Inst.benutzer pcpatch wird nicht geladen (XP)

Beitrag von jkan »

Hallo,

was spricht denn konkret gegen das Laden eines Profils für den Benutzer pcpatch? Die Lösung mit dem Autologin ist aus meiner Sicht nicht sehr praktikabel, da für jede Installation zwei Neustarts notwendig sind, ein riesiger (vor allem zeitlicher) Overhead.

Ich habe eigentlich keine Lust, die betroffenen Installationsskripte nochmal in einen Profillader zu wrappen. Sind die Quellen von opsi-client-agent verfügbar? Eigentlich handelt es sich bei OPSI doch um ein Open-Source-Produkt und ich würde mich nicht wundern, wenn intern GPL-lizenzierte Bibliotheken zum Einsatz kommen!?

Grüße
Johannes
Benutzeravatar
ueluekmen
uib-Team
Beiträge: 1940
Registriert: 28 Mai 2008, 10:53

Re: Profil von Inst.benutzer pcpatch wird nicht geladen (XP)

Beitrag von ueluekmen »

Hi,

das Laden des pcpatch-users als volles Profil haben im opsi-client-agent mehrmals ausgiebig versucht, dies hat nie zum vollen gewünschten Ziel geführt.

Kann man testen, wenn man in der opsiclientd.conf mal folgendes auf True stellt:
# Load profile / environment of %run_as_user%
create_environment = False

Es gibt die Möglichkeit sich die Sourcen zu holen:

Code: Alles auswählen

http://download.uib.de/opsi4.0/src/
Allerdings hat sich das punktuelle Hochladen der sourcen als unpraktikabel erwiesen, deshalb wurde dies auch nicht weitergeführt. Wir arbeiten momentan daran unser eigenes svn zu füllen, zu erreichen unter svn.opsi.org, dies ist ein Prozess den wir gehen wollen, es dauert aber etwas, bis wir alle Projekte dort veröffentlichen können. Gerade beim opsi-client-agent gibt es nicht nur freie Teile, sondern noch Teile die in Kofinanzierung sind. Deshalb bitten wir weiterhin um etwas Geduld, bis alle Sourcen direkt und bequem zugänglich sind. Weiterhin hilft es auch niemandem, wenn dort Code Hochgeladen wird, der nicht funktioniert.

Allerdings stellt sich mir hier die Frage:
jkan hat geschrieben:Die Lösung mit dem Autologin ist aus meiner Sicht nicht sehr praktikabel, da für jede Installation zwei Neustarts notwendig sind, ein riesiger (vor allem zeitlicher) Overhead.
Hier wird von zeitlichem Overhead gesprochen, einen eigenen Client zu bauen, Testen, verteilen und Pflegen, weil eine handvoll Pakete Probleme bei der Installation machen..... ist das nicht in dem Fall mit Kanonen auf Spatzen geschossen???


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


jkan
Beiträge: 17
Registriert: 13 Sep 2010, 15:06

Re: Profil von Inst.benutzer pcpatch wird nicht geladen (XP)

Beitrag von jkan »

Danke für den Tipp mit der Konfigurationsdatei, jetzt muss ich zwar das opsi-client-agent Paket überall neu installieren, aber spare mir immerhin die Anpassung der Installationsskripte der betroffenen Pakete! Registry und Umgebungsvariablen sehen jetzt gut aus, die betroffenen Pakete funktionieren auch.

Grüße
Johannes

PS: CreateEnvironmentBlock setzt die Umgebungsvariable APPDATA nicht, das musste ich in einem einzelnen Fall, wo diese benötigt wird, im Installationsskript anpassen.
Benutzeravatar
d.oertel
uib-Team
Beiträge: 3327
Registriert: 04 Jun 2008, 14:27

Re: Profil von Inst.benutzer pcpatch wird nicht geladen (XP)

Beitrag von d.oertel »

Hi,

nochmal der Hinweis:
CreateEnvironmentBlock ist experimentell und kann jederzeit verschwinden.
Es ist sogar sehr wahrscheinlich das dem so sein wird.

Wir setzen hier auf eine Lösung in der das Scriptgesteuert und innerhalb des opsi-winst geregelt wird.

Als Unterstützung wäre hier hilfreich für mich, die Produkte zu bekommen (z.B. d.oertel (at) uib.de) ,
welche ein Envirionment benötigen.

danke und gruss
d.oertel


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


ahcsas
Beiträge: 18
Registriert: 20 Jun 2011, 09:28

Re: Profil von Inst.benutzer pcpatch wird nicht geladen (XP)

Beitrag von ahcsas »

Hallo,

Photoshop CS6 setzt offenbar ebenfalls ein geladenes Profil voraus. Die Installation läuft jedenfalls nur durch, wenn ich (eingeloggt) on-Demand installiere. Wahrscheinlich betrifft dies alle neuen "CS6" Produkte von Adobe.

opsi-template-with-admin kommt hier eher nicht in Frage, da dann ja der gesamte Source erst lokal kopiert wird und das bei dem Datenvolumen einfach zu lange dauert.

Kann man schon absehen, wann die neue WINST-Version zum Test bereitstehen wird?

Danke & schöne Grüße aus Fürth!
Sascha
Viele Grüße
Sascha
Benutzeravatar
d.oertel
uib-Team
Beiträge: 3327
Registriert: 04 Jun 2008, 14:27

Re: Profil von Inst.benutzer pcpatch wird nicht geladen (XP)

Beitrag von d.oertel »

Hi,

ich würde mal auf diesen thread Antworten ob die Kollegen ihre scripts im wiki posten könnten:
viewtopic.php?f=7&t=3798
Vielleicht haben die es ja ohne eingoggtem admin gelöst.

Zu der Frage nach den Fortschritten im winst:

Die entsprechenden Mechanismen haben sich als schwieriger erwiesen als gehofft und werden daher mit der nächsten winst Version 4.11.3.2 (die wahrscheinlich Morgen den 3.9.2012) als testing released wird, nicht offiziell freigegeben.

Dein Problem würden Sie auch nicht lösen, da in dem implementierten Rahmen ein Zugriff auf das Netzwerklaufwerk nicht möglich ist, also auch in diesem Fall (wenn es funktionieren würde) alles erst nach c: kopiert werden müsste.

Meiner Erfahrung nach hilft häufig:
a) ein 'ChangeDirectory' auf den Pfad wo die setup.exe liegt.
b) das setup aus einem lokalen Directory starten


so sorry
d.oertel


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


Antworten