From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 123834 invoked by alias); 13 Jul 2019 08:26:07 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 123825 invoked by uid 89); 13 Jul 2019 08:26:07 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-1.2 required=5.0 tests=AWL,BAYES_50,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 spammy=Karr, uname, karr, 0338 X-HELO: smtp-out-so.shaw.ca Received: from smtp-out-so.shaw.ca (HELO smtp-out-so.shaw.ca) (64.59.136.137) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 13 Jul 2019 08:26:05 +0000 Received: from [192.168.1.114] ([24.64.172.44]) by shaw.ca with ESMTP id mDM2h8jJ3IhW9mDM3hNZy6; Sat, 13 Jul 2019 02:26:03 -0600 Reply-To: Brian.Inglis@SystematicSw.ab.ca Subject: Re: How to start and verify cron? To: David Karr , The Cygwin Mailing List References: <61a6773b-5fe9-62e0-78ec-7684ee0d04b0@SystematicSw.ab.ca> <74357359-436a-0ead-f7bc-b288572d6cc3@SystematicSw.ab.ca> <7af86f7a-5a51-6280-2f96-8caa3603211e@SystematicSw.ab.ca> From: Brian Inglis Openpgp: preference=signencrypt Message-ID: <88f5c572-1be2-3f25-9457-4cf85ea0d611@SystematicSw.ab.ca> Date: Sat, 13 Jul 2019 08:26:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2019-07/txt/msg00106.txt.bz2 On 2019-07-12 10:18, David Karr wrote: > On Fri, Jul 12, 2019 at 8:20 AM Brian Inglis wrote: >> On 2019-07-11 15:20, David Karr wrote: >>> On Thu, Jul 11, 2019 at 12:56 PM David Karr wrote: >>> On Wed, Jul 10, 2019 at 4:04 PM Brian Inglis wrote: >>> On 2019-07-10 16:15, David Karr wrote: >>> > On Wed, Jul 10, 2019 at 10:20 AM Brian Inglis wrote: >>> > On 2019-07-10 10:55, David Karr wrote: >>> > > I've checked the user guide and the FAQ, and I can't find any >>> information >>> > > about how to start cron and verify that it's working. I found >>> other blog >>> > > posts on other sites, but some of them are old. >>> > >>> > Did you run service setup script /bin/cron-config to set up the >>> service? >>> > When I ran that now, it says "Cron is already installed as a service under >>> > account ...", so I assume that means that I did. >>> > > I had installed cron, and I thought it was working, but now I >>> think that it >>> > > is not. If I edit "~/crontab" and then run "crontab -l", it >>> lists the >>> > > changes I've made to jobs, so at least that is working. The >>> real job I >>> > > have didn't appear to be doing what it was supposed to be doing, >>> so I added >>> > > a new trivial job that just appends output from "date" to a file >>> in my >>> > > homedir, and after the scheduled time of the job, the file was >>> not created. >>> > >>> > Messages from cron and other active services should be visible in >>> the Windows >>> > application event log if you have not set up a syslog service. >>> > I went through it, but I didn't see any indications of issues with >>> cron. I'm >>> > not sure what to look for, or where in the event log interface. >>> > > This is the additional job I added: >>> > > >>> > > 40,42,44 * * * * date >> /home//date.txt >>> > > >>> > > I did find a "/var/log/cron.log", but it is empty, and the >>> modtime is from >>> > > a few months ago. >>> > > >>> > > One blog post I found talks about running "cygrunsrv -I cron -p >>> > > /usr/sbin/cron -a -D". I just did this, and it reports "The >>> specified >>> > > service already exists." >>> > > >>> > > This is my uname -a output: >>> > > >>> > > CYGWIN_NT-6.1 ... 3.0.3(0.338/5/3) 2019-03-09 19:12 x86_64 Cygwi >>> > For a more Unix like and self contained Cygwin approach, install >>> syslog-ng, run >>> > service setup scripts /bin/cygserver-config /bin/syslog-ng-config >>> > /bin/cron-config, add service dependencies to start up in that >>> order, and you >>> > should see cron messages in /var/log/syslog if you run elevated: >>> you can also >>> > run chmod elevated to make /var/log/syslog world readable, or >>> setfacl to add >>> > user or group read ACLs. >>> > How do I add service dependencies to start up in a particular order? >>> In an elevated cmd or bash shell: >>> elevated > OR # sc config syslog-ng depend= cygserver >>> elevated > OR # sc config cron depend= syslog-ng/cygserver >>> N.B. the "=" is part of each keyword; multiple service dependencies are >>> separated by "/". >>> It's curious that when I bring up the default "Packages" view, filtering for >>> "syslog-ng" doesn't find anything. I had to switch to the Categories view, >>> and then filtering for that found it. >>> After doing all of this, I still can't get cron jobs to work, and I can't get >>> any info on why. >>> This is the current output from "crontab -l": >>> 0 0,12 * * * find /tmp/.logcache/ -type f -mtime +6 >>> -exec rm {} \; >>> 14,15,16,17 * * * * date >> /home/dk068x/date.txt >>> I've tried editing that last one and changing the minutes to include upcoming >>> minutes, and then after those minutes, I check the results, and there are none. >>> Nothing in cron.log or syslog-ng.log. >> Did you run the -config scripts to setup the services? >> Did you restart all services after any changes? >> # for srv in cygserver syslog-ng cron; do \ >> for o in -Q -E -Q -S -Q; do \ >> cygrunsrv $o $srv; done; done >> Check /dev/log: >> # ls -lF --color /dev/log >> srw-rw-rw- 1 SYSTEM SYSTEM 0 Jul 10 12:28 /dev/log= >> if you don't see a pink /dev/log with "=" flag, and it's just black with no "=" >> flag, rm /dev/log and restart syslog-ng as above. >> Do not forget to *ALWAYS* shut down all Cygwin services before running setup to >> upgrade any Cygwin packages. > I assume it would be possible to script this? How would I do this? # cygrunsrv -L | xargs -n1 cygrunsrv -E OR # for o in -Q -E -Q; do \ for srv in cygserver syslog-ng cron; do \ cygrunsrv $o $srv; \ done; \ done >> You can check the status of all services with a command such as >> $ cygrunsrv -VL | sed -Ee '/^Service\s*:\s*/{s// >> /;s/\s+$//;s/\s*(\S+)\s+\(Installation\spath\s*:\s*.*\)$/ >> (\1)/;H;};/^Current\sState\s*:\s*/{s// /;s/\s*$/ /;H;};$!d;${x;s/\n|\s+$|^\s+//g;}' >> cron Running cygserver Running syslog-ng Running -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada This email may be disturbing to some readers as it contains too much technical detail. Reader discretion is advised. -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple