X11 Пересылка через экран Gnu, возможно ли это?

Это из-за небольшой ошибки в команде:

gnome-terminal --title="abvtrm" --geometry 80x10-0-0

пойдет туда - см. -0-0

gnome-terminal --title="abvtrm" --geometry 80x10+0+0

перейдет в начало - см. +0+0.

man X | grep corner 

Спасибо @pandya

дает следующее:

four corners of the screen using the following specifications:
       +0+0    upper left hand corner.
       -0+0    upper right hand corner.
       -0-0    lower right hand corner.
       +0-0    lower left hand corner.
32
задан 28 October 2010 в 20:36

63 ответа

Чтобы сделать это вручную, после того, как вы включили SSHed, но перед повторной привязкой к экрану проверьте переменную среды DISPLAY:

echo $DISPLAY

После того, как вы снова подключились к экрану, явным образом настройте среду variable:

export DISPLAY=:N.0

где: N.0 - это то, что показало echo перед приложением. Это не будет идеально, поскольку какое-либо приложение может ожидать поговорить с Session D-Bus, что немного сложнее для отправки по SSH-соединению.

31
ответ дан 26 May 2018 в 00:45
  • 1
    Потрясающие! Кажется, это работает для большинства приложений. Я пытаюсь подняться на экран «фу». Есть ли у вас какие-либо идеи или вы можете указать мне в общем направлении, как я могу автоматизировать это? Спасибо! – Sandro 29 October 2010 в 03:17
  • 2
    Я сделал такие странные вещи, как скриптинг, например: echo $DISPLAY > $HOME/.display.txt; screen -x -d, а затем еще один экран, который запускается, и делает export DISPLAY=$(cat $HOME/.display.txt) – Kees Cook 29 October 2010 в 07:43
  • 3
    это именно то, чего я пытался достичь. Но пока не повезло. Попытка добиться того, чтобы экспорт произошел, - это довольно сложное препятствие, так как запуск его в скрипте не является хорошим, мне нужно как-то его истолковать ... и setenv тоже не похоже на волшебное прикосновение. – Sandro 31 October 2010 в 02:45
  • 4
    Чтобы указать тип скрипта . /path/to/script, где script - export DISPLAY=$(cat $HOME/.display.txt) – Kees Cook 31 October 2010 в 02:15
  • 5
    Это предполагает, что у вас нет автоматического запуска при входе в систему (a la byobu) – A Student at a University 27 September 2011 в 18:46

Чтобы сделать это вручную, после того, как вы включили SSHed, но перед повторной привязкой к экрану проверьте переменную среды DISPLAY:

echo $DISPLAY

После того, как вы снова подключились к экрану, явным образом настройте среду variable:

export DISPLAY=:N.0

где: N.0 - это то, что показало echo перед приложением. Это не будет идеально, поскольку какое-либо приложение может ожидать поговорить с Session D-Bus, что немного сложнее для отправки по SSH-соединению.

31
ответ дан 25 July 2018 в 23:00

Чтобы сделать это вручную, после того, как вы включили SSHed, но перед повторной привязкой к экрану проверьте переменную среды DISPLAY:

echo $DISPLAY

После того, как вы снова подключились к экрану, явным образом настройте среду variable:

export DISPLAY=:N.0

где: N.0 - это то, что показало echo перед приложением. Это не будет идеально, поскольку какое-либо приложение может ожидать поговорить с Session D-Bus, что немного сложнее для отправки по SSH-соединению.

31
ответ дан 31 July 2018 в 10:31

Чтобы сделать это вручную, после того, как вы включили SSHed, но перед повторной привязкой к экрану проверьте переменную среды DISPLAY:

echo $DISPLAY

После того, как вы снова подключились к экрану, явным образом настройте среду variable:

export DISPLAY=:N.0

где: N.0 - это то, что показало echo перед приложением. Это не будет идеально, поскольку какое-либо приложение может ожидать поговорить с Session D-Bus, что немного сложнее для отправки по SSH-соединению.

31
ответ дан 2 August 2018 в 04:22

Чтобы сделать это вручную, после того, как вы включили SSHed, но перед повторным подключением к экрану проверьте переменную среды DISPLAY:

  echo $ DISPLAY  

После того, как вы повторно подключились к экрану, явным образом задайте переменную среды:

  export DISPLAY =: N.0  

где: N.0 что показало эхо перед приложением. Это не будет идеальным, поскольку некоторое приложение может ожидать поговорить с Session D-Bus, что немного сложнее для отправки по SSH-соединению.

31
ответ дан 4 August 2018 в 20:53

Чтобы сделать это вручную, после того, как вы включили SSHed, но перед повторным подключением к экрану проверьте переменную среды DISPLAY:

  echo $ DISPLAY  

После того, как вы повторно подключились к экрану, явным образом задайте переменную среды:

  export DISPLAY =: N.0  

