No homem X (7) há uma seção Nomes que afirmam:
On POSIX systems, the default display name is stored in your DISPLAY environment variable. This variable is set automatically by the xterm terminal emulator.
e depois:
Finally, most X programs accept a command line option of -display displayname to temporarily override the contents of DISPLAY. This is most commonly used to pop windows on another person's screen or as part of a "remote shell" command to start an xterm pointing back to your display.
homem para o Xserver (1) , temos informações sobre Opções:
:displaynumber The X server runs as the given displaynumber, which by default is 0. If multiple X servers are to run simultaneously on a host, each must have a unique display number. See the DISPLAY NAMES section of the X(7) manual page to learn how to specify which display number clients should try to use.
Dê uma olhada em: / etc / gdm / Init / Default (disponível no ArchLinux, então não tenho certeza se no sistema RHEL está disponível).
Mais alguns achados. DISPLAY é definido pelo programa xinit. xinit.c tem isso:
if (argc > 0 && (argv[0][0] == ':' && isdigit(argv[0][1])))
displayNum = *argv;
else
displayNum = *sptr++ = default_display;
(...)
static void
set_environment(void)
{
if (setenv("DISPLAY", displayNum, TRUE) == -1)
Fatal("unable to set DISPLAY");
}
Portanto, o xinit pode definir o valor padrão ou retirá-lo da opção passada para o xinit quando ele foi executado. xinit (1) :
xinit [ [ client ] options ... ] [ -- [ server ] [ display ] options ... ]
E mais um. variável de ambiente pode ser definida pelo PAM. Por exemplo. /etc/security/pam_env.conf
# Set the DISPLAY variable if it seems reasonable
#DISPLAY DEFAULT=${REMOTEHOST}:0.0 OVERRIDE=${DISPLAY}