我只想在启动时运行一个非常简单的命令。我该怎么做?我在谷歌上搜索过,里面有非常复杂的例子,但我需要的只是在启动时运行这个脚本。我该怎么做?
脚本
./init.d/opscenter-agent start
答案1
如果你想这样做系统启动时(与登录计算机时相反),将您想要运行的命令放入其中/etc/rc.local
。
答案2
如果脚本不需要由root运行,可以这样做:
1)打开“启动应用程序偏好设置”(Alt+F2并粘贴gnome-session-properties
并点击Enter),
2)按“添加”并选择您的脚本:
如果您没有使用图形环境,您可以将命令放在exit 0
此文件中的行前:/etc/rc.local
。(要编辑它,只需在终端粘贴即可sudo nano /etc/rc.local
。
答案3
/etc/rc.local 方法将“在启动时运行一个非常简单的命令”,但它不是 init.d 脚本方法,并且在很多方面都不如 init.d 脚本。(这可能无关紧要,取决于您的目的)。
与 init.d 脚本不同,rc.local 命令不提供启动和停止进程的标准接口,并且它们无法影响启动过程中的运行时间。您可以在脚本中看到,/etc/init.d/rc.local
该命令在其他所有命令之后运行(Required-Start: $all
)。
如果您确实需要 init.d 脚本,那么通常只需获取现有脚本、复制并编辑即可,尽管某些现有脚本的复杂性超出您的预期。由于大多数 init.d 脚本都是通过这种方式启动的,因此 ubuntu 提供了 /etc/init.d/skeleton 来实现此目的。
同样值得一看:
/etc/init.d/motd
是一个最小示例,它在启动时运行某些操作,但带有Required-Start
应在何时运行的参数设置。/etc/init.d/cron
是守护进程的简单起点(提供或获取parse_environment
您可能不需要的功能)。