"Від'єднати" та "повторно встановити" xterms протягом X сеансів?


14

Чи є спосіб зберегти / від'єднати xterm (або інше вікно) та знову відкрити / завантажити / повторно приєднати його на іншому сеансі X на одній машині?

Те, що я намагаюся досягти, - це "переміщення" виконання xterms між двома сеансами VNC, що працюють на машині.

Ні, я не шукаю екран :)

Я не хочу використовувати екран, тому що тоді мені потрібно буде використовувати окремий екранний сеанс для кожного xterm. Використання декількох вкладок на екрані не спрацьовує для мого випадку, оскільки мені потрібно переглянути декілька xterms одночасно - не перемикатися між вкладками.

NX - це ще одна опція, яка з'явилася, але для встановлення s / w потрібні привілеї на сервері. Я шукаю рішення, використовуючи X, або якийсь варіант в одному з менеджерів вікон безпосередньо. fvwm / xfce / gnome було б добре, але інші вітчизняні вітчизняні машини, які мають цей об'єкт, також вітаються.

Відповіді:


8

Я знаю, що ця публікація стара, але ...

http://xpra.org/ Xpra - це "екран для X"

... Божевільно, скільки людей, здавалося, відповіли, не читаючи насправді вашого запитання. Xpra не тільки дозволить вам переміщувати програми з одного дисплея на інший на будь-якій машині, він дозволить вам повністю закрити відключення програм від будь-якого реального дисплея, а потім повторно приєднати пізніше.


Я просто дізнався про xpra і згадав про це питання. Думав, що я збираюся отримати гідну відповідь на це після всього цього часу. Ну добре, майте нагороду.
Грег

4

Не зовсім те, про що ви просили, але екран може робити те, що ви хочете.

Це ділиться на рівні оболонки, а не на рівні X-вікна, тому у вас можуть бути два xterms (на різних Xservers, якщо вони були в одному і тому ж вікні), запущені screen -x, які показували б однакові сеанси sh.

Це не працює для нетермінальних речей.

EDIT: xpra - це, мабуть, те, що ви хочете.


1
Дякую, я знаю екран, але це не те, що я шукаю.
Абхінав

1
За допомогою екрана ви можете мати різні xterms з різними терміналами. Просто використовуйте screen -x і перемикайте кожен xterm на свій власний екран. Один xterm може мати екран 1, інший екран 2 і т. Д. Це все також може бути сценарієм ... "xterm -e screen -x -p 1 &" etc.
TREE

+1 для екрана Ви сказали, що "я не хочу використовувати екран, тому що мені знадобиться використовувати окремий екранний сеанс для кожного xterm." - але ви можете поділитися тим же сеансом екрана з усіма своїми xterms (використовуючи screen -x для повторного вкладення, як TREE сказав), і кожен xterm може дивитись на одне й те саме вікно (якщо це те, що ви хочете) або інше вікно екрана всередині кожного xterm (якщо це те, що ви хочете; це не зрозуміло з вашого початкового питання).
Джеймс Поллі

Якщо ви не хочете використовувати екран, використовуйте tmux.
valbaca

2

Ви можете використовувати екран у межах xterm. Це програма, яка дозволяє приєднувати та від'єднувати термінальні сеанси. Отже, ви б запустили xterm, запустили екран у xterm і використали xterm як звичайний. Щоб перемістити сеанс, слід відключитися від сеансу на екрані та вийти з xterm. Запустіть ще один xterm десь в іншому місці та приєднайтеся до існуючого екранного сеансу.

Якщо ви хочете зробити це з будь-якою програмою X, ви можете використовувати NX . Він працює як екран, завдяки чому ви можете від'єднати / приєднати до X-сервера. Він також розуміє протокол X11, тому робить хорошу роботу при пришвидшенні X через повільні мережі.


Дякую за покажчик на NX, але я не маю привілеїв встановлювати s / w на сервери. Чи є що-небудь вбудоване в будь-який з менеджерів вікон, або сам X, який можна використовувати?
Абхінав

2

CryoPID використовувався для переміщення додатків GTK + (наприклад, gnome-terminal) між X-серверами. Це деякий час не було збережене, тож воно може не спрацювати на даний момент, але деякі люди підхопили його і знову почали працювати над ним.


1

Як відправляється? Ні. Раніше була програма "xmovex", яка іноді робила все те, що ви просите, але це було не дуже популярно і не дуже добре працювало.

Є кілька способів наблизитись до того, що ви хочете:

  • запустити робочий стіл у сеансі vnc, а потім підключитися до цього звідусіль;
  • ділитися робочим столом через x11vnc;
  • заглянути в nx і freenx.

Я вже / запускаю / два сеанси vnc. Мені потрібно перемістити xterms між ними, якщо це можливо.
Абхінав

1

Ні. У коробці X немає цього засобу. Якщо ви хочете зробити це найкращим способом, - це використовувати XVNC, який є x-сервером, який перетворюється на буфер віртуального кадру VNC. Потім ви можете підключитися до свого сеансу X за допомогою клієнта VNC.



0

Якщо вас цікавить лише сеанс командного рядка всередині xterm, використовуйте екран


0

Цікаво, чи шукаєте ви експортної обробки дисплея .


Як я розумію, експортування відображатиме вікно на певному дисплеї. Я хочу змінити дисплей під час запущеного породженого процесу.
Абхінав
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.