Problem with some Vista machines on boot

bhearsum
Beiträge: 48
Registriert: 17 Jun 2009, 18:12

Problem with some Vista machines on boot

Beitrag von bhearsum »

Hi,

We've got OPSI 3.4 on some Vista machines and sometimes when they boot they're getting a dialog that says: "OPSI Login Blocker", "Service Request Failed". This is pretty serious for us, as the machines are remote and this error requires a reboot. I've looked through all the logs and I can't find anything of note. If anyone knows how to fix it I'd appreciate some advice.

I'd also like to know if there's a way to disable pop-ups such as this and have OPSI silently fail rather than stop the machine from booting. We greatly depend on our machines coming back up after a reboot.
bhearsum
Beiträge: 48
Registriert: 17 Jun 2009, 18:12

Re: Problem with some Vista machines on boot

Beitrag von bhearsum »

I just found the the "loginblockerstart" option for the client ini files. I'm going to try that and see if it fixes anything. I'm still very interested in knowing what the root cause of this problem is, though.
Benutzeravatar
j.schneider
uib-Team
Beiträge: 1802
Registriert: 29 Mai 2008, 15:14

Re: Problem with some Vista machines on boot

Beitrag von j.schneider »

This error message appears if the login blocker failes to connect the opsiclientd service.
The problem seems to be that the opsiclientd failes to start.
Please have a look at the windows event log and the opsiclientd log file c:\tmp\opsiclientd.log.
bhearsum
Beiträge: 48
Registriert: 17 Jun 2009, 18:12

Re: Problem with some Vista machines on boot

Beitrag von bhearsum »

I'll have a look at those when the machines come back up.

On a related note, is there a way to have OPSI allow the login if the login blocker can't connect to opsiconfd? Having it block whenever the OPSI server is down is really really bad for us.
Benutzeravatar
j.schneider
uib-Team
Beiträge: 1802
Registriert: 29 Mai 2008, 15:14

Re: Problem with some Vista machines on boot

Beitrag von j.schneider »

Yes, there is.
Just install the preloginloader with the property loginblockerstart set to off.
After the error message appears (2 times) you can log in to.
If you start vista in save mode, the loginblocker is disabled.
bhearsum
Beiträge: 48
Registriert: 17 Jun 2009, 18:12

Re: Problem with some Vista machines on boot

Beitrag von bhearsum »

j.schneider hat geschrieben:Yes, there is.
Just install the preloginloader with the property loginblockerstart set to off.
After the error message appears (2 times) you can log in to.
If you start vista in save mode, the loginblocker is disabled.
Can I turn off the loginblocker after the preloginloader has been installed? If so, how?
Benutzeravatar
j.schneider
uib-Team
Beiträge: 1802
Registriert: 29 Mai 2008, 15:14

Re: Problem with some Vista machines on boot

Beitrag von j.schneider »

Just import c:\program files\opsi.org\preloginloader\opsiloginblocker\unregister.reg into registry
bhearsum
Beiträge: 48
Registriert: 17 Jun 2009, 18:12

Re: Problem with some Vista machines on boot

Beitrag von bhearsum »

Even after de-installing the loginblocker I still end up with a log in c:\tmp\opsi_loginblocker.log that says "Blocking!" - is this expected?
bhearsum
Beiträge: 48
Registriert: 17 Jun 2009, 18:12

Re: Problem with some Vista machines on boot

Beitrag von bhearsum »

Here's what I found in the logs:
System log:
"The opsiclientd service terminated unexpectedly. It has done this 1 time(s)."
No errors in the Application log, but thousands of "opsi login blocker" entries with no message.

