"Détacher" et "Rattacher" les xterms sur les sessions X?

14

Existe-t-il un moyen de sauvegarder / détacher un xterm (ou une autre fenêtre), et de le rouvrir / charger / rattacher sur une session X différente sur la même machine?

Ce que j'essaie de réaliser, c'est de "déplacer" des xterms en cours d'exécution entre deux sessions VNC s'exécutant sur une machine.

Non, je ne cherche pas d'écran :)

Je ne veux pas utiliser d'écran, car je devrai alors utiliser une session d'écran distincte pour chaque xterm. L'utilisation de plusieurs onglets dans l'écran ne fonctionne pas bien pour mon cas, car je dois regarder plusieurs xterms à la fois - pas basculer entre les onglets.

NX est une autre option qui est apparue, mais elle nécessite des privilèges sur le serveur pour installer le s / w. Je recherche une solution utilisant X ou une option directement dans l'un des gestionnaires de fenêtres. fvwm / xfce / gnome serait bien, mais les autres WM disposant de cette fonctionnalité sont également les bienvenus.

Abhinav
la source

Réponses:

8

Je sais que ce post est vieux mais ...

http://xpra.org/ Xpra est «écran pour X»

... Fou combien de personnes semblaient avoir répondu sans vraiment lire votre question. Xpra vous permettra non seulement de déplacer des applications d'un écran à un autre sur n'importe quelle machine, il vous permettra également de fermer complètement les applications de tout affichage réel, puis de les rattacher plus tard.

MadReasonable
la source
Je viens de prendre conscience de xpra et je me suis souvenu de cette question. Je pensais que j'allais obtenir une réponse décente après tout ce temps. Eh bien, ayez un vote positif.
Greg
4

Pas tout à fait ce que vous avez demandé, mais l' écran peut faire ce que vous voulez.

Cela partage au niveau du shell plutôt qu'au niveau de la fenêtre X, vous pouvez donc avoir deux xterms (sur des serveurs X différents, tant qu'ils sont sur la même boîte), en cours d'exécution screen -x, qui afficheront les mêmes sessions sh.

Cela ne fonctionnerait pas pour les choses non terminales.

EDIT: xpra est probablement ce que vous voulez.

Greg
la source
1
Merci, je connais l'écran, mais ce n'est pas ce que je recherche.
Abhinav
1
Avec l'écran, vous pouvez réellement avoir différents xterms avec différents terminaux. Utilisez simplement screen -x et basculez chaque xterm sur son propre écran. Un xterm peut avoir l'écran 1, un autre écran 2, etc. Tout cela pourrait également être scripté ... "xterm -e screen -x -p 1 &" etc.
TREE
+1 pour l'écran. Vous avez dit que "je ne veux pas utiliser d'écran, car alors je devrai utiliser une session d'écran distincte pour chaque xterm." - mais vous pouvez partager la même session d'écran avec tous vos xterms (en utilisant screen -x pour rattacher, comme TREE a dit), et chaque xterm peut regarder la même fenêtre d'écran (si c'est ce que vous voulez), ou une fenêtre d'écran différente à l'intérieur de chaque xterm (si c'est ce que vous voulez; ce n'est pas clair à partir de votre question d'origine).
James Polley
Si vous ne souhaitez pas utiliser l'écran, utilisez tmux.
valbaca
2

Vous pouvez utiliser l' écran dans un xterm. Il s'agit d'un programme qui vous permet d'attacher et de détacher des sessions de terminal. Vous devez donc démarrer un xterm, démarrer l'écran dans le xterm et utiliser le xterm comme d'habitude. Pour déplacer la session, vous devez vous détacher de la session dans l'écran et quitter le xterm. Démarrez un autre xterm ailleurs et rattachez-le à la session d'écran existante.

Si vous voulez le faire avec n'importe quel programme X, vous pouvez utiliser NX . Cela fonctionne comme un écran, en ce sens que vous pouvez vous détacher / attacher à un serveur X. Il comprend également le protocole X11, donc il fait un bon travail pour accélérer X sur des réseaux lents.

KeithB
la source
Merci pour le pointeur vers NX, mais je n'ai pas les privilèges pour installer s / w sur les serveurs. Y a-t-il quelque chose de intégré dans l'un des gestionnaires de fenêtres, ou X lui-même qui peut être utilisé?
Abhinav
2

CryoPID était capable de déplacer des applications GTK + (comme gnome-terminal) entre des serveurs X. Il n'est pas entretenu depuis un certain temps, donc cela pourrait ne pas fonctionner pour le moment, mais certaines personnes l'ont récupéré et ont recommencé à travailler dessus.

TRS-80
la source
1

Comme expédié? Non. Il y avait une application "xmovex" qui faisait parfois un peu ce que vous demandez, mais elle n'était pas très populaire et ne fonctionnait pas très bien.

Il y a deux façons de se rapprocher de ce que vous voulez:

  • exécuter le bureau dans une session vnc puis vous y connecter de partout;
  • partagez votre bureau via x11vnc;
  • examiner nx et freenx.
David Mackintosh
la source
J'ai déjà / exécuté / deux sessions vnc. J'ai besoin de déplacer des xterms entre eux, si possible.
Abhinav
1

Non. X ne dispose pas de cette fonctionnalité. Si vous voulez faire cela, la meilleure façon est d'utiliser XVNC qui est un serveur x qui effectue un rendu dans un tampon de trame virtuelle VNC. Ensuite, vous pouvez vous connecter à votre session X à l'aide d'un client VNC.

ConcernedOfTunbridgeWells
la source
1

Avez-vous étudié xmove?

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

Richard Hoskins
la source
Abhinav, avez-vous envisagé cette option? J'essayais de faire la même chose et j'ai trouvé cette question en cherchant xmove.
rplevy
xmove est vieux et mort, NX est vieux mais fonctionne toujours, xpra fonctionne
totaam
0

Si vous ne vous souciez que de la session de ligne de commande dans xterm, utilisez screen

Roalt
la source
0

Je me demande si vous cherchez une gestion d' affichage d'exportation .

nik
la source
Si je comprends bien, l'exportation d'affichage fera apparaître la fenêtre sur un affichage particulier. Je souhaite modifier l'affichage pendant l'exécution du processus généré.
Abhinav