7 votes

Basculer "demander le mot de passe après le mode veille/écran de veille" ou le délai dans 10.7 en utilisant le terminal

Il y a une option dans le panneau de préférences pour changer le temps pendant lequel le Mac peut être en veille/économiseur d'écran avant de nécessiter à nouveau un mot de passe pour être déverrouillé.

Je suis sous OS X Lion 10.7.

Y a-t-il un moyen de changer ce réglage en utilisant le terminal ou un script Apple? J'ai essayé de modifier le fichier plist en utilisant:

defaults write com.apple.screensaver askForPasswordDelay -int 60

j'ai également essayé

defaults write com.apple.screensaver askForPasswordDelay -float 60

également, désactiver complètement le mot de passe n'a pas fonctionné non plus

defaults write com.apple.screensaver askForPassword -int 0

Le fichier plist a été modifié, mais cela n'a eu aucun effet. C'est le même fichier plist qui est modifié lorsque vous changez manuellement le réglage dans les préférences.

Ça serait génial si quelqu'un avait une idée pour résoudre mon problème.

EDIT : j'ai également essayé de : 1) ajouter le drapeau -currentHost 2) supprimer le -int / -float

3voto

Daniel Beck Points 105590

Vous pouvez le faire en utilisant des scripts d'interface utilisateur. Cela nécessite le support activé pour les dispositifs d'assistance dans le panneau de préférences Accessibilité universelle. Vous pouvez lancer le script à partir de la ligne de commande en utilisant osascript, mais vous devez avoir une session GUI pour que cela fonctionne.

Sur la base de ma réponse précédente ici, j'ai créé le script suivant qui fonctionne sur mon Lion activé par File Vault. Apparemment, une case à cocher permettant de désactiver complètement le mot de passe a été supprimée, soit par Lion lui-même, soit par moi en activant File Vault 2. Dans le dernier cas, je ne peux pas corriger le script pour vous, mais celui lié pourrait fonctionner.

Changez l'index (6) de l'élément de menu à cliquer dans la 9ème ligne pour choisir laquelle des options choisir.


entrer la description de l'image ici

tell application "Préférences Système"
    set current pane to pane id "com.apple.preference.security"
    tell application "Événements Système"
        tell process "Préférences Système"
            tell first window
                tell first tab group
                    click radio button 1
                    click pop up button 1
                    click menu item 6 of menu of pop up button 1
                end tell
            end tell
        end tell
    end tell
    quit
end tell

Voici la méthode "officielle" pour changer ce paramètre en AppleScript :

tell application "Événements Système" to set require password to wake of security preferences to false

Il présente deux problèmes majeurs :

  • C'est booléen (vous ne pouvez pas changer la période de grâce)
  • Cela ne fonctionne pas pour moi (cela prend la place de la case à cocher que je n'ai pas)

2voto

user257938 Points 31

Essayez d'utiliser l'option -currentHost de la commande defaults.

defaults -currentHost read com.apple.screensaver

defaults -currentHost write com.apple.screensaver askForPasswordDelay -int 60

En plus de la commande defaults, il y a aussi /usr/libexec/PlistBuddy:

/usr/libexec/PlistBuddy -h

for f in ~/Library/Preferences/ByHost/com.apple.screensaver.*.plist; do
   /usr/libexec/PlistBuddy -c Print "$f"
done

1voto

Emil Haukeland Points 11

Vous devrez changer le numéro de version du config et supprimer également le fichier verrouillé

defaults -currentHost write com.apple.screensaver askForPasswordDelay -int 60
defaults -currentHost write com.apple.screensaver PrefsVersion -int 101

rm ~/Library/Preferences/ByHost/com.apple.screensaver.plist.lock

Je n'ai pas trouvé le processus correct à tuer, mais après avoir redémarré, le retard a fonctionné pour moi.

1voto

pxielami Points 326

Le verrouillage du fichier de verrouillage rend cela beaucoup plus difficile qu'auparavant. La méthode la plus simple que j'ai trouvée jusqu'à présent :

Exécutez vos modifications sur le fichier plist plutôt que sur le domaine, et exécutez en tant que superutilisateur. Cela modifiera les autorisations sur le fichier de sorte que seul root puisse le lire et l'écrire, ce qui est mauvais et doit être corrigé. Chown+chmod rapide pour corriger. Si vous ne corrigez pas les autorisations, la prochaine fois que Préférences Système tentera de charger le plist, cela échouera, il décidera qu'il était corrompu de toute façon et le remplacera par une copie par défaut.

Donc, le code est :

sudo defaults write ~/Library/Preferences/com.apple.screensaver.plist askForPasswordDelay -int 60

sudo chown ~/Library/Preferences/com.apple.screensaver.plist

sudo chmod 600 ~/Library/Preferences/com.apple.screensaver.plist

Cela semble s'appliquer à la plupart des fichiers de préférences dans Lion, mais pas tous.

0voto

marsh Points 131

Votre meilleure option est d'utiliser l'éditeur de plist sur le fichier et de regarder spécifiquement... il est très probable que les choses changent de Snow Leopard à Lion.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X