From opsi_loginblocker.log:
2009-09-18 05:20:32 [3] Registry value LogLevel read, result 8
2009-09-18 05:20:32 [4] LogLevel is: 8
2009-09-18 05:20:32 [3] Registry value ServiceConnectionTimeout read, result 120
2009-09-18 05:20:32 [4] ServiceConnectionTimeout is: 120
2009-09-18 05:20:32 [3] Communicating with service through pipe
2009-09-18 05:20:32 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:32 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:33 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:33 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:34 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:34 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:35 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:35 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:36 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:36 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:37 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:37 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:38 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:38 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:39 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:39 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:40 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:40 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:41 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:41 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:43 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:43 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:20:44 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:44 [3] Pipe successfully opened
2009-09-18 05:20:44 [3] Writing '{"id": 1, "method": "getBlockLogin", "params": []}' to pipe
2009-09-18 05:20:44 [4] Number of bytes written: 1024
2009-09-18 05:20:44 [4] Number of bytes read: 36
2009-09-18 05:20:44 [3] Read '{"result":true,"id":1,"error":null}' from pipe
2009-09-18 05:20:44 [5] getJsonValue() current key: result
2009-09-18 05:20:44 [5] getJsonValue() current value: true
2009-09-18 05:20:44 [5] getJsonValue() current key: id
2009-09-18 05:20:44 [5] getJsonValue() current value: 1
2009-09-18 05:20:44 [5] getJsonValue() current key: error
2009-09-18 05:20:44 [5] getJsonValue() current value: null
2009-09-18 05:20:44 [4] getJsonValue() value of 'error' is 'null'
2009-09-18 05:20:44 [5] getJsonValue() current key: result
2009-09-18 05:20:44 [5] getJsonValue() current value: true
2009-09-18 05:20:44 [4] getJsonValue() value of 'result' is 'true'
2009-09-18 05:20:44 [3] Blocking!
2009-09-18 05:20:44 [3] Registry value StartOpsiCredentialProvider read, result 0
2009-09-18 05:20:44 [4] StartOpsiCredentialProvider is: 0
2009-09-18 05:20:49 [3] Registry value LogLevel read, result 8
2009-09-18 05:20:49 [4] LogLevel is: 8
2009-09-18 05:20:49 [3] Registry value ServiceConnectionTimeout read, result 120
2009-09-18 05:20:49 [4] ServiceConnectionTimeout is: 120
2009-09-18 05:20:49 [3] Communicating with service through pipe
2009-09-18 05:20:49 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:49 [3] Pipe successfully opened
2009-09-18 05:20:49 [3] Writing '{"id": 1, "method": "getBlockLogin", "params": []}' to pipe
2009-09-18 05:20:49 [4] Number of bytes written: 1024
2009-09-18 05:20:49 [4] Number of bytes read: 36
2009-09-18 05:20:49 [3] Read '{"result":true,"id":1,"error":null}' from pipe
2009-09-18 05:20:49 [5] getJsonValue() current key: result
2009-09-18 05:20:49 [5] getJsonValue() current value: true
2009-09-18 05:20:49 [5] getJsonValue() current key: id
2009-09-18 05:20:49 [5] getJsonValue() current value: 1
2009-09-18 05:20:49 [5] getJsonValue() current key: error
2009-09-18 05:20:49 [5] getJsonValue() current value: null
2009-09-18 05:20:49 [4] getJsonValue() value of 'error' is 'null'
2009-09-18 05:20:49 [5] getJsonValue() current key: result
2009-09-18 05:20:49 [5] getJsonValue() current value: true
2009-09-18 05:20:49 [4] getJsonValue() value of 'result' is 'true'
2009-09-18 05:20:49 [3] Blocking!
2009-09-18 05:20:54 [3] Registry value LogLevel read, result 8
2009-09-18 05:20:54 [4] LogLevel is: 8
2009-09-18 05:20:54 [3] Registry value ServiceConnectionTimeout read, result 120
2009-09-18 05:20:54 [4] ServiceConnectionTimeout is: 120
2009-09-18 05:20:54 [3] Communicating with service through pipe
2009-09-18 05:20:54 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:54 [3] Pipe successfully opened
2009-09-18 05:20:54 [3] Writing '{"id": 1, "method": "getBlockLogin", "params": []}' to pipe
2009-09-18 05:20:54 [4] Number of bytes written: 1024
2009-09-18 05:20:54 [4] Number of bytes read: 36
2009-09-18 05:20:54 [3] Read '{"result":true,"id":1,"error":null}' from pipe
2009-09-18 05:20:54 [5] getJsonValue() current key: result
2009-09-18 05:20:54 [5] getJsonValue() current value: true
2009-09-18 05:20:54 [5] getJsonValue() current key: id
2009-09-18 05:20:54 [5] getJsonValue() current value: 1
2009-09-18 05:20:54 [5] getJsonValue() current key: error
2009-09-18 05:20:54 [5] getJsonValue() current value: null
2009-09-18 05:20:54 [4] getJsonValue() value of 'error' is 'null'
2009-09-18 05:20:54 [5] getJsonValue() current key: result
2009-09-18 05:20:54 [5] getJsonValue() current value: true
2009-09-18 05:20:54 [4] getJsonValue() value of 'result' is 'true'
2009-09-18 05:20:54 [3] Blocking!
2009-09-18 05:20:59 [3] Registry value LogLevel read, result 8
2009-09-18 05:20:59 [4] LogLevel is: 8
2009-09-18 05:20:59 [3] Registry value ServiceConnectionTimeout read, result 120
2009-09-18 05:20:59 [4] ServiceConnectionTimeout is: 120
2009-09-18 05:20:59 [3] Communicating with service through pipe
2009-09-18 05:20:59 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:20:59 [2] Could not open pipe \\.\pipe\opsiclientd: 2
2009-09-18 05:21:00 [4] Creating file: \\.\pipe\opsiclientd
2009-09-18 05:21:00 [2] Could not open pipe \\.\pipe\opsiclientd: 2
From opsiclientd.log:
[3] [Sep 18 05:20:43] [opsiclientd] Refusing to set empty value for config value 'block_notifier_command' of section 'opsiclientd_notifier' (opsiclientd.pyo|2161)
[0] [Sep 18 05:20:43] [opsiclientd] Opsiclientd version: 0.5.7.4 (opsiclientd.pyo|2549)
[0] [Sep 18 05:20:43] [opsiclientd] Commandline: C:\Program Files\opsi.org\preloginloader\opsiclientd.exe (opsiclientd.pyo|2550)
[0] [Sep 18 05:20:43] [opsiclientd] Working directory: C:\Windows\system32 (opsiclientd.pyo|2551)
Benutzeravatar
j.schneider
uib-Team
Beiträge: 1802
Registriert: 29 Mai 2008, 15:14

Re: Problem with some Vista machines on boot

Beitrag von j.schneider »

Ok, please edit the opsiconfd configuration file c:\program files\opsi.org\preloginloader\opsiclientd\opsiclientd.conf:

You will find a section called [event_gui_startup]
Set the option block_login of this section to false:
block_login = false

If you want to set this for all your clients, you can start the config-editor, switch to server-configuration and create an "additional config" property.
Set the name of the property to opsiclientd.event_gui_startup.block_login and set the value to false.

If a client connects the config service it will load this configuration and patch the opsiclientd.conf accordingly.

If needed, you can overwrite other values of the ini-file too:
opsiclientd.<section_name>.<option_name>

You can also modify the opsiclientd.conf template located in /opt/pcbin/install/preloginloader/files/opsi/dist/opsiclientd/opsiclientd.conf which is used when (re-)installing the preloginloader.
Antworten