Leí aquí cómo habilitar las actualizaciones automáticas silenciosas para Google Chrome. Sin embargo, tengo otros repositorios como Spotify, Docky y otros para los que me gustaría habilitar actualizaciones silenciosas.
Estoy tratando de hacer esto en mi sistema Ubuntu 10.04. Pero esta pregunta se aplica a todas las versiones de Ubuntu. Tengo instalado el paquete de actualizaciones desatendidas .
¿Cómo puedo hacer esto?
updates
automation
nik90
fuente
fuente

Respuestas:
Primero, instale
gksu:sudo apt-get install gksuLo más fácil de habilitar actualizaciones desatendidas para su sistema es editar el archivo
50unattended-upgradesdentro/etc/apt/apt.conf.d/con su editor de texto favorito, por ejemplo:gksu gedit /etc/apt/apt.conf.d/50unattended-upgradesEn él, debe comentar las secciones comentadas del bloque Orígenes permitidos
Cambio
a
Para el software que no está en los repositorios de Ubuntu que desea actualizar, debe agregar un origen y archivar el archivo. Para encontrar cuáles son sus PPA, abra la carpeta
/var/lib/apt/lists/, que es el área de almacenamiento de información de estado para cada recurso de paquete. Lo que está buscando son los archivos que terminan con Release en el nombre.Abra uno con su editor de texto, es decir, para Google Chrome:
El origen es obvio (
Origin: Google, Inc.) y el archivo será lo que esté debajo de la línea Suite (Suite: stable).Si falta
OriginoSuitefalta, serán la cadena vacía. Pero tenga en cuenta que si faltan ambos , entonces probablemente no será posible usar esa fuente con actualizaciones desatendidas sin incluir otras fuentes con el mismo problema.Después de anotar esas 2 líneas, debe editar el
50unattended-upgradesarchivo y agregar las líneas usando este formato"<origin>:<archive>";de por este ejemplo"Google\, Inc.:stable";.El origen de Google Chrome es un poco complicado porque tiene un espacio, un punto final y una coma, pero la mayoría de los archivos Release serán fáciles de leer.
Como otro ejemplo, la fuente Node JS especifica un origen (
Node Source) pero no un archivo; para que pueda coincidir con"Node Source:";.Allow Origins se combina con comodines de estilo shell (más específicamente, con Python fnmatch () ). Si eres lo suficientemente cuidadoso como para no incluir fuentes en conflicto, es posible escribir cosas como
"Node *:*";.No olvide hacer una copia de seguridad de su
50unattended-upgradesarchivo antes de editarlo, hágalo consudo cp /etc/apt/apt.conf.d/50unattended-upgrades /etc/apt/apt.conf.d/50unattended-upgrades.bak.Para probar los cambios realizados en el archivo, puede usarlos
sudo unattended-upgradescon los parámetros--dry-runy--debug.--dry-runejecutará un ciclo de actualizaciones desatendido, excepto que realmente no instalará las actualizaciones, solo verificará y verificará que todo esté bien.--debughabilitará el modo detallado.Siempre puede verificar los registros
unattended-upgradesen/var/log/unattended-upgrades/unattended-upgrades.log.Puede cambiar la configuración de las actualizaciones desatendidas editando el archivo
/etc/apt/apt.conf.d/10periodic, las opciones para la configuración están en el/etc/cron.daily/aptencabezado del script. Léalos para configurar la frecuencia de las actualizaciones desatendidas.fuente
--dry-runverificará si en las listas actualizadas hay actualizaciones disponibles y las enviará a usted, las actualizaciones de listas a través de la configuración que tenga/etc/cron.daily/apt, ejecutarlo manualmente no actualiza las listas, creo.Enfoque automatizado para la respuesta de @Bruno Pereira: (Considere destacar el repositorio de github si encuentra útil la respuesta).
Enlace de código: https://github.com/abhigenie92/unattended_upgrades_repos
Verifique los repositorios para agregar:
Ahora edite
/etc/apt/apt.conf.d/50unattended-upgradespara incluirlos:Verifique si están incluidos:
fuente
"Raspberry:stable";no funcionó. En cambio, usé, por ejemplo,"o=Raspberry, a=stable";Edición
/etc/apt/apt.conf.d/50unattended-upgrades, agregue lo siguiente:Esto permitirá actualizaciones desatendidas para todos los paquetes.
fuente
origin:'', por ejemplo, datadog-agent desite:'apt.datadoghq.com'. En ese caso, también sería necesario agregar"origin=";para no omitir paquetes con origen vacío. Pero entonces es mejor usarlo en"site=*";lugar de"origin=*";./etc/apt/sources.list.d/my_repo.list, pero no actualiza el paquete. Manualmente funciona consudo apt update. Alguna pista de cómo?Hay instrucciones para forzar una repetición para que cron inicie la actualización automática en el siguiente enlace . El procedimiento para detener cron es este
y reiniciar cron para que la actualización automática ocurra ahora (o al menos en unos pocos minutos) es
Cómo funciona
Varias cosas harán que se ejecute.
Se dispara desde la ejecución de
/etc/cron.dailycron, específicamente/etc/cron.daily/apt. Cron corre/etc/cron.dailya las 6.25 a.m. (ver/etc/crontab)Anacron corre de advenedizo? y se disparará
/etc/cron.dailydespués de 5 minutos de tiempo de actividad (ver/etc/anacrontab)La nota
APT::Periodic::RandomSleepse puede configurar/etc/apt/apt.conf.d/10periodic, pero el valor predeterminado es 1800 (30 minutos), por lo que no se pueden realizar actualizaciones hasta 30 minutos después de las/etc/cron.daily/aptejecuciones.Iniciar sesión
Si funciona cosas deben ser registrados en esta carpeta,
/var/log/unattended-upgrades.fuente
/etc/cron.daily/aptla instalación predeterminada de Ubuntu 12.04, por lo que no se estaban realizando actualizaciones automáticas de APT :-(. La respuesta de ServerFault serverfault.com/a/568329/ 95570 proporcionó detalles sobre cómo volver a crear ese archivo.