Как мне получить доступ к моему удаленному серверу Ubuntu через X-windows с моего Mac?
У меня есть сервер Ubuntu (12.04 LTS), работающий удаленно на облачном хостинге. Я установил ubuntu-desktop с помощью apt-get:
$ sudo apt-get install ubuntu-desktop
Похоже, что установили без проблем.
Я подтвердил, что /etc/ssh/ssh_config на сервере содержатся строки
ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes
и это /etc/ssh/sshd_config на сервере содержится строка:
X11Forwarding yes
Затем я перезагрузил сервер. Это вернулось без проблем.
Теперь, запуская X11.app на моем Mac, я представляю Xterm.
Я подключаюсь к своему серверу с этого терминала, используя:
$ ssh -X <myhost>
и я подключаюсь к серверу, без проблем.
На данный момент я не знаю, что делать. я пытался
$ sudo startx
но я получаю ошибку "не найдены экраны".
У меня нет экранов, потому что это безголовый облачный сервер, но я просто хочу получить доступ к нему с моего Mac через X.
Что теперь?
3 ответа
Есть несколько методов для достижения этой цели, в зависимости от того, что вам действительно нужно сделать.
Чтобы перенаправить удаленные приложения в локальную среду X, вам нужно установить X11 на вашем Mac (вы можете найти его на сайте поддержки Apple): http://support.apple.com/kb/DL1605?viewlocale=en_US&locale=en_US
Из приложения X11 откройте терминал, а затем получите доступ к удаленному хосту с помощью:
ssh -XC user@host
Затем, войдя в систему, просто запустите команду для нужного приложения, например: firefox, nautilus, thunderbird, что угодно...
Вы даже можете запустить только главное меню системы (Ubuntu, Xubuntu, Mint и т. Д.) И взаимодействовать с удаленной системой оттуда, без необходимости полного графического интерфейса. В удаленной среде Linux Mint я просто запускаю:
mintmenu&
Если вам это действительно нужно, вы даже можете запустить удаленную графическую среду локально на своем Mac X11, просто запустив:
ubuntu-session
xubuntu-session
etc... (depends of your remote environment)
Лучше, чем любой VNC, даже лучше, чем соединение X11VNC! Безопасное и сжатое соединение FTW.
На вашем Mac вам необходимо установить XQuartz, если вы еще этого не сделали (см. http://xquartz.macosforge.org/). После установки перезагрузите компьютер и откройте окно терминала XQuartz и SSH для своей системы Ubuntu Server:
ssh -X yourubuntuserver
Если работает lightdm (см. /questions/597713/kak-otklyuchit-avtomaticheskij-zapusk-gdm/597739#597739 чтобы узнать, как включать и выключать его по мере необходимости), выполните эту команду, чтобы подключить Ubuntu Unity к вашему Mac через X11:
gnome-session --session=ubuntu-2d
Это работает для меня с Ubuntu Server 12.04 LTS и Mac OS X Mountain Lion 10.8.2, но я иногда получаю ошибки Composiz. Тем не менее, я всегда получаю ошибки Composiz при локальном запуске Ubuntu Desktop. (-:
Вы можете выйти из Unity, чтобы закрыть окна Ubuntu Desktop.
У вас правильная идея, но неправильный синтаксис:)
startx не начнется сначала ssh так как нужен экран (он же X сервер для общения)
попробуйте эту команду для запуска графического интерфейса рабочего стола
sudo service gdm start
это запустит среду рабочего стола.
Отключить.
и попробовать
ssh -X nautilus username@host
примечание не проверялось выше строки
Если все работает нормально, вы должны увидеть всплывающее окно файлового менеджера Ubuntu. Если нет, возможно, вам не хватает некоторых библиотек или синтаксис команды неправильный (в верхней части моей головы не пробовал).