由于升级我的用户的 crontab 已被清除。这不是今年第一次发生这种情况,每次恢复它都很痛苦。
我希望能够为我的用户备份 crontab,但为此我需要知道它的存储位置。
我正在尝试使以下脚本适用于ufw期望我按 y 或 n 来确认我的命令的命令。另外我想将我的密码传递给sudo命令(我知道,坏主意)。
echo 'y' | { echo 'my password'; } | sudo ufw reset
Run Code Online (Sandbox Code Playgroud)
该sudo密码位的作品,但我从以下错误消息ufw reset的命令:
Resetting all rules to installed defaults. Proceed with operation (y|n)? Aborted
Run Code Online (Sandbox Code Playgroud)
该命令正在中止,而不是接受我试图发送的“y”。谁能告诉我我做错了什么?
我通过以下方式创建了一个 cronjob 来运行脚本。脚本仅在服务关闭时启动服务。
这是脚本,
#!/bin/bash
service=influxdb
if (( $(ps -ef | grep -v grep | grep $service | wc -l) > 0 ))
then
echo "$service is running!!!"
else
service $service start
fi
Run Code Online (Sandbox Code Playgroud)
我创建了一个这样的 cron 工作,
alphauser@AlphaServer:~$ sudo crontab -e
Run Code Online (Sandbox Code Playgroud)
然后添加了这一行
* * * * * bash /home/alphauser/influx-start.sh > /home/alphauser/output-influx-start.txt
Run Code Online (Sandbox Code Playgroud)
我将输出存储在一个文件中只是为了检查它的输出。
服务停止了,现在是 cron 展示其魔力的时候了。但它未能启动该服务。我看到了输出文件,这是用那个写的,
Starting influxdb...
influxdb process was unable to start [ FAILED ]
Run Code Online (Sandbox Code Playgroud)
然后我从 by 中删除了这个 cronjob sudo crontab -r。
我在etc/crontab文件末尾添加了这一行,即
* * * * …Run Code Online (Sandbox Code Playgroud)