如何在没有 x 的情况下启动桌面会话并运行脚本?

如何在没有 x 的情况下启动桌面会话并运行脚本?

我有一个带有 LXDE 的 Ubuntu 服务器用于开发,现在我该如何创建一个 .desktop 文件来启动一个不启动 startx 但实际上将我登录到常规 tty1 会话并运行特定脚本的会话?

答案1

如果您想从另一台计算机登录到该服务器,以及您想要执行的脚本在哪里,我并不完全清楚。

无论如何,你都可以通过 执行脚本ssh。让我们通过两个步骤来看一下。

步骤1:通过命令行启动。

如果它是本地脚本你可以做类似的事情

 ssh me@MyServer '/bin/bash -s' < /path/to/local_script.sh

如果它是一个远程脚本你可以做类似的事情

 ssh me@MyServer "/bin/bash /path/to/remote_script.sh"

如果您想要运行脚本的计算机是服务器本身,则可以用MyServer替换localhost

第 2 步 执行.desktop文件。

创建一个~/Desktop/MyDesktopShort.desktop文件,并在里面写入类似这样的内容

[桌面条目]
版本=1.0
Exec=/path/to/local_script.sh
名称=让我们运行它
通用名称=SSH 服务器
注释=在服务器上执行我的脚本
编码=UTF-8
终端=true
类型=应用程序
类别=应用程序;网络;

如果脚本在远程机器上,请ssh通过命令行写入您之前检查过的命令。

欲了解更多信息,请查看这里是关于 .desktop 语法甚至这里

您可以在此Exec部分写入要执行的操作。
我无法帮助您具体连接到 tty1,但ssh您可以通过它连接到第一个tty可用的 tty1。
最后说明:

  • 您需要sshd在服务器上运行。
  • 总是/bin/bash比简单地bash避免最终特洛伊木马攻擊。

相关内容