TigerVNC 通过脚本启动时出现黑屏

TigerVNC 通过脚本启动时出现黑屏

问题

我已经将 TigerVNC 服务器软件安装到在 VMware Workstation 中运行的 Ubuntu 18.04 客户机上。

在终端或 Xterm(客户机的)中手动执行以下行后,我可以通过 VNC 进入(即使用 VNC 查看器查看)客户机:

vncserver:1-localhost无-几何980x700-深度32

但是,运行脚本中的同一行(如下所示)只会在 VNC 查看器上显示黑屏,并且光标会变成一个点。

/bin/bash #!/bin/bash
vncserver:1-localhost无-几何980x700-深度32

我应该对脚本做什么才能使其工作(给我一个合适的 VNC 屏幕)?

背景

我对 Ubuntu 和这个网站都很陌生。如果我遗漏了相关信息,请告诉我,我会用它更新问题。目前,我能想到以下几点。

并非所有脚本都会给我带来问题。例如,我使用下面的脚本就很好(在 Ubuntu 客户机中挂载 Windows 机器的共享文件夹)。

/bin/bash #!/bin/bash
sudo mount -t cifs -o 用户名=tom,uid=1000,gid=1000 //192.168.0.17/d /home/loom/mnt/summer_d

但是,以下命令(旨在安装硬盘)失败,我必须sudo在终端或 Xterm 中手动执行该行。

/bin/bash #!/bin/bash
sudo mount /dev/sdb1 /home/loom/hdd/hdd5 -o uid=1000,gid=1000,utf8,dmask=027,fmask=137

当我手动执行时,我从脚本所在的同一目录执行此操作;所以这似乎不是一个问题。

当我双击该脚本时,它会加载到 Xterm 中。

echo $SHELL在终端或 Xterm 中运行都会给我/bin/bash

正如您所看到的,我遇到了一个普遍的问题:脚本不能可靠地运行。

由于我认为脚本的 she-bang 行将其他行提供给特定的 shell,而其他行则输入我可能手动拥有的内容,所以我不明白为什么同一行应该或不应该根据它们的输入方式(手动或通过脚本)来工作。

一个好的答案会告诉我如何解决 VNC 的具体问题,并大致解释我在这些脚本中可能做错了什么。谢谢。

答案1

您将相关脚本放在哪里?它们必须位于属于您计算机的 $PATH 环境变量的目录中。您可以使用以下命令找到它

 echo $PATH

应该返回类似这样的内容

回显 $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

如果它们位于其中一个文件夹中,您还应该检查您的脚本是否可执行。

如果不是,你必须移动到文件夹,打开终端并启动

sudo chmod +x script_name

相关内容