Ich versuche, die Anforderung des Bildschirmschoner-Kennworts über die Befehlszeile zu aktivieren und zu deaktivieren.
defaults read com.apple.screensaver
zeigt eine Variable askForPassword an, die entweder auf 0 oder 1 gesetzt ist, je nachdem, ob ich eine Kennwortanforderung in den Systemeinstellungen konfiguriert habe oder nicht.
defaults write com.apple.screensaver askForPassword 1
und
defaults write com.apple.screensaver askForPassword 0
Aktivieren und Deaktivieren der Passworteinstellung, dachte ich.
Stattdessen stelle ich fest, dass die Befehle das Kontrollkästchen in den Systemeinstellungen unter Sicherheit zwar aktivieren und deaktivieren, den Bildschirmschoner jedoch überhaupt nicht beeinflussen.
Wenn ich das Kennwort in den Systemeinstellungen aktiviere und es dann mit dem zweiten Standardschreibbefehl deaktiviere, ist das Kontrollkästchen in den Systemeinstellungen deaktiviert, aber der Bildschirmschoner fragt weiterhin nach einem Kennwort. Nur das Aktivieren und Deaktivieren des Kontrollkästchens in den Systemeinstellungen kann dieses Verhalten jetzt ändern.
Wenn ich das Kennwort in den Systemeinstellungen deaktiviere und es dann mit dem ersten Standardschreibbefehl aktiviere, ist das Kontrollkästchen in den Systemeinstellungen aktiviert, aber der Bildschirmspeicher fragt nicht nach einem Kennwort. Nur das Deaktivieren und Aktivieren des Kontrollkästchens in den Systemeinstellungen ändert das Verhalten anschließend.
Was ist los?
Ich kann mir vorstellen, dass dies eine globale Einstellung ist und ich /Library/Preferences/com.apple.screensaver
anstelle der Benutzerdomäne ändern sollte . Warum wirkt sich dies in diesem Fall auf das Kontrollkästchen Systemeinstellungen aus?
quelle
Antworten:
Wenn Sie nicht gezwungen sind, Standardeinstellungen zu verwenden , können Sie den folgenden Befehl verwenden. Es interagiert mit dem Betriebssystem genauso, als ob Sie die Systemeinstellungen verwenden würden.
GETESTET AUF:
HINWEIS: Wenn der Befehl in einem Skript ausgeführt wird, dem Root-Berechtigungen erteilt wurden, benötigen Sie den sudo nicht .
quelle
Ich bin auf ein ähnliches Problem gestoßen und habe in diesem Forumsbeitrag eine Lösung von Benutzer Guillaume gefunden . Grundsätzlich müssen Sie den Bildschirmschoner zwingen, die Kennwortanforderungen erneut zu lesen, was Sie mit einem C-Programm tun können:
Und kompiliere dies mit:
Rufen Sie dieses Programm dann sofort nach Ihrem Aufruf an auf
defaults write
quelle