我需要熟悉一些无法在我家的任何机器(windows/mac)上运行的软件。因此我决定启动一个 EC2 实例并在那里尝试一下。
然而,事实证明,让 EC2 支持远程桌面会话比它应有的难度要大。我尝试过通过网络搜索找到的技术,但都已过时且不再适用。
到目前为止,我已经尝试了所有这些建议的解决方案 - 但都没有奏效:
[[email protected] ~]$ yum groups list Loaded plugins: priorities, update-motd, upgrade-helper Installed groups: Editors Legacy UNIX compatibility Mail Server Network Servers Perl Support System Tools Available Groups: Console internet tools DNS Name Server Development Libraries Development tools FTP Server Java Development MySQL Database MySQL Database client NFS file server Networking Tools PHP Support Performance Tools PostgreSQL Database client (version 8) PostgreSQL Database server (version 8) Scientific support TeX support Technical Writing Web Server Web Servlet Engine Done
没有任何东西表明它会给我一个 X 会话。
尝试了一些其他的东西比如这个:他所建议的社区已经不存在了。
尝试过这也是:freenx 已不复存在,无机器服务器现在是 4.3 并且似乎无法在免费版本中运行。
x2go 也失败了。
也尝试过这个:https://www.nomachine.com/AR10K00710。Xvfb 不可用。
最近有人解决了该设置问题并让它正常工作了吗?
PS 有几个人问为什么不使用 VirtualBox VM - 忘了说我确实先尝试过了,但不知何故,它们都不起作用。我从最新版本开始,然后倒着尝试每个版本 - 无法启动或运行它们。(我的机器是 Cintiq Companion,搭载 Windows 8)。
答案1
按照 Matt 在评论中的建议
按照此链接中的说明设置 SSH 隧道和本地私钥: http://www.serverwatch.com/server-tutorials/setting-up-vnc-on-ubuntu-in-the-amazon-ec2-page-2.html
在 ec2 上运行这些安装程序(不确定哪些是多余的 - 只是它最终起作用了)
sudo apt-get update
sudo apt-get install ubuntu-desktop
sudo apt-get install vnc4server
sudo apt-get install x11vnc
x11vnc -storepasswd
sudo apt-get install gnome-core gnome-session-fallback
vncserver
vncserver -kill :1 #(to get the default xstartup file)
编辑 $HOME/.vnc/xstartup 使其看起来像这样:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
#exec /etc/X11/xinit/xinitrc
gnome-session --session=gnome-classic &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
#x-terminal-emulator -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” &
#x-window-manager &
必须为 ubuntu 用户设置密码(gnome 桌面似乎需要这个?)
sudo passwd ubuntu
必须重启实例
然后跑了
sudo x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :0 -auth /var/run/lightdm/root/:0 -usepw
然后我可以通过 TightVNC 连接并看到 Ubuntu 桌面
不确定我还会遇到什么其他麻烦,但至少我已经走到这一步了
谢谢你马特
答案2
我注意到你说你尝试过 X2Go 但失败了;我现在在两个 Ubuntu 14.04 实例上成功使用它,一个是 AWS 上的 EC2 micro,另一个是小型 DigitalOcean droplet(它也适用于许多其他发行版,但你必须根据这些说明)。虽然 VNC 肯定可以工作,但 X2go 速度更快,响应速度更快,并且默认支持 SSH 代理。
我也经历过同样的挫败感,找到过时或不相关的文章和关于设置云桌面的建议,但一旦我找到了 X2Go 解决方案,它实际上可以在大约 10 分钟内启动并运行,非常简单。
以下是我设置所有事项的步骤:
sudo
SSH 密钥 - 由于它是远程服务器,您应该已经能够正常通过 SSH 登录,但如果不能,则需要具有权限的用户通过 RSA 密钥进行 SSH 登录系统更新——不是必需的,但取决于您上次更新远程机器的时间,现在这样做可能会避免不兼容或麻烦:
sudo apt-get update sudo apt-get dist-upgrade sudo apt-get autoremove
安装 X2Go 服务器——在远程机器上创建一个新文件并将以下内容粘贴到其中:
#!/usr/bin/env bash # note: this script may take some time to run, particularly # the steps involving the install of xubuntu as it has many # packages included as dependencies printf "\ninstalling required packages...\n" sudo apt-get install python-software-properties sudo apt-get install software-properties-common printf "\ninstalling xubuntu...\n" sudo apt-get install xubuntu-desktop printf "\nadding x2go ppa repository...\n" sudo add-apt-repository ppa:x2go/stable sudo apt-get update printf "\ninstalling x2go server...\n" sudo apt-get install x2goserver x2goserver-xsession printf "\nxubuntu and x2go server have been installed.\n" echo "don't forget to reboot your instance as well!"
执行文件以安装所有内容(
. ./<filename>
);您可能需要先修改文件权限以使其可执行——通常,我花 5-10 分钟的时间,但具体时间取决于个人情况安装 X2Go 客户端——最后一步是安装您想要从中访问远程计算机的操作系统的客户端;可以找到适用于 Windows、Mac 和各种 Linux 的安装说明这里
现在您可以使用客户端通过配置的主机、用户、密钥、端口连接到机器并访问您的 GUI 云桌面;请确保XFCE
在设置连接时选择作为会话类型。
答案3
如果您在 Amazon 实例上使用 NoMachine,则应遵循以下说明: https://www.nomachine.com/AR10K00710(无头服务器上的 NoMachine)
答案4
不可以。Amazon Linux 没有 X-server 软件包的 Repo。此外,它旨在用于服务器端角色,因此所有与 X 相关的东西都不可用。
感谢 slayedbylucifer