"Desanexar" e "Recolocar" xterms nas sessões X?

14

Existe uma maneira de salvar / desanexar um xterm (ou outra janela) e reabri-lo / carregar / reconectá-lo em uma sessão X diferente na mesma máquina?

O que estou tentando conseguir é "mover" o execução de xterms entre duas sessões VNC em execução em uma máquina.

Não, não estou procurando tela :)

Eu não quero usar a tela, porque então precisarei usar uma sessão de tela separada para cada xterm. Usar várias guias na tela não funciona bem para o meu caso, pois preciso examinar vários xterms de uma só vez - não alternar entre as guias.

O NX é outra opção que surgiu, mas requer privilégios no servidor para instalar o s / w. Estou procurando alguma solução usando o X ou alguma opção em um dos gerenciadores de janelas diretamente. O fvwm / xfce / gnome seria bom, mas outros WMs com esse recurso também são bem-vindos.

Abhinav
fonte

Respostas:

8

Eu sei que este post é antigo, mas ...

http://xpra.org/ Xpra é 'tela para X'

... Louco quantas pessoas pareciam ter respondido sem realmente ler sua pergunta. O Xpra não apenas permite que você mova aplicativos de um monitor para outro em qualquer máquina, mas também permite desligar totalmente os aplicativos de qualquer monitor real e depois reconectá-los posteriormente.

MadReasonable
fonte
Acabei de tomar conhecimento do xpra e lembrei-me dessa pergunta. Achei que conseguiria uma resposta decente depois de todo esse tempo. Oh bem, tenha um voto positivo.
Greg
4

Não é exatamente o que você pediu, mas a tela pode fazer o que você deseja.

Isso é compartilhado no nível do shell, e não no nível da janela X, para que você possa ter dois xterms (em Xservers diferentes, desde que estejam na mesma caixa), executando screen -x, o que mostraria as mesmas sessões sh.

Isso não funcionaria para coisas não terminais.

EDIT: xpra é provavelmente o que você deseja.

Greg
fonte
1
Obrigado, estou ciente da tela, mas não é o que estou procurando.
Abhinav
1
Com a tela, é possível ter xterms diferentes com terminais diferentes. Basta usar a tela -x e mudar cada xterm para sua própria tela. Um xterm pode ter tela 1, outra tela 2, etc. Isto tudo pode ser programado, também ... "xterm tela -e -x -p 1 &" etc.
ÁRVORE
+1 para tela. Você disse que "eu não quero usar a tela, porque precisarei usar uma sessão de tela separada para cada xterm". - mas você pode compartilhar a mesma sessão de tela com todos os seus xterms (usando a tela -x para recolocar, como TREE disse), e cada xterm pode olhar para a mesma janela da tela (se é isso que você quer), ou uma janela de tela diferente dentro de cada xterm (se é isso que você quer; não está claro em sua pergunta original).
22411 James Polley
Se você não quiser usar a tela, use tmux.
valbaca
2

Você pode usar a tela dentro de um xterm. Este é um programa que permite anexar e desanexar sessões de terminal. Então você iniciaria um xterm, iniciaria a tela dentro do xterm e usaria o xterm normalmente. Para mover a sessão, você se desconectaria da sessão na tela e sairia do xterm. Inicie outro xterm em outro lugar e reconecte à sessão de tela existente.

Se você quiser fazer isso com qualquer programa X, poderá usar o NX . Funciona como uma tela, pois você pode desconectar / conectar-se a um servidor X. Ele também entende o protocolo X11, por isso faz um bom trabalho ao acelerar o X em redes lentas.

KeithB
fonte
Obrigado pelo ponteiro para o NX, mas não tenho privilégios para instalar o s / w nos servidores. Existe algo embutido em algum gerenciador de janelas ou no próprio X que possa ser usado?
Abhinav
2

O CryoPID costumava mover aplicativos GTK + (como o gnome-terminal) entre servidores X. Ele permanece sem manutenção por um tempo, portanto pode não funcionar no momento, mas algumas pessoas o entenderam e começaram a trabalhar novamente.

TRS-80
fonte
1

Como enviado? Não. Costumava haver um aplicativo "xmovex" que às vezes fazia o que você estava pedindo, mas não era muito popular e não funcionava muito bem.

Existem algumas maneiras de se aproximar do que você deseja:

  • execute a área de trabalho em uma sessão vnc e conecte-a a qualquer lugar;
  • compartilhe sua área de trabalho através do x11vnc;
  • procure nx e freenx.
David Mackintosh
fonte
Eu já / corro / duas sessões vnc. Eu preciso mover xterms entre eles, se possível.
Abhinav
1

Não. Fora da caixa, o X não possui esse recurso. Se você quiser fazer isso, a melhor maneira é usar o XVNC, que é um servidor x que é renderizado em um buffer de quadro virtual do VNC. Em seguida, você pode se conectar à sua sessão X usando um cliente VNC.

ConcernedOfTunbridgeWells
fonte
1

Você já olhou para o xmove?

http://en.wikipedia.org/wiki/Xmove

Richard Hoskins
fonte
Abhinav, você olhou para esta opção? Eu estava tentando fazer a mesma coisa e encontrei essa pergunta enquanto procurava pelo xmove.
rplevy
xmove é velho e morto, NX é antiga, mas ainda tipo de obras, XPRA funciona
totaam
0

Se você se importa apenas com a sessão da linha de comando dentro do xterm, use screen

Roalt
fonte
0

Gostaria de saber se você está procurando manipulação de exibição de exportação .

nik
fonte
Pelo que entendi, a exibição de exportação gerará a janela em uma exibição específica. Quero alterar a exibição enquanto o processo gerado está em execução.
Abhinav