重启时脚本

重启时脚本

因此,我编写了一个简单的脚本,用于在服务器重新启动时在 slack 上发出警报。我做了什么:在 /etc/rc6.d/R99reboot-slack 中:(我尝试使用 R01reboot-slack)

#!/bin/sh
/scr/msg.sh "Server restarting...."

在/scr/msg.sh 中我有:

#!/bin/bash
MSG=$1
API="API_TOKEN_HERE"
USERNAME="USERNAME HERE"
IMAGE="SOME IMAGE HERE"
CHANNEL="SOME CHANNEL HERE"
slackcli -t $API -h $CHANNEL -m "$MSG" -u $USERNAME -i $IMAGE

使用 slack-clihttps://github.com/candrholdings/slack-cli

问题:

当我重新启动时,脚本根本没有运行,我尝试使用:

echo "Hey, I did run!" > /scr/info.txt

但它什么也没有返回。

两个可执行文件都有 shebang 和可执行权限。(我尝试赋予它们 777,但没有成功)。我还尝试将 /bin/sh 更改为 /bin/bash,更改用户,输入 sudo... 但都不起作用...

直接运行两个脚本,确实有效。

这是在 Ubuntu Server 16.04 上。根据要求,输出:

ls -l /scr/msg.sh /etc/rc6.d/K99reboot-slack

-rwxr-xr-x 1 root root 119 Jun 18 19:02 /etc/rc6.d/K99reboot-slack
-rwxrwxrwx 1 root root 207 Jun 18 18:58 /scr/msg.sh

答案1

这不能保证一定有效,但可以尝试使用以下方法创建一个 cron 任务:

crontab -e

然后在文件中输入

@reboot /scr/msg.sh "Server restarting...."

并且它应该在重启时运行。
免责声明:我从未亲自尝试过此操作,您的成功可能会有所不同。

相关内容