Linux相当于Windows;“启动”;文件夹

Linux相当于Windows;“启动”;文件夹,linux,debian,beagleboneblack,Linux,Debian,Beagleboneblack,我想在嵌入式Linux桌面启动后运行一个程序,就像Windows运行“Startup”文件夹中的程序一样。我该怎么做 具体来说,我的目标硬件是Beaglebone Black,Debian变体(rev C board)。窗口管理器是默认的。在Linux中,这些被称为init脚本,通常位于/etc/init.d中。不同发行版之间应该如何定义它们各不相同,但今天许多发行版使用Linux标准基(LSB)初始化脚本格式 这方面的好读物: 事实证明,启动一个程序有多种方法。LXDE——窗口管理器——支持自

我想在嵌入式Linux桌面启动后运行一个程序,就像Windows运行“Startup”文件夹中的程序一样。我该怎么做


具体来说,我的目标硬件是Beaglebone Black,Debian变体(rev C board)。窗口管理器是默认的。

在Linux中,这些被称为init脚本,通常位于
/etc/init.d
中。不同发行版之间应该如何定义它们各不相同,但今天许多发行版使用Linux标准基(LSB)初始化脚本格式

这方面的好读物:
事实证明,启动一个程序有多种方法。LXDE——窗口管理器——支持自动启动~/.config/autostart或/etc/xdg/autostart-hooray中的.desktop文件

除了。。。虽然我可以用这种方式运行一个简单的程序作为概念证明,但当我尝试运行我的程序时,它失败了。我不明白为什么。档案

.xsession-errors.old

包含X服务器错误(“资源暂时不可用”)


我现在使用另一种机制——从shell脚本运行代码(这是必要的,因为我需要为程序指定一个工作目录)。这使用了/etc/xdg/lxsession/中的“autostart”文件,至少它可以工作。嗯,有点。我要么在运行前“睡眠5”,要么在运行前加上@符号,如果失败,将强制重试。这看起来有点像我的代码所依赖的东西在autostart机制找到它的准确时间没有到位。我无法确保启动顺序。这显然是一罐发臭的东西。

不完全是;init脚本更像Windows服务,无论您是否登录都可以运行。启动项更像会话管理器的会话脚本,它仅在启动新会话(即登录或以其他方式运行桌面)时运行。