从命令行启用远程 VNC?

从命令行启用远程 VNC?

我有一台运行 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 编码器:

http://www.motobit.com/util/base64-decoder-encoder.asp

答案4

为什么,出于对这个艰难世界一切美好的事物的热爱,没有针对 vino 或 vino-server 或dpkg -L vino输出中列出的任何命令的 man 条目?就此而言,为什么应该任何包裹曾经在 Ubuntu 系统上安装过,至少省略了相关命令的手册页?好吧,抱怨结束了。到目前为止,我找到的最佳答案是: http://ubuntuforums.org/archive/index.php/t-266981.html

我真的希望这能有所帮助,也希望 Ubuntu 社区将来能记录所有这些孤立的命令。“易于使用”并不意味着放弃命令行,当然也不意味着放弃易于访问的文档。</grumble>

相关内容