如何使用 Mint Linux 15 根据当前本地时间有条件地启动服务?

如何使用 Mint Linux 15 根据当前本地时间有条件地启动服务?

我设置了 cron 作业,在凌晨 2:00 停止服务,然后在早上 8:00 重新启动它们。但是,我的有进取心的用户(我的家人;保护机器是不可能的)已经确定,如果他们重新启动机器,服务将作为默认启动过程的一部分重新上线。

我能想到的最佳解决方案是修改启动/停止脚本以检查时间作为条件,或者让 cron 作业在磁盘上放置一个标志文件,服务启动作业在允许启动之前会查找该文件。(第二种方法是将时间表分离,这样我只需在一个地方输入它,并允许我轻松覆盖它。)

这是解决问题的最佳技术方法吗?还有其他我不熟悉的通过 cron 链接关机的方法吗?

答案1

好的,我想要控制的服务已转换为暴发户. 根据新贵食谱, 暂时地禁用服务,使其不会在下次启动时启动通过以下方式完成:

# echo "manual" >> /etc/init/myjob.override

因此我创建了以下启动和关闭脚本以便从 cron 调用:

PMSStop:

#!/bin/bash
OverrideFile="/etc/init/plexmediaserver.override"

# Create the override file if it doesn't already exist.
if [ ! -f $OverrideFile ]
then
    echo Creating flag file $OverrideFile.
    echo "manual" >> $OverrideFile
else
    echo Flag file $OverrideFile exists.
fi

# Stop the plexmediaserver service.
/sbin/stop plexmediaserver

PMS开始时间:

#!/bin/bash
OverrideFile="/etc/init/plexmediaserver.override"

# Remove the override file if exists.
if [ -f $OverrideFile ]
then
    rm $OverrideFile
fi

# Start the plexmediaserver service.
/sbin/start plexmediaserver

然后,我修改了 cron 作业以使用新创建的批处理文件,它似乎正在运行。

相关内容