Debian:如何在启动时运行脚本而不必编写30行shell脚本?

前端之家收集整理的这篇文章主要介绍了Debian:如何在启动时运行脚本而不必编写30行shell脚本?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个Debian服务器,我只需要在启动时运行脚本.

我读到了:
https://www.debian-administration.org/article/28/Making_scripts_run_at_boot_time_with_Debian

我现在得到了:insserv:警告:脚本’缺少LSB标签和覆盖

所以看起来我现在必须添加

### BEGIN INIT INFO
# Provides:          scriptname
# required-Start:    $remote_fs $syslog
# required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable service provided by daemon.
### END INIT INFO

它现在看起来很疯狂:就像30行脚本只是为了在启动时运行一个程序.

有没有一种工具可以简单地做到这一点?

问候

如果您的脚本“只是一个脚本”,并且没有启动守护程序,请考虑使用/etc/rc.local(以root身份执行)或crontab(以您的coice用户身份执行).

两个例子:

> /etc/rc.local

#!/bin/sh -e
#(Multiple lines of comments removed.)
/usr/local/bin/your-script.sh
exit 0

> crontab(例如,通过crontab -e编辑)

#(Multiple lines of comments removed.)
@reboot /usr/local/bin/your-script.sh

编辑1:只是阅读你的评论:如果你的脚本启动守护进程,它应该一直运行,我建议不要使用rc.local或crontab,而是编写一个正确的(或多个)init.d脚本.这样您/您的系统就能够干净地重新启动/重新加载/启动/停止守护进程等.

编辑2:你称之为疯狂,但LSB标签提供了一些价值:“通过记录init.d脚本的运行时依赖性,可以验证当前的引导顺序,使用这些依赖项命令引导,并运行引导脚本并行加速启动过程.“欲了解更多详情,请访问Debian wiki.

(顺便说一下:这是一个警告,实际上,这取决于你,如何以及如何处理这个问题.)

猜你在找的Bash相关文章