DISPLAY=:0 gnome-panel é um comando shell que executa o comando externo gnome-panel com a variável de ambiente DISPLAY definida como :0 . A sintaxe do shell VARIABLE=VALUE COMMAND define a variável de ambiente VARIABLE apenas para a duração do comando especificado. É aproximadamente equivalente a (export VARIABLE=VALUE; exec COMMAND) .
A variável de ambiente DISPLAY informa aos programas GUI como se comunicar com a GUI. Um sistema Unix pode executar vários servidores X , ou seja, exibição múltipla. Essas exibições podem ser exibições físicas (um ou mais monitores) ou exibições remotas (encaminhadas pela rede, por exemplo, por meio de SSH) ou exibições virtuais, como Xvfb , etc. A sintaxe básica para especificar exibições é HOST:NUMBER ; se você omitir a parte HOST , a exibição será local.
As telas são numeradas de 0, então :0 é a primeira exibição local que foi iniciada. Em configurações típicas, isso é o que é exibido no (s) monitor (es) do computador.
Como todas as variáveis de ambiente, DISPLAY é herdado do processo pai para o processo filho. Por exemplo, quando você faz login em uma sessão da GUI, o gerenciador de login ou o iniciador de sessão define DISPLAY apropriadamente e a variável é herdada por todos os programas da sessão. Quando você abre uma conexão SSH com o encaminhamento X, o SSH define a variável de ambiente DISPLAY para a conexão encaminhada, para que os programas que você executa na máquina remota sejam exibidos na máquina local. Se não houver nenhuma conexão X encaminhada (seja porque o SSH está configurado para não fazê-lo ou porque não há um servidor X local), o SSH não define DISPLAY .
Definir DISPLAY explicitamente faz com que o programa seja exibido em um lugar onde normalmente não seria. Por exemplo, a execução de DISPLAY=:0 gnome-panel em uma conexão SSH inicia um painel Gnome na exibição local da máquina remota (supondo que haja uma e que o usuário esteja autorizado a acessá-la). A definição explícita do DISPLAY=:0 é geralmente uma maneira de acessar a exibição local de uma máquina de fora da sessão local, como por exemplo através de um acesso remoto ou de uma tarefa cron.