J'essaie d'activer et de désactiver l'exigence de mot de passe de l'économiseur d'écran depuis la ligne de commande.
defaults read com.apple.screensaver
affiche une variable askForPassword définie sur 0 ou 1, selon que j'ai configuré une exigence de mot de passe dans les Préférences Système ou non.
defaults write com.apple.screensaver askForPassword 1
et
defaults write com.apple.screensaver askForPassword 0
activer et désactiver le paramètre de mot de passe, du moins je le pensais.
Ce que je trouve à la place, c'est que les commandes vérifient et décochent la case à cocher dans les Préférences Système sous Sécurité mais n'affectent pas du tout l'économiseur d'écran.
Si j'active le mot de passe dans les Préférences Système, puis le désactive à l'aide de la deuxième commande d'écriture par défaut, la case à cocher dans les Préférences Système n'est pas cochée, mais l'économiseur d'écran demandera toujours un mot de passe. Seule l'activation et la désactivation de la case à cocher dans les Préférences Système peuvent désormais modifier ce comportement.
Et si je désactive le mot de passe dans les Préférences Système et que je l'active à l'aide de la première commande d'écriture par défaut, la case à cocher dans les Préférences Système est cochée, mais l'écran de veille ne demandera pas de mot de passe. Ne décocher et cocher que la case à cocher dans les Préférences Système modifie le comportement par la suite.
Que se passe-t-il?
Je peux imaginer qu'il s'agit d'un paramètre global et que je devrais modifier à la /Library/Preferences/com.apple.screensaver
place du domaine utilisateur. Mais dans ce cas, pourquoi y a-t-il un effet sur la case à cocher Préférences Système?
la source
Réponses:
Si vous n'êtes pas obligé d'utiliser l' écriture par défaut, vous pouvez utiliser la commande suivante. Il interagit avec le système d'exploitation de la même manière que si vous utilisiez les Préférences Système.
TESTÉ SUR:
REMARQUE: Si la commande est exécutée à l'intérieur d'un script qui a reçu les privilèges root, vous n'aurez pas besoin du sudo .
la source
J'ai rencontré un problème similaire et j'ai trouvé une solution de l'utilisateur Guillaume sur ce post de forum . Fondamentalement, vous devez forcer l'économiseur d'écran à relire la préférence d'exigence de mot de passe, ce que vous pouvez faire avec un programme C:
Et compilez ceci avec:
Appelez ensuite ce programme immédiatement après votre appel au
defaults write
la source