Перегляньте мою наступну публікацію щодо конкретного рішення для Ubuntu
Я знаю, що це форум Ubuntu, але я вважаю, що відповідь буде дуже схожим на те, як ви це зробили в системі Red Hat. У мене немає зручної системи Ubuntu, щоб перевірити це, але я протестував це на Red Hat.
Все, що вам потрібно зробити - це додати рядок до сценарію cem daemon init. Встановіть та експортуйте змінну середовища TZ, наприклад:
export TZ=UTC
Потім перезапустіть свій крон-демон. Переконайтеся, що ви поставили цей експорт у сценарій запуску демона Cron ПІСЛЯ будь-яких інших параметрів змінної та пошуку - я думаю, що це може бути причиною того, що оригінальна редакція /etc/default/cron
сценарію сценарію не працювала для нього. Можливо, він його встановив, але потім він скинувся на щось інше далі в сценарії.
Зауважте, що це вплине лише на саму демон крона, а не на завдання, які ви виконуєте через cron, тож якщо ви хочете, щоб робота cron використовувала UTC як свій часовий пояс, вам доведеться встановити його і в самій роботі.
Ви, ймовірно, не можете скопіювати цей дослівний текст і змусити його працювати на коробці Ubuntu, але ось сценарій init, який я використовував для тестування цього на Red Hat, ви не можете. Експорт ви знайдете прямо перед start()
функцією:
#!/bin/sh
#
# crond Start/Stop the cron clock daemon.
#
# chkconfig: 2345 90 60
# description: cron is a standard UNIX program that runs user-specified \
# programs at periodic scheduled times. vixie cron adds a \
# number of features to the basic UNIX cron, including better \
# security and more powerful configuration options.
### BEGIN INIT INFO
# Provides: crond crontab
# Required-Start: $local_fs $syslog
# Required-Stop: $local_fs $syslog
# Default-Start: 2345
# Default-Stop: 90
# Short-Description: run cron daemon
# Description: cron is a standard UNIX program that runs user-specified
# programs at periodic scheduled times. vixie cron adds a
# number of features to the basic UNIX cron, including better
# security and more powerful configuration options.
### END INIT INFO
[ -f /etc/sysconfig/crond ] || {
[ "$1" = "status" ] && exit 4 || exit 6
}
RETVAL=0
prog="crond"
exec=/usr/sbin/crond
lockfile=/var/lock/subsys/crond
config=/etc/sysconfig/crond
# Source function library.
. /etc/rc.d/init.d/functions
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
export TZ=UTC
start() {
if [ $UID -ne 0 ] ; then
echo "User has insufficient privilege."
exit 4
fi
[ -x $exec ] || exit 5
[ -f $config ] || exit 6
echo -n $"Starting $prog: "
daemon $prog $CRONDARGS
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
}
stop() {
if [ $UID -ne 0 ] ; then
echo "User has insufficient privilege."
exit 4
fi
echo -n $"Stopping $prog: "
if [ -n "`pidfileofproc $exec`" ]; then
killproc $exec
RETVAL=3
else
failure $"Stopping $prog"
fi
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
}
restart() {
stop
start
}
reload() {
echo -n $"Reloading $prog: "
if [ -n "`pidfileofproc $exec`" ]; then
killproc $exec -HUP
else
failure $"Reloading $prog"
fi
retval=$?
echo
}
force_reload() {
# new configuration takes effect after restart
restart
}
rh_status() {
# run checks to determine if the service is running or use generic status
status -p /var/run/crond.pid $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
exit 2
esac
exit $?
sudo service cron restart
після редагування?