我有两台机器:
1 - $客户:
双启动的
- Linux Mint 18.2 肉桂 64 位
- Windows 10 专业版 64 位
在笔记本电脑上。
2 - $服务器:
- GNU/Linux Debian 9 肉桂 64 位
我想通过远程桌面从 $Clients 连接到 $Server 以查看主桌面。
理由:我选择 RDP 协议,因为它集成在 Windows 和 Linux 中 ( rdesktop
)。
但是,嘿:重要的是,它可能是 VNC,我只需要用到服务器桌面的本地连接替换缓慢的 TeamViewer。
注意:服务器通常是无头运行的,但现在我需要在桌面环境中做一些耗时的事情。
我个人在使用 Windows 时同时使用过 VNC 和 RDP,因此我对它们有使用经验,但是到目前为止,我需要做什么才能使其在 Linux 上工作对我来说还是个谜。我用谷歌搜索了很多指南,但它们或多或少都有所不同。这就是你介入的地方,我希望得到一个连贯的答案来指导我的各个方面。
答案1
从 linux-mint SSH 到 debian
更新
使用常规方式通过 VNC 连接到具有 cinnamon 桌面的远程主机时存在一些问题。通过x11vnc
在服务器上安装并使用vncviewer
连接即可解决该问题。
安装和配置x11vnc
:
apt install x11vnc
配置远程访问密码:
x11vnc -storepasswd
默认情况下,密码将存储在~/.vnc/passwd
要使用密码强制连接,请运行:
x11vnc -rfbauth ~/.vnc/passwd
要无密码连接,请运行x11vnc
.
示例输出:
The VNC desktop is: cinnamon:1
PORT=5901
要连接,请使用以下命令:
vncviewer ip.address:1
在 debian 上
安装tightvncserver
:
apt-get install tightvncserver
然后运行:
vncserver
设置您的密码。
调整你的参数:
vncserver :1 -geometry 1024x600 -depth 16 -pixelformat rgb565
在 Linux 薄荷上:
安装xtightvncviewer
:
apt install xtightvncviewer
连接:
vncviewer IP-SERVER:5901
退出运行:
vncserver -kill :1
答案2
rdesktop
是远程桌面协议 (RDP) 的客户端,因此它用于查看远程 Microsoft 桌面,因此它不适合查看您的 $server 桌面。
X11旨在将显示从服务器共享到各种客户端(本地或远程)。出于安全原因,X11 转发已被禁用或应该被禁用。
因此,从 Linux 客户端,您可以使用 ssh-X
或-Y
命令行参数,然后运行窗口应用程序,例如:
ssh -X -Y $SERVER
echo $DISPLAY
应该echo $DISPLAY
返回类似的内容myserver:10.0
,这样您就可以在服务器上运行您想要的任何程序,它将显示在您的客户端上。
如果您看到类似以下的错误:
X11 forwarding request failed on channel 0
然后您需要编辑服务器上的 sshd_config 文件,并允许X11Forwarding
然后重新启动 sshd。
但是,这在 Windows 上无法开箱即用,除非您安装西格文这就是人们经常使用 VNC 的原因,因为他们是 Windows 本地 VNC 查看器。
我一直都找到了Arch Linux 维基指导您完成设置的好地方虚拟网络控制器- 尽管本指南使用 TigerVNC(这可作为Debian 软件包)您可以使用x11vnc或tightvnc代替tigervnc。
它看起来如此令人困惑的原因是 Unix 被设计为多用户系统 - 因此总是假设每个用户都有自己的桌面,因此机器的单个桌面的想法没有意义 - 你可以运行系统上的每个用户都有不同的 X 服务器和显示管理器。
哈