Tamam, biraz zaman aldım ve bunun Ubuntu Natty'de nasıl yapıldığını öğrendim ve işte nasıl çalıştığımı anladım. Daha zarif bir yol olabilir, ancak bu şekilde çalışır.
Öncelikle, cron dosyasını TZ değişkenini ayarlayan bir kabuğa sarmamız gerekiyor. İşte nasıl:
cd /usr/sbin
mv cron cron.real
Sonra yeni bir / usr / sbin / cron dosyası oluşturun. Vim kullandım, ancak istediğiniz herhangi bir düzenleyiciyi kullanabilirsiniz, dosyayı şöyle görünmesini sağlayın:
#!/bin/bash
export TZ=UTC
/usr/sbin/cron.real
Yeni cron dosyasını çalıştırılabilir hale getirin:
chmod ugo+rx cron
Şimdi cron arka planını yeniden başlatın:
service cron restart
Artık cron işleriniz UTC tabanlı bir programda çalışacak - NASIL, yürütüldükleri zaman UTC olsa bile, çalıştıklarında sistem için tanımlanmış olan zaman dilimini ayarlayacaklar. Bunu değiştirmek için, herhangi bir komuttan önce crontab'ınıza koyun:
TZ=UTC
Yani crontab'ınız şöyle görünecek:
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command
TZ=UTC
00 19 * * * date > /tmp/date.log
sudo service cron restart
sonra bir düzenleme yaptın mı ?