Boa pergunta. Um pouco complicado de responder, mas aqui está uma tentativa.
Resposta Básica
Na verdade, existe uma pequena possibilidade de reinicialização incluída no X11 . Você pode encontrá-lo em /etc/X11/Xreset
. Você pode usar o diretório Xreset ( Xreset.d
) para colar um script que é executado automaticamente quando um usuário efetua logout. O arquivo README:
# Scripts in this directory are executed as root when a user log out from
# a display manager using /etc/X11/Xreset.
# The username of the user logging out is provided in the $USER environment
# variable.
Você pode, portanto, a) adicionar um script de redefinição em /etc/X11/Xreset.d
eb) criar um script anexado a um ativador que configure seus dois monitores externos. Como tal, você faria logoff e tudo voltaria ao normal, você entraria no seu laptop, acessaria o inicializador dos monitores e aproveitaria a vida.
Mais informações
-
Você pode querer olhar em
sudo dpkg-reconfigure -phigh xserver-xorg
para redefinir o xserver ou (provavelmente melhor olhar para o answer Mik sugerida nos comentários). -
Um cara SuSE escreveu um bom artigo sobre o X.
-
Em um reporte de erros resolvido, alguém afirma:
admins can drop scripts in /etc/X11/Xreset.d/ to run after the user logs out.
-
Este é o conteúdo do arquivo:
Você pode encontrá-lo em seu próprio sistema.
#!/bin/sh
#
# /etc/X11/Xreset
#
# global Xreset file -- for use by display managers
# $Id: Xsession 967 2005-12-27 07:20:55Z dnusinow $
set -e
PROGNAME=Xreset
SYSSESSIONDIR=/etc/X11/Xreset.d
if [ ! -d "$SYSSESSIONDIR" ]; then
# Nothing to do, exiting
exit 0
fi
# use run-parts to source every file in the session directory; we source
# instead of executing so that the variables and functions defined above
# are available to the scripts, and so that they can pass variables to each
# other
SESSIONFILES=$(run-parts --list $SYSSESSIONDIR)
if [ -n "$SESSIONFILES" ]; then
set +e
for SESSIONFILE in $SESSIONFILES; do
. $SESSIONFILE
done
set -e
fi
exit 0
# vim:set ai et sts=2 sw=2 tw=80: