簡體   English   中英

Cron工作沒有運行由puppet創建

[英]Cron job not running created by puppet

我想將1個cron作業添加到將每5分鍾運行一次的機器上,因為我正在使用此清單:

class cron_job{

    file{"puppet_ls":
            path => "/puppet/pls.sh",
            ensure => present,
            content => "#!/bin/sh\necho \"Hello World\"\nls -ltr /etc/puppet > /puppet/dump.txt"
    }

    file { "my_ls.cron":
        path    => "/etc/cron.d/my_ls.cron",
        ensure  => present,
        owner   => "root",
        group   => "root",
        mode    => 0644,
        require => File["puppet_ls"],
        content => "*/1 * * * *  /puppet/pls.sh\n";
    }
}

所以這個清單做兩件事,

  1. 它創建一個帶有內容指定的文件/puupet/pls.sh,它實際上運行命令ls-ltr / etc / puppet
  2. 它以內部日常類別的cron作業形式輸入,如果你看到最后一行即* * * * /puppet/pls.sh \\ n ,則表示每1分鍾運行一次(為了測試,我保留了一個)

但我沒有得到/ puppet /中的文件dump.txt。如果我運行sh /puppet/pls.sh ,它運行完美並生成轉儲。

我無法理解故障在哪里.. :(

請說清楚..

謝謝Ankur

你應該使用內置於puppet的cron類型

file { '/puppet/pls.sh':
    content => "#!/bin/sh\necho \"Hello World\"\nls -ltr /etc/puppet > /puppet/dump.txt",
    mode    => 0755, 
}

cron { 'helloworld':   
   command => "/puppet/pls.sh",   
   user    => root,
   hour    => '*',   
   minute  => '*/5',
   require => File['/puppet/pls.sh']
}
........

Crontab文件放在/etc/cron.d或其他cron中。 / etc下的目錄不能在其名稱中包含句點。

這是一個已知的錯誤: https//bugs.launchpad.net/ubuntu/+source/debianutils/+bug/38022

從文件名中刪除句點(my_ls.cron)應該可以解決問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM