Lokaler opsiServiceCall funktioniert nicht

Antworten
andré
Beiträge: 324
Registriert: 07 Jan 2014, 10:48

Lokaler opsiServiceCall funktioniert nicht

Beitrag von andré »

Hi,
ich habe ein Problem mit dem Paket windows10-upgrade auf einem Rechner. Auf einer VM lässt sich das Upgrade nicht installieren, weil die lokalen Opsiservicecalls zum Löschen bzw Anlegen des OpsiSetupUser nicht funktionieren. Sieht im Log z.B. so aus:

Code: Alles auswählen

(2129)    [6] [2022-08-31 11:35:37.144] [windows10-upgrade]   EndIf
(2130)    [5] [2022-08-31 11:35:37.145] [windows10-upgrade]   comment: Removing the opsiSetupUser if present
(2131)    [5] [2022-08-31 11:35:37.147] [windows10-upgrade]   Execution of: opsiServiceCall_removeOpsiSetupUser /opsiclientd-once
(2132)    [5] [2022-08-31 11:35:37.147] [windows10-upgrade]   
(2133)    [6] [2022-08-31 11:35:37.147] [windows10-upgrade]        "method": "removeOpsiSetupUser"
(2134)    [6] [2022-08-31 11:35:37.160] [windows10-upgrade]     SSL lib (path) should be: C:\Program Files (x86)\opsi.org\opsi-client-agent\opsi-script\libssl-1_1.dll
(2135)    [7] [2022-08-31 11:35:37.161] [windows10-upgrade]     SSL lib loaded: OpenSSL 1.1.1n  15 Mar 2022
(2136)    [7] [2022-08-31 11:35:37.161] [windows10-upgrade]     Used Protocol: TLSv1.3
(2137)    [6] [2022-08-31 11:35:37.235] [windows10-upgrade]     HTTPSender Post succeeded
(2138)    [6] [2022-08-31 11:35:37.235] [windows10-upgrade]     Server-FQDN: localhost Server-IP: 127.0.0.1
(2139)    [6] [2022-08-31 11:35:37.235] [windows10-upgrade]     JSON Bench for backend_info "params":[],"id":1} Start: 11:35:37:161 Time: 00:00:00:074
(2140)    [6] [2022-08-31 11:35:37.260] [windows10-upgrade]     HTTPSender Post succeeded
(2141)    [6] [2022-08-31 11:35:37.260] [windows10-upgrade]     Server-FQDN: localhost Server-IP: 127.0.0.1
(2142)    [6] [2022-08-31 11:35:37.260] [windows10-upgrade]     JSON Bench for removeOpsiSetupUser "params":[],"id":1} Start: 11:35:37:236 Time: 00:00:00:024
(2143)    [3] [2022-08-31 11:35:37.261] [windows10-upgrade]     Error: retrieveJSONObject --- opsi service problem ----> {"message":"[Error 2] Das System kann die angegebene Datei nicht finden","class":"FileNotFoundError"}
(2144)    [3] [2022-08-31 11:35:37.261] [windows10-upgrade]     Received (first 512): {"id": 1, "error": {"class": "FileNotFoundError", "message": "[Error 2] Das System kann die angegebene Datei nicht finden"}, "result": null}
(2145)    [3] [2022-08-31 11:35:37.261] [windows10-upgrade]     Error: -> {"message":"[Error 2] Das System kann die angegebene Datei nicht finden","class":"FileNotFoundError"}
Führe ich die Methode removeOpsiSetupUser über localhost:4441 im Browser manuell aus, bekomme ich die Rückmeldung

Code: Alles auswählen

{
"id": 1,
"error": {
"class": "FileNotFoundError",
"message": "[Error 2] Das System kann die angegebene Datei nicht finden"
},
"result": null
}
Auf anderen Systemen kann ich das nicht nachstellen, da kommt

Code: Alles auswählen

{
"id": 1,
"error": null,
"result": null
}
Ich habe den opsi-client-agent auf dem betroffenen System schon neu installiert.
In einem unserer Pakete rufe ich einen opsiServiceCall mit /opsiclientd-once auf, um die Methode isEventRunning auszuführen und das funktioniert auch auf dieser VM korrekt.

Hat jemand eine Idee, wie ich das beheben könnte? Würde mir ja schon weiterhelfen zu wissen, auf welche Datei die Methode versucht zuzugreifen.
andré
Beiträge: 324
Registriert: 07 Jan 2014, 10:48

Re: Lokaler opsiServiceCall funktioniert nicht

Beitrag von andré »

