Чому б ви використовували VNC (або для цього питання NX), а не просто використовувати ssh -X (-Y)
. Я читав, що VNC використовує меншу пропускну здатність, але чи є інші відмінності / переваги у відповідного інструменту?
Чому б ви використовували VNC (або для цього питання NX), а не просто використовувати ssh -X (-Y)
. Я читав, що VNC використовує меншу пропускну здатність, але чи є інші відмінності / переваги у відповідного інструменту?
Відповіді:
Крім проблем із пропускною здатністю та затримкою (які можуть дещо відрізнятися), великі відмінності - це функціонал, який він надає.
VNC експортує цілий сеанс, робочий стіл і все, тоді як ssh запустить одну програму і покаже свої вікна на вашій робочій станції.
Сервер VNC експортує сеанс, який зберігається навіть під час відключення екрана, і ви зможете пізніше підключитися до нього, відкривши всі вікна тощо. Це неможливо з тунелем ssh X, оскільки коли ваш X-сервер гине, вікна відходять .
ssh user@host
; і після того, як увійшли в систему : screen bash
; Для від'єднання, з ctrl+a
подальшим ctrl+d
. Ви можете знову вийти та увійти в систему, потім: screen -ls
і screen -r
. Вихід з bash виходить з екранного сеансу. Більше (набагато більше) дивіться різні підручники на екрані GNU
ssh -X
перенаправляє команди X11 на ваш локальний X-сервер. Так це як якщо б ви запускали програму локально, коли вона справді працює на комп’ютері на іншому кінці. Це дуже повільно, оскільки він використовує велику пропускну здатність. (Це те, про що люди говорять, коли кажуть, що X11 - "мережа прозора".)
Натомість VNC та інші програми для віддалених настільних комп'ютерів дозволяють іншому комп'ютеру обробляти всі графічні малюнки, і так далі, і, по суті, знімає скріншот і передає його назад на ваш комп'ютер. Це може здатися набагато швидшим, адже для відображення всього потрібно набагато менше інформації. Однак він також надсилає весь робочий стіл, а не одну програму.
Я не рекомендую використовувати ssh -X
через Інтернет з однієї простої причини: він буде використовувати всі свою доступну пропускну здатність. На мою думку, це досить корисно через локальну мережу, тому якщо вам просто потрібна одна програма і не хочете запускати цілий робочий стіл, це хороший шлях. В іншому випадку просто використовуйте VNC.
VNC поділиться цілим робочим столом з віддаленої системи. Для цього потрібен повноцінний робочий стіл на віддаленій системі.
ssh -X дозволяє запускати один додаток X з віддаленого сервера. У віддаленій системі не потрібно запускати повний робочий стіл, і вам часто потрібна лише кілька пакунків, щоб встановити їх у віддаленій системі.
ssh -X
може бути корисною при встановленні складних програмних пакетів через віддалене з'єднання. Деякі програмні продукти можуть використовувати інсталятор графічного інтерфейсу (Oracle Database тощо). Я не хочу встановлювати повноцінний робочий стіл Gnome на віддалений сервер. Отже, ви встановлюєте один або два пакети X11 (Xauth?) На віддалений сервер і дозволяєте DBA дистанційно запускати інсталятор Oracle, використовуючи щось просте, наприклад, 'ssh -X / media / cdrom / oracle-installer'.