在linux下启动时自动运行程序ubuntu
可能重复:
相当于Windows启动的Linux
我需要一个程序来运行每次我启动我的Ubuntu的Linux。 所以我需要将其添加到我的启动程序列表。 只是一个问题:我需要通过terminal来完成。
sudo mv /filename /etc/init.d/ sudo chmod +x /etc/init.d/filename sudo update-rc.d filename defaults
脚本现在应该在启动时启动。 请注意,此方法也适用于硬链接和符号链接( ln
)。
编辑
此时在启动过程中PATH尚未设置,所以始终使用绝对path至关重要。 但是,正如Steve HHH的评论中所指出的,在大多数Linux版本中,显式声明update-rc.d命令的完整文件path( /etc/init.d/filename
)是无效的。 根据update-rc.d的手册页 ,第二个参数是位于/etc/init.d/*
的脚本。 更新上面的代码来反映这一点。
另一个编辑
正如在评论中指出的(Charles Brandt所说), /filename
必须是init样式脚本。 还提供了一个很好的模板 – 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
”,在这种情况下,你必须传递序列和通过命令行参数运行级别的configuration。
上面例子的等价参数是
sudo update-rc.d filename start 20 2 3 4 5 . stop 20 0 1 6 .