Есть ли способ изменить время проверки обновлений менеджером обновлений?

16

Я вижу, где установить частоту, т.е. еженедельно, ежедневно и т. Д., Но не знаю, как установить, в какое время дня он проверяет.

akgraner
источник

Ответы:

11

Обновления Apt запускаются скриптом, который называется /etc/cron.daily/apt. /etc/cron.dailyсодержит несколько сценариев, которые происходят каждый день, но все одновременно. Чтобы изменить время обновления Update Manager, необходимо изменить время, когда все /etc/cron.dailyсценарии отключатся.

Для этого вам нужно отредактировать ваш /etc/crontabфайл:

sudoedit /etc/crontab # or: gksu gedit /etc/crontab

Это довольно стандартный cronфайл, который должен выглядеть примерно так:

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

Из этого мы можем увидеть cron.dailyтриггеры в 6:25 утра. Если вы хотите начать в 4 часа утра, вы бы заменили вторую строку раз на:

0 4    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )

Если вам нужна дополнительная помощь с форматом, в Википедии есть необычно техническая страница на Cron .

Оли
источник
4
Это не установит точное время, когда произойдет обновление, так как происходит случайный сон до фактической проверки новых пакетов. Это сделано для того, чтобы миллионы пользователей не ударяли по зеркалам одновременно. Спящий режим по умолчанию выбирается случайным образом между 0 и 30 минутами после запуска задания cron. Вы можете изменить максимальное время APT::Periodic::RandomSleepожидания с помощью настройки конфигурации APT; максимум средств 0означает, что это всегда произойдет немедленно ( но помните, почему случайный сон там! ).
JanC
1

Спасибо людям. Амбер задала это от моего имени из вопроса, который я задал на нашем канале IRC команды loco. Я подумал, что это была работа cron и копался в них (/etc/cron.*), пытаясь понять это самостоятельно. Так что теперь я не увижу всплеск использования процессора, так как смотрю утренние новости.

Там, кажется, сдвиг часового времени. Я подозреваю, что это связано с переходом на летнее время. Вот отрывок из этого утра.

Apr 21 07:30:01 flounder CRON[21032]: (root) CMD (start -q anacron || :)
Apr 21 07:30:01 flounder anacron[21035]: Anacron 2.3 started on 2011-04-21
Apr 21 07:30:01 flounder anacron[21035]: Will run job `cron.daily' in 5 min.
Apr 21 07:30:01 flounder anacron[21035]: Will run job `cron.weekly' in 10 min.
Apr 21 07:30:01 flounder anacron[21035]: Jobs will be executed sequentially
Apr 21 07:35:01 flounder anacron[21035]: Job `cron.daily' started

Отметить это решено.

отметка
источник