我有一台运行 Ubuntu 10.04 的计算机,并且正在运行维诺,默认 VNC 服务器。
我有第二个 Windows 机器,它正在运行 VNC 客户端,但没有任何 X11 功能。我从 Windows 主机通过 ssh 进入 Ubuntu 主机,但我忘记在 Ubuntu 主机上启用 VNC 访问。
在 Ubuntu 主机上,有没有办法从 Ubuntu 命令行启用 VNC 连接?
更新:
正如@koanhead 在下面所说,没有手册页vino
(例如man -k vino
并且info vino
不返回任何内容),并且vino --help
没有显示任何帮助)。
答案1
我还想通过命令行启用 vino,而无需进入 vino-preferences。
当我启动时/usr/lib/vino/vino-server
,它说我没有启用桌面共享服务。
Unitygconftool
不再可用。我们必须通过 来完成gsettings
。
因此,首先启用 vino:
gsettings set org.gnome.Vino prompt-enabled true
然后启动 vino:
/usr/lib/vino/vino-server
现在您可以远程访问您的计算机。
如果您想查看 Vino 的所有可用配置:
gsettings list-keys org.gnome.Vino
答案2
简短回答:
gconftool-2 --set --type=bool /desktop/gnome/remote_access/enabled true
正如接受的答案所提到的,如果 vino 没有在远程机器上启动,请使用
/usr/lib/vino/vino-server
详细答案及更多信息:
如上所述,可以从 vino-preferences 中看到当前内置远程访问服务器 (vino) 的部分设置。可以使用以下命令查看 gconf 标志的完整列表gconf-editor
,该列表列在 /desktop/gnome/remote_access 下。您还可以使用此命令(或其变体)查看其他 remote_access 键:
gconftool-2 -a /desktop/gnome/remote_access
(无论出于什么原因,-R
也都会起作用。)
您还可以通过 arg 获取架构密钥文档--long-docs
。
例如,对于 alternative_port 键:
gconftool-2 --long-docs /desktop/gnome/remote_access/alternative_port
The port which the server will listen to if the
'use_alternative_port' key is set to true.
Valid values are in the range from 5000 to 50000.
例如,以下是如何通过命令行更改默认端口:
gconftool-2 --set --type=bool /desktop/gnome/remote_access/use_alternative_port true
gconftool-2 --set --type=int /desktop/gnome/remote_access/alternative_port 5999
gconftool 将为您提供给定目录下的密钥。以下是“remote_access”部分:
gconftool-2 -a /desktop/gnome/remote_access
use_upnp = false
vnc_password =
authentication_methods = [vnc]
network_interface =
require_encryption = false
disable_background = false
enabled = true
use_alternative_port = false
mailto =
disable_xdamage = false
lock_screen_on_disconnect = false
icon_visibility = always
view_only = false
prompt_enabled = true
alternative_port = 5900
以下是如何列出 /desk/gnome/remote/access 下的所有架构文档(通过命令行 /bin/bash):
for key in ` gconftool-2 -a /desktop/gnome/remote_access | awk '{print $1}' ` ; do echo $key ; gconftool-2 --long-docs /desktop/gnome/remote_access/$key ; done
答案3
正在运行
/usr/lib/vino/vino-server
应该可以完成这个工作。
一旦您可以访问您的服务器,我建议您将其添加到自动启动应用程序中,以便始终启动它。
您可能会喜欢使用以下命令更改某些设置:
vino-preferences
在远程机器上运行 vino-preference 时要非常小心,如果取消选中“允许其他用户控制您的桌面”,则您将无法重新选中它。
或编辑:
~/.gconf/desktop/gnome/remote_access/%gconf.xml
这是一个示例文件:
<?xml version="1.0"?>
<gconf>
<entry name="vnc_password" mtime="1289267042" type="string">
<stringvalue>cXdlcnR5</stringvalue>
</entry>
<entry name="view_only" mtime="1289262982" type="bool" value="false"/>
<entry name="prompt_enabled" mtime="1254965869" type="bool" value="false"/>
<entry name="authentication_methods" mtime="1289267034" type="list" ltype="string">
<li type="string">
<stringvalue>vnc</stringvalue>
</li>
</entry>
<entry name="enabled" mtime="1289263574" type="bool" value="true"/>
</gconf>
请注意,密码是 base64 编码的。对于此文件,密码是 qwerty。我在一些论坛上看到有人成功更改了密码,但我遇到了问题。
这里有一个在线 base64 编码器:
答案4
为什么,出于对这个艰难世界一切美好的事物的热爱,没有针对 vino 或 vino-server 或dpkg -L vino
输出中列出的任何命令的 man 条目?就此而言,为什么应该任何包裹曾经在 Ubuntu 系统上安装过,至少省略了相关命令的手册页?好吧,抱怨结束了。到目前为止,我找到的最佳答案是:
http://ubuntuforums.org/archive/index.php/t-266981.html
我真的希望这能有所帮助,也希望 Ubuntu 社区将来能记录所有这些孤立的命令。“易于使用”并不意味着放弃命令行,当然也不意味着放弃易于访问的文档。</grumble>