是否可以从仅命令行安装的 Linux 启动到 Microsoft Windows 的 xfreerdp 会话?
我在完整的 Linux 安装中使用的命令是这样的:
$ sudo xfreerdp /v:farm.company.com /d:company.com \
/u:oshiro /p:oshiro_password /g:rds.company.com
这个命令工作正常。但是,当我从 Linux 的命令行安装运行相同的命令时,我收到以下错误消息:
Please check that the $DISPLAY environment variable is properly set.
freerdp_set_last_error 0x20001
libfreerdp/core/freerdp.c:97: freerdp_pre_connect failed
我的基于 GUI 的 Linux 安装和仅命令行安装的 Linux 都是 Ubuntu 12.04。两个安装都有 xfreerdp 版本 1.2.0-beta1
答案1
我假设 xfreerdp 是一个 GUI 程序(“X 客户端”)。所以在Linux上,你需要一个“X服务器”来运行它。
这就是基于 GUI 的 Linux 机器上所拥有的。
您无法在纯命令行 Linux 本身上运行它。
根据您想要执行的操作,在仅限命令行的 Linux 上运行它并通过网络的其他位置显示 GUI 可能是有意义的。这就是 DISPLAY 的用途。
你可以这样做:
export DISPLAY=guilinuxbox:0.0
xfreerdp ...
(但您需要设置权限才能这样做)
为了说明运行普通 X 服务器时会发生什么(如现在的评论中所讨论的):
这就是普通 X 服务器的样子 - 您将看到具有默认模式的根窗口。还有一个“X”形状的指针:
答案2
su root
xdpyinfo
- 找到“显示名称”后面的字符串,例如显示名称:127.0.0.1:1.0(即“1.0”)
export DISPLAY=:1.0