在厨师食谱中每3小时安排一次cron

roy*_*roy 2 linux chef-infra chef-recipe

如何安排cron作业每3小时运行一次?这是我的代码:

cron_d 'hdfs_space.sh' do
  minute '59'
  command '/var/lib/hadoop-hdfs/hdfs_space.sh'
  user 'hdfs'
  only_if {File.exists?('/var/lib/hadoop-hdfs/hdfs_space.sh')}
end
Run Code Online (Sandbox Code Playgroud)

是小时'*/3'?

谢谢

Art*_*son 6

厨师的cron资源有一个hour属性.你的cron声明应该是这样的:

cron 'hdfs_space.sh' do
  hour '*/3'
  command '/var/lib/hadoop-hdfs/hdfs_space.sh'
  user 'hdfs'
  only_if {File.exists?('/var/lib/hadoop-hdfs/hdfs_space.sh')}
end
Run Code Online (Sandbox Code Playgroud)


sou*_*ali 5

要在厨师食谱中每3小时安排一次cron,请使用cron的小时和分钟属性。

cron 'hdfs_space.sh' do
    minute '0'
    hour '*/3'
    command '/var/lib/hadoop-hdfs/hdfs_space.sh'
    user 'hdfs'
    only_if {File.exists?('/var/lib/hadoop-hdfs/hdfs_space.sh')}
end
Run Code Online (Sandbox Code Playgroud)

如果不指定分钟选项,则cron将在每3小时的每分钟执行一次。因此,连同hour属性一起使用minutes属性,并将其设置为'0'。