где: N.0 что показало эхо перед приложением. Это не будет идеальным, поскольку некоторое приложение может ожидать поговорить с Session D-Bus, что немного сложнее для отправки по SSH-соединению.

31
ответ дан 6 August 2018 в 04:26

Чтобы сделать это вручную, после того, как вы включили SSHed, но перед повторным подключением к экрану проверьте переменную среды DISPLAY:

  echo $ DISPLAY  

После того, как вы повторно подключились к экрану, явным образом задайте переменную среды:

  export DISPLAY =: N.0  

где: N.0 что показало эхо перед приложением. Это не будет идеальным, поскольку некоторое приложение может ожидать поговорить с Session D-Bus, что немного сложнее для отправки по SSH-соединению.

31
ответ дан 7 August 2018 в 22:34

Чтобы сделать это вручную, после того, как вы включили SSHed, но перед повторным подключением к экрану проверьте переменную среды DISPLAY:

  echo $ DISPLAY  

После того, как вы повторно подключились к экрану, явным образом задайте переменную среды:

  export DISPLAY =: N.0  

где: N.0 что показало эхо перед приложением. Это не будет идеальным, поскольку некоторое приложение может ожидать поговорить с Session D-Bus, что немного сложнее для отправки по SSH-соединению.

31
ответ дан 10 August 2018 в 10:41

Чтобы сделать это вручную, после того, как вы включили SSHed, но перед повторным подключением к экрану проверьте переменную среды DISPLAY:

  echo $ DISPLAY  

После того, как вы повторно подключились к экрану, явным образом задайте переменную среды:

  export DISPLAY =: N.0  

где: N.0 что показало эхо перед приложением. Это не будет идеальным, поскольку некоторое приложение может ожидать поговорить с Session D-Bus, что немного сложнее для отправки по SSH-соединению.

31
ответ дан 13 August 2018 в 17:14
  • 1
    Потрясающие! Кажется, это работает для большинства приложений. Я пытаюсь подняться на экран «фу». Есть ли у вас какие-либо идеи или вы можете указать мне в общем направлении, как я могу автоматизировать это? Спасибо! – Sandro 29 October 2010 в 03:17
  • 2
    Я сделал странные вещи, например, скрипты: echo $ DISPLAY & gt; $ HOME / .display.txt; screen -x -d , а затем другой на экране, который выполняет экспорт DISPLAY = $ (cat $ HOME / .display.txt) – Kees Cook 29 October 2010 в 07:43
  • 3
    это именно то, чего я пытался достичь. Но пока не повезло. Попытка добиться того, чтобы экспорт произошел, - это довольно сложное препятствие, так как запуск его в скрипте не является хорошим, мне нужно как-то его истолковать ... и setenv тоже не похоже на волшебное прикосновение. – Sandro 31 October 2010 в 02:45
  • 4
    Чтобы указать тип сценария . / path / to / script , где script - export DISPLAY = $ (cat $ HOME / .display.txt) – Kees Cook 31 October 2010 в 02:15
  • 5
    Это предполагает, что у вас нет автоматического запуска при входе в систему (a la byobu) – A Student at a University 27 September 2011 в 18:46

в репозиториях есть программа, называемая xpra, она похожа на экран gnu для x11. с этим трудно работать:

X Персистентные удаленные приложения

Xpra предоставляет вам функциональность экрана GNU для X-приложений.

Позволяет пользователю просматривать удаленные X-приложения на своей локальной машине и отключать и повторно подключаться с удаленного компьютера, не теряя состояния запущенных приложений.

10
ответ дан 26 May 2018 в 00:45

Byobu автоматически привязывает агенты ssh и gpg. Я мог бы заставить его повторно привязать переменную отображения, если это вам полезно ...

7
ответ дан 26 May 2018 в 00:45
  • 1
    Похоже, что он даже не проходит вдоль отображаемой переменной в новых сеансах, созданных в сеансе ssh с пересылкой X11. Было бы замечательно, если бы это произошло ... Я прекратил использовать его из-за головной боли, связанной с отключением автоматического запуска byobu, чтобы можно было использовать пересылку X11. – A Student at a University 27 September 2011 в 18:42

Вот как я заработал при запуске byobu

Добавьте эту строку в .bash_login перед строкой «_byobu_source ..»:

echo $DISPLAY > $HOME/.display.env

И затем добавьте эту строку на .bash_login :

if [ ! -z ${SSH_CONNECTION+x} ]; then
  export DISPLAY=$(cat $HOME/.display.env) 
fi
2
ответ дан 26 May 2018 в 00:45

Кажется, что проблема заключается в том, что переменная среды XAUTHORITY не сохраняется в сеансе экрана. Я решил это, добавив следующее в мой .bashrc. Я не думаю, что это должно быть необходимо, но я думаю, вы делаете то, что должны:

# ensure X forwarding is setup correctly, even for screen
XAUTH=~/.Xauthority
if [[ ! -e "${XAUTH}" ]]; then
 # create new ~/.Xauthority file
 xauth
fi
if [[ -z "${XAUTHORITY}" ]]; then
 # export env var if not already available.
 export XAUTHORITY="${XAUTH}" 
fi

Я не ожидаю, что это будет лучшим решением или самым кратким, но оно работает. [ ! d1]

1
ответ дан 26 May 2018 в 00:45

FreeNX - замечательное приложение для работы с удаленными дисплеями.

0
ответ дан 26 May 2018 в 00:45

Основываясь на предложении @harre, я нашел это лучшим рабочим решением, по крайней мере, для RHEL через Putty. Я знаю, что есть лучший способ, чем создать файл, в котором хранится var, но это работает затвором, чтобы получить X11 доступ к DISPLAY при загрузке через gnu screen.

Автоматическое решение

Добавьте к .bashrc (или .bash_profile, в зависимости от вашего варианта использования)

#.bashrc
if [ -f ~/etc/.bash-screen-x11 ]; then
   echo $DISPLAY > $HOME/.display.env
   source ~/etc/.bash-screen-x11
fi

Затем добавьте следующий файл (или ваш выбор пути)

#~/etc/.bash-screen-x11
# sets back display var.
if [ -z $STY ]; then
  export DISPLAY=$(cat $HOME/.display.env)
fi
0
ответ дан 26 May 2018 в 00:45

в репозиториях есть программа, называемая xpra, она похожа на экран gnu для x11. с этим трудно работать:

X Персистентные удаленные приложения

Xpra предоставляет вам функциональность экрана GNU для X-приложений.

Позволяет пользователю просматривать удаленные X-приложения на своей локальной машине и отключать и повторно подключаться с удаленного компьютера, не теряя состояния запущенных приложений.

10
ответ дан 25 July 2018 в 23:00

Основываясь на предложении @harre, я нашел это лучшим рабочим решением, по крайней мере, для RHEL через Putty. Я знаю, что есть лучший способ, чем создать файл, в котором хранится var, но это работает затвором, чтобы получить X11 доступ к DISPLAY при загрузке через gnu screen.

Автоматическое решение

Добавьте к .bashrc (или .bash_profile, в зависимости от вашего варианта использования)

#.bashrc if [ -f ~/etc/.bash-screen-x11 ]; then echo $DISPLAY > $HOME/.display.env source ~/etc/.bash-screen-x11 fi

Затем добавьте следующий файл (или ваш выбор пути)

#~/etc/.bash-screen-x11 # sets back display var. if [ -z $STY ]; then export DISPLAY=$(cat $HOME/.display.env) fi
0
ответ дан 25 July 2018 в 23:00

Byobu автоматически привязывает агенты ssh и gpg. Я мог бы заставить его повторно привязать переменную отображения, если это вам полезно ...

7
ответ дан 25 July 2018 в 23:00
  • 1
    Похоже, что он даже не проходит вдоль отображаемой переменной в новых сеансах, созданных в сеансе ssh с пересылкой X11. Было бы замечательно, если бы это произошло ... Я прекратил использовать его из-за головной боли, связанной с отключением автоматического запуска byobu, чтобы можно было использовать пересылку X11. – A Student at a University 27 September 2011 в 18:42

FreeNX - замечательное приложение для работы с удаленными дисплеями.

0
ответ дан 25 July 2018 в 23:00

Вот как я заработал при запуске byobu

Добавьте эту строку в .bash_login перед строкой «_byobu_source ..»:

echo $DISPLAY > $HOME/.display.env

И затем добавьте эту строку на .bash_login :

if [ ! -z ${SSH_CONNECTION+x} ]; then export DISPLAY=$(cat $HOME/.display.env) fi
2
ответ дан 25 July 2018 в 23:00

Кажется, что проблема заключается в том, что переменная среды XAUTHORITY не сохраняется в сеансе экрана. Я решил это, добавив следующее в мой .bashrc. Я не думаю, что это должно быть необходимо, но я думаю, вы делаете то, что должны:

# ensure X forwarding is setup correctly, even for screen XAUTH=~/.Xauthority if [[ ! -e "${XAUTH}" ]]; then # create new ~/.Xauthority file xauth fi if [[ -z "${XAUTHORITY}" ]]; then # export env var if not already available. export XAUTHORITY="${XAUTH}" fi

Я не ожидаю, что это будет лучшим решением или самым кратким, но оно работает. [ ! d1]

1
ответ дан 25 July 2018 в 23:00

в репозиториях есть программа, называемая xpra, она похожа на экран gnu для x11. с этим трудно работать:

X Персистентные удаленные приложения

Xpra предоставляет вам функциональность экрана GNU для X-приложений.