Keiner einen Hinweis dazu?
Benutzeravatar
Der-Matze
uib-Team
Beiträge: 102
Registriert: 16 Mär 2009, 11:00

Re: Lokaler opsiServiceCall funktioniert nicht

Beitrag von Der-Matze »

Hallo André,

den Fehler habe ich so noch nicht gesehen.

Wird der opsiSetupUser aufgelistet wenn dieser Befehl auf der Kommandozeile ausgeführt wird?

Code: Alles auswählen

net user
Taucht der opsiSetupUser unter dem Key HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList auf?
Dort einfach mal durch alle gelisteten SIDs durchklicken und schauen ob unter ProfileImagePath ein Eintrag mit dem Wert C:\Users\opsiSetupUser zu finden ist.

Gibt es unter C:\Benutzer einen opsiSetupUser Ordner?

Gibt dieser Befehl eine SID aus?

Code: Alles auswählen

wmic useraccount where name='opsiSetupUser get sid 

Falls ja, ist diese SID unter HKEY_USERS in der Registry gelistet?
andré
Beiträge: 324
Registriert: 07 Jan 2014, 10:48

Re: Lokaler opsiServiceCall funktioniert nicht

Beitrag von andré »

Danke erstmal für die Antwort.
  • Der User opsisetupuser ist nicht angelegt, er erscheint auch nicht unter net user
  • Der Wmic Befehl gibt nichts aus
  • Der Nutzer ist nicht in der Registry zu finden
  • Es gibt keinen Benutzerordner mit dem Namen
Benutzeravatar
Der-Matze
uib-Team
Beiträge: 102
Registriert: 16 Mär 2009, 11:00

Re: Lokaler opsiServiceCall funktioniert nicht

Beitrag von Der-Matze »

Hallo André,

danke für's Testen.
Um hoffentlich genauer sehen zu können was da passiert brauchen wir die opsiclientd.logs von dem Client.
Das Loglevel sollte auf Minimum 7 eingestellt sein.
andré
Beiträge: 324
Registriert: 07 Jan 2014, 10:48

Re: Lokaler opsiServiceCall funktioniert nicht

Beitrag von andré »

Hi,
ich habe mal lokal das Loglevel auf 7 gestellt und dann auf der Maschine die Methode removeOpsiSetupUser ausgeführt. Im opsiclientd.log kam das dazu:

Code: Alles auswählen

[6] [2022-09-29 13:45:24.557] [control server                          ] Worker <opsiclientd.ControlServer.WorkerOpsiclientdJsonInterface object at 0x076951A8> started processing   (Worker.py:227)
[6] [2022-09-29 13:45:24.559] [control server                          ] Failed to get session: session id y5I69NOoWsoCXnl8RTwweI008RwTSO3S not found   (Session.py:150)
[5] [2022-09-29 13:45:24.573] [control server                          ] New session created   (Session.py:172)
[5] [2022-09-29 13:45:24.574] [control server                          ] Application 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0' on client '127.0.0.1' supplied non existing session id: y5I69NOoWsoCXnl8RTwweI008RwTSO3S   (Worker.py:362)
[7] [2022-09-29 13:45:24.576] [control server                          ] Trying to get username and password from Authorization header   (Worker.py:288)
[7] [2022-09-29 13:45:24.577] [control server                          ] Authorization header found (type: Basic)   (Worker.py:292)
[5] [2022-09-29 13:45:24.577] [control server                          ] Authorization request from admin@127.0.0.1 (application: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0)   (ControlServer.py:289)
[7] [2022-09-29 13:45:29.761] [control server                          ] User admin is member of group Administratoren   (NT.py:81)
[6] [2022-09-29 13:45:29.790] [control server                          ] Authentication successful for user 'admin', groups 'administratoren' (admin group: administratoren)   (ControlServer.py:300)
[7] [2022-09-29 13:45:29.795] [control server                          ] User admin is member of group Administratoren   (NT.py:81)
[7] [2022-09-29 13:45:29.812] [control server                          ] Decoding query, request method b'GET'   (Worker.py:438)
[5] [2022-09-29 13:45:29.816] [                                        ] -----> Executing: removeOpsiSetupUser()   (JsonRpc.py:106)
[7] [2022-09-29 13:45:29.817] [                                        ] Processing profile key 'S-1-5-18'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.818] [                                        ] Processing profile key 'S-1-5-19'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.819] [                                        ] Processing profile key 'S-1-5-20'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.819] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-1422'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.820] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-1441'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.821] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-1447'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.821] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-1482'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.822] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-2632'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.823] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-2707'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.823] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-2853'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.824] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-2854'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.825] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-500'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.825] [                                        ] Processing profile key 'S-1-5-21-1586173969-466029875-1045404465-5235'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.826] [                                        ] Processing profile key 'S-1-5-21-4249839675-436706573-1481734293-1007'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.826] [                                        ] Processing profile key 'S-1-5-21-4249839675-436706573-1481734293-1019'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.827] [                                        ] Processing profile key 'S-1-5-21-4249839675-436706573-1481734293-1023'   (opsiclientd.py:150)
[7] [2022-09-29 13:45:29.827] [                                        ] Processing profile key 'S-1-5-21-4249839675-436706573-1481734293-1024'   (opsiclientd.py:150)
[6] [2022-09-29 13:45:29.827] [                                        ] [WinError 2] Das System kann die angegebene Datei nicht finden   (JsonRpc.py:117)
Traceback (most recent call last):
  File "OPSI\Service\JsonRpc.py", line 112, in execute
  File "opsiclientd\ControlServer.py", line 1497, in removeOpsiSetupUser
  File "opsiclientd\windows\opsiclientd.py", line 160, in cleanup_opsi_setup_user
