web-dev-qa-db-fra.com

Comment définir un délai d'expiration global pour l'économiseur d'écran?

J'essaie de définir un économiseur d'écran global et de masquer le délai d'inactivité (avec le verrouillage d'écran) qui affectera tous les nouveaux comptes d'utilisateurs. J'ai remarqué que gnome-screensaver dans 12.04, configuré par un utilisateur, écrit des données dans un blob dans ~/.dconf, mais je ne sais pas comment le définir globalement. Je sais aussi que le délai d'expiration global est de 10 minutes avec suppression, mais je ne sais pas du tout à quel endroit cela est défini à l'échelle du système. Je trouve toute la transition dconf un peu difficile.

S'il n'est pas possible de configurer gnome-screensaver de cette manière, je serais très intéressé par une solution avec xscreensaver/xlock.

Le but de cette opération est de définir un écran vierge avec verrouillage automatique. Les deux en raison de l'utilisation des ressources et de la sécurité.

J'ai oublié de mentionner qu'il s'agit d'une installation de bureau Ubuntu 12.04 par défaut avec Unity et LightDM. Je vais toutefois installer gnome-Shell et gnome-session-fallback pour permettre aux utilisateurs de choisir. Ce serait bien si une solution fonctionnait sur différentes sessions.

7
martin

Quelles clés dconf sont utilisées

Pour savoir quelles clés sont modifiées dans dconf, vous pouvez utiliser dconf watch / lors de la modification des paramètres. Dans ce cas, vous verrez quelque chose comme:

/org/gnome/settings-daemon/plugins/power/sleep-display-ac
  1800

/org/gnome/settings-daemon/plugins/power/sleep-display-battery
  1800

/org/gnome/desktop/session/idle-delay
  uint32 1800

Ensuite, vous mettez ces clés dans un fichier dans /etc/dconf.

Créer et activer /etc/dconf

Si ce répertoire n'existe pas, vous devez le créer et activer son utilisation avec les commandes suivantes:

mkdir -p /etc/dconf/profile /etc/dconf/db/local.d
cat <<EOF >/etc/dconf/profile/user
user-db:user
system-db:local
EOF

cf: https://live.gnome.org/dconf/SystemAdministrators

Mettez vos paramètres globaux

Utilisez un fichier dans /etc/dconf/db/local.d nommé, par exemple, screensaver-delay:

[org/gnome/settings-daemon/plugins/power]
sleep-display-ac=1800
sleep-display-battery=1800

[org/gnome/desktop/session]
idle-delay=1800

Appliquez-le en exécutant la commande: dconf update. Il (re) générera le fichier /etc/dconf/db/local qui sera utilisé si les clés n'entrent pas en conflit avec les valeurs définies par l'utilisateur.

Forcer les valeurs globales

Si vous souhaitez forcer ces valeurs globales sur les valeurs sélectionnées par l'utilisateur, vous pouvez le faire en utilisant un fichier dans /etc/dconf/db/local.d/locks nommé, par exemple, screensaver-delay:

# Force screensaver delay
/org/gnome/settings-daemon/plugins/power/sleep-display-ac
/org/gnome/settings-daemon/plugins/power/sleep-display-battery
/org/gnome/desktop/session/idle-delay

option xscreensaver (testée sur Xubuntu 12.04): Modifiez /etc/X11/app-defaults/XScreenSaver (en tant que root) pour définir lock sur True et lockTimeout à l’heure souhaitée. Cela changera la valeur par défaut pour tous les utilisateurs, mais les utilisateurs peuvent toujours la changer en utilisant le mécanisme de préférence normal.

2
weronika