Як запустити додаток GUI через SSH?


10

Я звик працювати над Unix / Linux і нещодавно перейшов на Mac. Раніше це було можливо:

derick@linux1:~$ ssh -X linux2
derick@linux2's password:
derick@linux2:~$ xclock

Я встановив X11 з maxports, і я можу зробити те ж саме від свого Mac. Якщо я спробую зробити зворотний шлях, за допомогою ssh-ing у свій mac з Linux, я можу запускати лише певні програми:

  • /usr/X11/bin/xclock працює чудово
  • Щось подібне /Applications/Preview.app/Contents/MacOS/Previewвідкриває GUI на mac.

    Здається, що це не можливо на mac? Якщо ні, то як запустити програму віддалено (на mac) із локальним (linux) дисплеєм? Чи потрібен мені сторонній додаток?

Оновлення: Якщо точніше: я підтримую синергію та використовую Mac для кодування. На моєму ПК з Linux я хотів би бачити дисплей іншої програми (GUI) з Mac. Таким чином, програми "спільний доступ до екрана", такі як VNC, не працюватимуть.

Наприклад, я працюю над своїм mac в додатку A (скажімо Word) і хочу побачити вихід Excel (працює на mac) на моєму комп'ютері з Linux поруч зі мною. (Моделювання подвійного екрану через мережу). Він добре працював на Linux, сподіваючись на рішення для mac.


Якщо немає рішення через SSH, я також був би зацікавлений у цьому. Проблема полягає в тому, що я хочу запустити показ локальної програми на ПК через мережу поруч зі мною, як я робив це з Linux.
Derick Schoonbee

Чи можу я запитати, чому ви хочете уникати VNC? Проблеми з мережевим відставанням?
Ніколас Сміт

Зараз я працюю на Mac, тому екран "зайнятий". Я хочу запустити інший додаток на mac з виведенням, що відображається на ПК поруч зі мною. Як я робив з Linux. Сподіваючись побачити рішення на mac.
Derick Schoonbee

До речі, вам не доведеться встановлювати X11 по макпортах ... X11 поставляється з ОС X.
Yuji

А-а-а, значить, ваше заперечення проти VNC не зводиться до будь-яких питань VNC, а через обмеження екрану?
Ніколас Сміт

Відповіді:


9

Отже, якщо я не помиляюся, проблема, яку ви маєте на даний момент з VNC, полягає в тому, що він ділиться поточним екраном користувача Mac з відкритими програмами, які ви не хочете бачити на своєму іншому комп’ютері? Lion представляє можливість екранізувати користувачів, які ввійшли у фоновий режим . Цитування тексту за посиланням:

  • Увімкніть загальний доступ до екрана та встановіть пароль VNC.
  • Зверніть увагу на IP-адресу комп’ютера.
  • Запустіть клієнт VNC на іншій машині.
  • Підключіться до IP-адреси комп'ютера разом із паролем, який ви встановили раніше.
  • Ви побачите екран входу в Mac OS X, який з’являється під час першого запуску комп'ютера. Якщо ви ввійдете в даний момент активний користувач, ви будете керувати екраном комп'ютера. Якщо ви вибрали іншого користувача, ви увійдете на робочий стіл цього користувача у фоновому режимі. Це не вплине на побачене на екрані фізичного комп'ютера.

Ймовірно, вам просто потрібно буде створити іншого користувача для спільного доступу.


Чудово, це, здається, те, що я хочу! Тепер у мене є ще одна мотивація перейти на Лева . Я скоро протестую і, мабуть, прийму це як відповідь. Дякую!
Derick Schoonbee

Дарн, я щойно оновив і отримую екран входу через VNC. Але не хочеться, щоб моя клавіатура була погладженою. Таким чином я не можу увійти :(
Derick Schoonbee

Це дуже дивно - який клієнт VNC ви використовуєте?
cftarnas

17

Нативна програма Mac OS X використовує для візуалізації не протокол X, а специфічний протокол для Mac. Таким чином, ви не можете використовувати переадресацію протоколу ssh X, як це було можливо на робочій станції Linux.

Як ви виявили, зворотне не відповідає дійсності, ви можете встановити X-сервер на Mac OS X і мати програму Linux на вашому Mac.

Те, що ви можете зробити, це використовувати або власні засоби спільного використання настільних ПК Mac, або встановити сервер VNC. Потім з вашого вікна Linux ви підключаєтесь до свого Mac через VNC замість ssh.


Дякую за інформацію Що я хочу знати, чи є якийсь подібний функціонал, який я можу використовувати на Mac. Наприклад, чи можу я користуватися засобом спільного використання робочого столу від linux1 під час роботи / входу на комп'ютері?
Derick Schoonbee

Так, ви можете запустити сервер VNC в Linux і з'єднати його з Mac з клієнтом VNC (є кілька безкоштовних клієнтів VNC на Mac, і безкоштовний сервер VNC в Linux).
Sylvain Defresne

Хм .. VNC не скорочує це: я працюю над своїм mac в додатку A (скажімо Word) і хочу побачити вихід Excel (працює на Mac) на Linux ПК поруч зі мною.
Derick Schoonbee

Як пояснив Sylvain, на Mac це неможливо. Базова архітектура ОС не дозволяє використовувати цей тип.
Самуель Мікель Боулз

3
Дивіться мою відповідь, але з Lion це можливо, якщо ви використовуєте іншого користувача на Mac для сеансу VNC.
cftarnas

7

Як згадував Сільвіан, ви не можете запускати свої програми Mac і відображати їх у Linux. Найкраще, що ви можете зробити, це VNC. Ви побачите весь екран, а не лише одну програму.

Увімкніть пароль VNC у налаштуваннях спільного доступу до екрана:

Параметри обміну екраном

Потім ви можете використовувати будь-яку клієнтську програму VNC в Linux.


0

Вам трохи не пощастило, але ScreenRecycler збирається наблизити вас якомога ближче. Переходить через VNC, але переконує OS X, що підключення VNC насправді є окремим монітором, він повинен дозволяти вам наблизитися до того, що вам потрібно. Я використав це, це досить добре, є безкоштовна пробна версія, то це досить дешево. Я перестав його використовувати виключно через те, що я знаходився в шаленій мережі і було занадто багато затримок, якщо я безпосередньо не з'єднав їх.


0

Трохи творчі, але ви також можете запустити додаток java за допомогою VNC, який або має http-сервер, або в моєму випадку використовує цикл для пошуку файлу та створення цього файлу за допомогою SSH.

Ось мій додаток Java.

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