¿Hay alguna manera de cambiar a qué hora el administrador de actualizaciones busca actualizaciones?

16

Veo dónde configurar la frecuencia, es decir, semanalmente, diariamente, etc., pero no cómo configurar qué hora del día se verifica.

akgraner
fuente

Respuestas:

11

Las actualizaciones aptas se activan mediante un script llamado /etc/cron.daily/apt. /etc/cron.dailycontiene varios scripts que ocurren todos los días, pero todos al mismo tiempo. Para cambiar la hora en que Update Manager se actualiza, debe cambiar la hora en que se activan todos los /etc/cron.dailyscripts.

Para hacer eso necesitas editar tu /etc/crontabarchivo:

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

Este es un cronarchivo bastante estándar que debería verse algo así:

# /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 )
#

De esto podemos ver los cron.dailydisparadores a las 6:25 am. Si desea comenzar a las 4 a.m., reemplazaría la segunda línea de tiempo con:

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

Si necesita más ayuda con el formato, Wikipedia tiene una página inusualmente técnica en Cron .

Oli
fuente
44
Esto no establecerá la hora exacta en que se realiza la actualización, ya que hay una suspensión aleatoria antes de que ocurra la verificación real de nuevos paquetes. Esto se hace para evitar que millones de usuarios golpeen los espejos al mismo tiempo. La suspensión predeterminada se elige aleatoriamente entre 0 y 30 minutos después del inicio del trabajo cron. Puede cambiar el tiempo de suspensión máximo con la APT::Periodic::RandomSleepconfiguración de APT; un máximo de 0medios siempre sucederá de inmediato (¡ pero recuerda por qué el sueño aleatorio está ahí! ).
JanC
1

Gracias gente. Amber hizo esto en mi nombre a partir de una pregunta que hice en el canal IRC de nuestro equipo loco. Pensé que era un trabajo cron y había estado cavando a través de ellos (/etc/cron.*) tratando de resolver esto por mi cuenta. Así que ahora no veré un aumento en el uso de CPU justo cuando estoy viendo un video de noticias de la mañana.

Parece haber un turno de hora. Sospecho que se debe al horario de verano. Aquí hay un fragmento de esta mañana.

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

Marque esto resuelto.

marca
fuente