如何在Fedora 14计算机启动时运行脚本

时间:2011-04-06 22:10:03

标签: linux bash fedora restart

我安装了Fedora 14的AWS AMI。我没有root访问权限,但我可以使用sudo执行任何操作。我有一个我希望在机器启动时运行的脚本 - myScript.sh

通过调用sudo /dir/dir/myScript.sh start来调用此脚本。它还支持我经常使用的命令stopstatus

在启动时运行此类脚本的理想方法是什么?

2 个答案:

答案 0 :(得分:3)

我认为最简单,最通用的方法(虽然不如@sarnold的建议灵活)是将/dir/dir/myScript.sh start添加到/etc/rc.local。在所有其他启动脚本运行后,脚本将在启动时运行。

答案 1 :(得分:1)

您可以轻松获得一些机制:

两种最常见的机制:

添加upstart job definition个文件。这看起来很简单,但确实可以将您提供的脚本分发到少数新版本(Ubuntu,Google的Chrome发行版,Fedora,可能是RHEL?)。

添加sysv-init initscript。 init-scripts更难编写,但在为系统管理员提供更多命令行参数方面具有更大的灵活性。几乎所有地方都支持它们,即使是已经将其部分或大部分原始内容转换为Upstart工作的发行版。

我不经常看到它,它更像是系统管理员的选择,而不是软件开发人员的选择,但您也可以使用系统Vixie cron(8)工具来启动程序。

您可以在/etc/cron.d/*中向系统crontab添加条目; Vixie cron支持@reboot说明符,非常适合此任务。

或者,您可以在自己的个人crontab(5)文件中添加条目;再次,Vixie cron的@reboot也适用于用户,但您无法从sudo(8)运行交互式 crontab(5)。如果您想使用自己的个人NOPASSWD文件,请参阅sudoers(5)中的crontab(5)文档,但要注意,机器上的其他管理员可能会讨厌这个想法。