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 gksu
Lo más fácil de habilitar actualizaciones desatendidas para su sistema es editar el archivo
50unattended-upgrades
dentro/etc/apt/apt.conf.d/
con su editor de texto favorito, por ejemplo:gksu gedit /etc/apt/apt.conf.d/50unattended-upgrades
En é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
Origin
oSuite
falta, 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-upgrades
archivo 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-upgrades
archivo 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-upgrades
con los parámetros--dry-run
y--debug
.--dry-run
ejecutará un ciclo de actualizaciones desatendido, excepto que realmente no instalará las actualizaciones, solo verificará y verificará que todo esté bien.--debug
habilitará el modo detallado.Siempre puede verificar los registros
unattended-upgrades
en/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/apt
encabezado del script. Léalos para configurar la frecuencia de las actualizaciones desatendidas.fuente
--dry-run
verificará 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-upgrades
para 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.daily
cron, específicamente/etc/cron.daily/apt
. Cron corre/etc/cron.daily
a las 6.25 a.m. (ver/etc/crontab
)Anacron corre de advenedizo? y se disparará
/etc/cron.daily
después de 5 minutos de tiempo de actividad (ver/etc/anacrontab
)La nota
APT::Periodic::RandomSleep
se 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/apt
ejecuciones.Iniciar sesión
Si funciona cosas deben ser registrados en esta carpeta,
/var/log/unattended-upgrades
.fuente
/etc/cron.daily/apt
la 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.