我有 ubuntu,vnc 服务器(Xvnc4)在启动时启动 2 个会话:
VNCSERVERS="1:user1 2:user2"
VNCSERVERARGS[1]="-geometry 1024x768 -depth 24"
VNCSERVERARGS[2]="-geometry 1024x768 -depth 24
每次 vnc 服务器启动时 - 我需要通过 vnc 登录到每个会话并手动启动一个程序。
是否可以在特定的 vnc 会话中自动运行命令?
答案1
您可能想到有几种不同的方法可以完成此操作,但这可能是最合适的。第一次为用户xstartup
运行时会创建一个名为的 shell 脚本vncpasswd
。可以修改此文件以运行任意代码。修改和测试更改时,请设置调试日志记录并跟踪相关日志文件以排除更改故障。
在目录 $HOME/.vnc 中可以找到几个与 VNC 相关的文件。其中包括:
$HOME/.vnc/xstartup
A shell script specifying X applications to be run when a VNC
desktop is started. If it doesn’t exist, vncserver will create
a new one which runs a couple of basic applications.
通常,安装程序会将逻辑放入其中~/.vnc/xstartup
,您需要谨慎地插入要在启动会话时运行的行。首先尝试从一些简单但善于产生错误消息的程序开始,例如
xterm -geometry 40x24+10+10 -ls -title "$VNCDESKTOP Desktop"
为了获得最佳效果,请在启动窗口管理器的 xstartup 行之前或之后插入该行。