启动时如何在计算实例中自动启动vncserver

时间:2019-05-22 18:44:35

标签: google-cloud-platform

我在Google云平台中创建了一些VM实例,每次启动其中任何一个时,都需要使用ssh来访问控制台并键入“ vncserver”。我想在启动实例时自动运行vncserver命令。

1 个答案:

答案 0 :(得分:0)

一个可能的答案是使用Google Compute Engine Startup Script技术。这定义了可以在计算机启动时执行的脚本。这包括首次引导和后续引导。这是我使用的脚本,当且仅当尚未安装VNC时,才安装X和VNC。最后,它将启动VNC服务器。已在运行默认操作系统映像的Compute Engines上对此进行了测试。

#!/bin/bash
dpkg-query --status vnc4server > /dev/null 2>&1
rc=$?
if [  "$rc" -ne "0" ];
then
  echo "Installing vnc components"
  apt-get update
  DEBIAN_FRONTEND=noninteractive apt-get install xfce4 xfce4-goodies vnc4server -y
  mkdir --parents ~/.vnc
  echo "password" | vncpasswd -f > ~/.vnc/passwd
  chmod 600 ~/.vnc/passwd
fi
HOME=~ vncserver :0 -localhost no

您还必须打开tcp / 5900的防火墙端口。

另一个选择是将VNC服务器作为系统服务启动。参见Step 4 — Running VNC as a System Service