9

Я хотел бы зайти в мой Windows-бокс под управлением Cygwin sshd и запустить приложение Windows GUI в этом Windows-боксе. Я не хочу пересылку X

Например, из терминала Ubuntu-сервера я запускаю ssh в Windows и запускаю notepad.exe. Notepad.exe будет отображаться в Windows, а не в Ubuntu-сервере без X Windows.

3 ответа3

11

Правильный метод, кажется, имеет некоторые проблемы:

http://cygwin.1069669.n5.nabble.com/Windows-GUI-programs-eg-notepad-start-but-are-invisible-after-ssh-login-td56256.html

http://cygwin.com/ml/cygwin/2007-10/msg00334.html

Переустановите 'sshd', указав флаг '-i' в 'cygrunsrv', или отредактируйте текущую службу в разделе "Администрирование" -> "Службы" и установите флажок "Разрешить службе взаимодействовать с рабочим столом" на вкладке "Вход в систему" службы. "Свойства".

Поэтому я пытаюсь взломать. Я создаю cygwin_screen.cmd и помещаю его в папку автозагрузки Windows.

@echo off 
C:
chdir C:\cygwin\bin
bash --login -i "/home/username/bin/start_screen.sh"

start_screen.sh прост, и он позаботится о том, чтобы у нас был экран для прикрепления.

#!/bin/bash
screen -dmS "my_screen"

Теперь я могу удаленно войти в Windows из клиента ssh и подключиться к этому экрану, когда я хочу запустить приложение Windows GUI.

$screen -d -r my_screen

$notepad.exe
$cygstart my_doc.doc
0

Мое решение аналогично Win Myo Htet, за исключением того, что оно использует tmux, который обладает большей гибкостью.

  1. Запустите tmux на локальном терминале Cygwin.

    cygwin-host$ tmux

  2. Используйте ssh для удаленного запуска команды, размещенной в сеансе tmux.

    other-host$ ssh cygwin-host tmux new-window notepad

0

Используйте PSTools и выполните команду, как показано ниже, из клиента ssl. ./PsExec.exe -i -d -s \\\\127.0.0.1 notepad

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .