当前位置: 首页>>技术教程>>正文


在linux ubuntu下启动时自动运行程序

, ,

问题描述

Possible Duplicate:
Linux equivalent for Windows Startup

每次启动ubuntu linux时,我都需要运行一个程序。因此,我需要将其添加到我的启动程序列表中。只是一个问题:我需要通过终端来完成。

最佳办法

sudo mv /filename /etc/init.d/
sudo chmod +x /etc/init.d/filename 
sudo update-rc.d filename defaults 

脚本现在应该在启动时启动。请注意,此方法也适用于硬链接和符号链接(ln)。

Edit

在引导过程中,目前尚未设置PATH,因此在整个过程中都使用绝对路径至关重要。但是,正如Steve HHH的评论所指出的那样,明确声明update-rc.d命令的完整文件路径(/etc/init.d/filename)在大多数Linux版本中无效。对于manpage for update-rc.d,第二个参数是位于/etc/init.d/*中的脚本。更新了上面的代码以反映这一点。

另一个编辑

同样,正如注释中所指出的那样(查尔斯·布兰德),/filename必须是一个初始化样式脚本。还提供了一个很好的模板-https://github.com/fhd/init-script-template

另一个文章的另一个链接只是为了避免可能的链接腐烂(尽管如果GitHub死了,这会令人伤心)-http://www.linux.com/learn/tutorials/442412-managing-linux-daemons-with-init-scripts

另一个编辑

正如评论中指出的那样(Russell Yan),这仅适用于update-rc.d的默认模式。

根据update-rc.d的手册,它可以在两种模式下运行,“使用旧模式的计算机将具有文件/etc/init.d/.legacy-bootordering”,在这种情况下,您必须通过命令行参数传递序列和运行级别配置。

上例中设置的等效参数为

sudo update-rc.d filename start 20 2 3 4 5 . stop 20 0 1 6 .

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/7782.html,未经允许,请勿转载。