コマンドラインからスクリーンセーバーのパスワード要件を有効または無効にしようとしています。
defaults read com.apple.screensaver
システム環境設定でパスワード要件を設定したかどうかに応じて、0か1に設定された変数askForPasswordを示します。
defaults write com.apple.screensaver askForPassword 1
そして
defaults write com.apple.screensaver askForPassword 0
パスワードの設定を有効または無効にするか、そう思った。
代わりに私が見つけたのは、コマンドがセキュリティの下のシステム環境設定のチェックボックスを実際にチェックおよびチェック解除しますが、スクリーンセーバーにはまったく影響しないということです。
システム環境設定でパスワードを有効にしてから、2番目のデフォルトの書き込みコマンドを使用してパスワードを無効にすると、システム環境設定のチェックボックスがオフになりますが、スクリーンセーバーはパスワードを要求します。この動作を変更できるのは、システム環境設定のチェックボックスをオンまたはオフにすることだけです。
また、システム環境設定でパスワードを無効にしてから、最初のデフォルトの書き込みコマンドを使用してパスワードを有効にすると、システム環境設定のチェックボックスがオンになりますが、スクリーンセーブはパスワードを要求しません。システム環境設定のチェックボックスのチェックを外してチェックするだけで、その後の動作が変わります。
どうしたの?
これはグローバル設定であり/Library/Preferences/com.apple.screensaver
、ユーザードメインの代わりに変更する必要があると想像できます。しかしその場合、なぜシステム環境設定チェックボックスに影響があるのですか?