FileNotFoundError: [WinError 2] Das System kann die angegebene Datei nicht finden
[3] [2022-09-29 13:45:29.828] [                                        ] Execution error: [WinError 2] Das System kann die angegebene Datei nicht finden   (JsonRpc.py:118)
[7] [2022-09-29 13:45:29.829] [control server                          ] <opsiclientd.ControlServer.WorkerOpsiclientdJsonInterface object at 0x076951A8>._setCookie   (Worker.py:398)
[7] [2022-09-29 13:45:29.830] [control server                          ] Adding session cookie to headers   (Worker.py:403)
[6] [2022-09-29 13:45:29.832] [control server                          ] Creating interface page   (Worker.py:624)
[7] [2022-09-29 13:45:29.833] [control server                          ] Freeing session <Session(<OPSI.Service.Session.SessionHandler object at 0x076950B8>, name=OPSISID, sessionMaxInactiveInterval=120)>   (Worker.py:282)
Loglevel 8 hat nur gefundene Gruppen aufgelistet, daher habe ich es mal bei 7 belassen.
Ich kann auch gerne das windows10upgrade paket nochmal anstoßen und danach die ganze opsiclientd.log übermitteln. Aber ich denke mal, in dem Fall wird auch nicht mehr drin stehen.
Benutzeravatar
Der-Matze
uib-Team
Beiträge: 102
Registriert: 16 Mär 2009, 11:00

Re: Lokaler opsiServiceCall funktioniert nicht

Beitrag von Der-Matze »

Danke für das Logfile.
Bitte mal mit dem aktuellsten opsi-client-agent testen:
http://download.uib.de/4.2/stable/packa ... .40-1.opsi

Die Vermutung ist dass für das Profil S-1-5-21-4249839675-436706573-1481734293-1024 kein ProfileImagePath eingetragen ist.
Ältere Versionen des opsiclientd sind darüber gestolpert. Inzwischen ist der Bug aber gefixt.
andré
Beiträge: 324
Registriert: 07 Jan 2014, 10:48

Re: Lokaler opsiServiceCall funktioniert nicht

Beitrag von andré »

Hallo Matze,

das wars. Den neuen Client kann aktuell nicht testen, ich würde mir das die Tage aber mal zu Gemüte führen, sobald ich unsere Testumgebung aktualisiere.

In der Zwischenzeit hilft es, das Profil aus der Registry zu löschen. Der ProfileImagePath fehlt dort nämlich, wie vermutet.

RemoveOpsiSetupUser auszuführen, führt jetzt zum selben Ergebnis wie bei den anderen Clients, also denke ich, dass ich das win10-upgrade Paket nochmal testen kann.

Vielen Dank für die Hilfe.
Benutzeravatar
Der-Matze
uib-Team
Beiträge: 102
Registriert: 16 Mär 2009, 11:00

Re: Lokaler opsiServiceCall funktioniert nicht

Beitrag von Der-Matze »

Danke für die Rückmeldung und schön dass es jetzt läuft!
Schöne Grüße
andré
Beiträge: 324
Registriert: 07 Jan 2014, 10:48

Re: Lokaler opsiServiceCall funktioniert nicht

Beitrag von andré »

Ich habe der Vollständigkeit halber jetzt das Problem vor und nach dem Update zum client agent 4.2.0.40-1 nochmal getestet und das Update des client-agent behebt das Problem.

Danke nochmal.
Antworten