Позволяет пользователю просматривать удаленные X-приложения на своей локальной машине и отключать и повторно подключаться с удаленного компьютера, не теряя состояния запущенных приложений.

10
ответ дан 31 July 2018 в 10:31

Основываясь на предложении @harre, я нашел это лучшим рабочим решением, по крайней мере, для RHEL через Putty. Я знаю, что есть лучший способ, чем создать файл, в котором хранится var, но это работает затвором, чтобы получить X11 доступ к DISPLAY при загрузке через gnu screen.

Автоматическое решение

Добавьте к .bashrc (или .bash_profile, в зависимости от вашего варианта использования)

#.bashrc if [ -f ~/etc/.bash-screen-x11 ]; then echo $DISPLAY > $HOME/.display.env source ~/etc/.bash-screen-x11 fi

Затем добавьте следующий файл (или ваш выбор пути)

#~/etc/.bash-screen-x11 # sets back display var. if [ -z $STY ]; then export DISPLAY=$(cat $HOME/.display.env) fi
0
ответ дан 31 July 2018 в 10:31

Byobu автоматически привязывает агенты ssh и gpg. Я мог бы заставить его повторно привязать переменную отображения, если это вам полезно ...

7
ответ дан 31 July 2018 в 10:31
  • 1
    Похоже, что он даже не проходит вдоль отображаемой переменной в новых сеансах, созданных в сеансе ssh с пересылкой X11. Было бы замечательно, если бы это произошло ... Я прекратил использовать его из-за головной боли, связанной с отключением автоматического запуска byobu, чтобы можно было использовать пересылку X11. – A Student at a University 27 September 2011 в 18:42

FreeNX - замечательное приложение для работы с удаленными дисплеями.

0
ответ дан 31 July 2018 в 10:31

Вот как я заработал при запуске byobu

Добавьте эту строку в .bash_login перед строкой «_byobu_source ..»:

echo $DISPLAY > $HOME/.display.env

И затем добавьте эту строку на .bash_login :

if [ ! -z ${SSH_CONNECTION+x} ]; then export DISPLAY=$(cat $HOME/.display.env) fi
2
ответ дан 31 July 2018 в 10:31

Кажется, что проблема заключается в том, что переменная среды XAUTHORITY не сохраняется в сеансе экрана. Я решил это, добавив следующее в мой .bashrc. Я не думаю, что это должно быть необходимо, но я думаю, вы делаете то, что должны:

# ensure X forwarding is setup correctly, even for screen XAUTH=~/.Xauthority if [[ ! -e "${XAUTH}" ]]; then # create new ~/.Xauthority file xauth fi if [[ -z "${XAUTHORITY}" ]]; then # export env var if not already available. export XAUTHORITY="${XAUTH}" fi

Я не ожидаю, что это будет лучшим решением или самым кратким, но оно работает. [ ! d1]

1
ответ дан 31 July 2018 в 10:31

в репозиториях есть программа, называемая xpra, она похожа на экран gnu для x11. с этим трудно работать:

X Персистентные удаленные приложения

Xpra предоставляет вам функциональность экрана GNU для X-приложений.

Позволяет пользователю просматривать удаленные X-приложения на своей локальной машине и отключать и повторно подключаться с удаленного компьютера, не теряя состояния запущенных приложений.

10
ответ дан 2 August 2018 в 04:22

Основываясь на предложении @harre, я нашел это лучшим рабочим решением, по крайней мере, для RHEL через Putty. Я знаю, что есть лучший способ, чем создать файл, в котором хранится var, но это работает затвором, чтобы получить X11 доступ к DISPLAY при загрузке через gnu screen.

Автоматическое решение

Добавьте к .bashrc (или .bash_profile, в зависимости от вашего варианта использования)

#.bashrc if [ -f ~/etc/.bash-screen-x11 ]; then echo $DISPLAY > $HOME/.display.env source ~/etc/.bash-screen-x11 fi

Затем добавьте следующий файл (или ваш выбор пути)

#~/etc/.bash-screen-x11 # sets back display var. if [ -z $STY ]; then export DISPLAY=$(cat $HOME/.display.env) fi
0
ответ дан 2 August 2018 в 04:22

Byobu автоматически привязывает агенты ssh и gpg. Я мог бы заставить его повторно привязать переменную отображения, если это вам полезно ...

7
ответ дан 2 August 2018 в 04:22
  • 1
    Похоже, что он даже не проходит вдоль отображаемой переменной в новых сеансах, созданных в сеансе ssh с пересылкой X11. Было бы замечательно, если бы это произошло ... Я прекратил использовать его из-за головной боли, связанной с отключением автоматического запуска byobu, чтобы можно было использовать пересылку X11. – A Student at a University 27 September 2011 в 18:42

Другие вопросы по тегам:

Похожие вопросы: