Geralmente, é executado um servidor sem uma exibição gráfica real (talvez muito simples para o trabalho de diagnóstico). Os clientes se conectam por meio de um protocolo de rede, X encapsulado em SSH ou um protocolo de área de trabalho remota, como VNC ou RDP.
Com o primeiro, os usuários executam programas GUI a partir do shell remoto e aparecem perfeitamente como janelas em seus sistemas clientes. Isso funciona bem em redes de alta velocidade, desde que os gráficos não sejam intensivos, mas, infelizmente, o protocolo X é muito falador e não é altamente eficiente. Também exige que cada cliente execute um servidor X, que é automático nos clientes Linux, fácil no Mac OS e um tanto complicado no Windows.
A outra abordagem é usar o VNC ou o RDP, que executa uma sessão inteira da área de trabalho remota exibida como uma janela no cliente. O trabalho real é feito no servidor e um fluxo de gráficos compactados é entregue ao programa cliente. Há também uma opção intermediária chamada NX, que usa uma versão otimizada do protocolo X para oferecer uma experiência semelhante (com algumas melhorias de desempenho em relação ao VNC ou RDP). Para essas abordagens, os programas clientes estão disponíveis para qualquer grande (e muitos outros ) sistemas operacionais.
Há outro caminho a percorrer, porém, que combina mais com o que você está imaginando: um sistema gigantesco tipo polvo estendendo conexões gráficas diretas de um servidor central em torno de uma pequena área (ou mesmo de um prédio inteiro). Isso é conhecido como "Multiseat X" e você pode ler mais sobre como fazer isso neste artigo em x.org . Os links de lá indicam que há interesse suficiente em fazer isso para manter a idéia viva, embora eu nunca tenha visto alguém fazendo isso na minha experiência direta.
TERM
variável de ambiente.