当使用命令以非 root 用户身份执行脚本时at
,它会以更好的方式运行它。我在手册中读到,使用大写字母队列时它有所不同,但即使使用显式-q a
(这也是默认的),它仍然无法解决问题。
这是一个简单的例子:
- 预定:
➔ at -q a 18:02
warning: commands will be executed using /bin/sh
at> /bin/bash ~/sleep_and_count.sh 60 > ~/sleep_at_test.log
at> <EOT>
job 10 at Thu Jan 2 18:02:00 2020
- 并行执行:
➔ /bin/bash ~/sleep_and_count.sh 60 > ~/sleep_at_test1.log
包括niceness的进程列表(NI = 2的进程来自at
:
PID NI CMD
11839 2 sh
11840 2 /bin/bash /home/tcigler/sleep_and_count.sh 60
12441 0 /bin/bash /home/tcigler/sleep_and_count.sh 60
12459 2 sleep 1
12469 0 sleep 1
目标是安排一次性应用程序重新启动 = 未来 24 小时内的特定时间执行脚本一次,但是使用非 root 技术用户。增加好感是一个问题,因为重新启动后应用程序运行缓慢。否则该at
命令将正常工作。
如何实现这一目标?