5

Я подумываю о создании виртуальной машины Debian в Google Cloud. Вот инструкции для новичка:

https://cloud.google.com/compute/docs/quickstart-linux

В этой статье в разделе "Подключение к вашему экземпляру" говорится, что я могу подключиться к экземпляру с помощью SSH. Этот интерфейс терминала только для текста? Или есть возможность подключиться к экземпляру с помощью какого-либо графического интерфейса?

Благодарю.

[редактировать]

Я должен сказать, что мне нужно иметь возможность видеть и манипулировать рабочим столом, как с RDP от Microsoft.

1 ответ1

6

Вы можете определенно иметь графический интерфейс на вашей виртуальной машине. Это просто требует минимальной настройки.

Проще всего использовать компьютер Linux/Unix (включая Mac) для доступа к вашей виртуальной машине, потому что тогда все, что вам нужно сделать, это следующее:

  1. На виртуальной машине отредактируйте файл /etc/ssh/sshd_config и убедитесь, что у вас есть следующие две строки:

    X11Forwarding yes
    X11DisplayOffset 10
    

    и перезапустите демон ssh,

    sudo systemctl force-reload ssh
    

    (На Mac это будет:

    sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
    sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
    

    в то время как на старом Linux или Unix это будет:

    sudo /etc/init.d/ssh restart
    

    ).

  2. На вашем компьютере Linux /Unix подключитесь с помощью команды:

    ssh -Y me@My.Google.Cloud.VM
    

    затем на виртуальной машине убедитесь, что графический дисплей выбран правильно,

    export DISPLAY=localhost:10.0
    

    и теперь из сеанса ssh вы можете запускать графические приложения, которые будут отображаться на вашем мониторе Linux. Попробуйте, например,

    xeyes
    

В принципе, есть способ запустить всю виртуальную среду рабочего стола (KDE, Gnome, Xfce, Enlightenment, вы называете ее) на виртуальной машине и отобразить ее на вашем компьютере с Linux, но для этого требуется очень большая пропускная способность, поэтому я не скажу вам, как это сделать, если вы явно не спросите.

Причина, по которой вам изначально не предложили это решение, состоит в том, что большинство людей, кажется, забывают, что Xorg, графический интерфейс Linux, является сервером, то есть он выполняет функцию отображения на мониторе, который он запускает, в графических приложениях, которые отправляют ему данные Будь они с локального или удаленного компьютера. Так что ваша сессия Xorg вполне способна сделать это.

Если вместо этого вы подключаетесь с ПК с Windows, vnc сделает это за вас, но для этого необходимо, чтобы у вас был сеанс Xorg на ВМ, к которому vnc подключается и реплицирует его локально, хотя и с гораздо худшим разрешением. Если это то, что вы хотите сделать, вы можете прочитать здесь.

РЕДАКТИРОВАТЬ:

ответ на комментарий Видьи ниже. Далее предполагается, что у вас уже есть графический рабочий стол, установленный на вашей виртуальной машине, KDE, Gnome или что-то еще.

Мне нравится, когда это соединение отображается в отдельном окне, которое я могу изменять, перемещать, складывать или увеличивать по мере необходимости. Поэтому я использую Xephyr: на вашем домашнем компьютере под управлением любого Linux сначала вам нужно будет установить его,

sudo apt-get install xserver-xephyr

(эта команда подходит для Debian и производных, если вы используете другой дистрибутив, вам нужно будет использовать подходящий менеджер пакетов), тогда вы начинаете его с

Xephyr -ac -br :1 -resizeable &

(обратите внимание на заглавную букву X здесь, а не в пакете установки), где важны следующие параметры :1 (так будет называться ваш новый дисплей) и изменяемый размер, что позволяет изменять окно в соответствии с вашими пожеланиями.

Теперь вы можете начать удаленный сеанс на вашем сервере с:

DISPLAY=:1.0 ssh -Y me@My.Remote.VM

и, как только вы окажетесь внутри виртуальной машины, команда, подходящая для вашего диспетчера отображения, например startkde (если у вас есть KDE) или startx и т. д., запустит ваш графический сеанс в окне Xephyr. Если вы хотите, прежде чем начать графическую сессию, вы можете просто запустить простые приложения, такие как xeyes, которые очень быстро загружаются и должны открываться в окне Xephyr. Когда вы закончите, просто убейте окно Xephyr , вот и все.

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