
Estoy escribiendo un script que se supone que se ejecuta todos los días para comprobar si hay nuevas actualizaciones de seguridad para Ubuntu.
Si las hay, hará una lista de esas actualizaciones, las descargará y luego ejecutará algunas pruebas.
El propósito de este script es garantizar que ninguna actualización de seguridad rompa nuestro código que se ejecuta en Ubuntu.
No soy un usuario experimentado con Ubuntu, así que perdónenme si esta pregunta parece trivial. He investigado bastante y encontré información comoesteLo cual supongo que es útil para aquellos que son usuarios domésticos o similares. PeroNo puedo instalar paquetes extra, ni esto proporciona ninguna solución para hacerlo sin instalar paquetes (probé todas las respuestas que no incluían la descarga de nuevos paquetes)
Entonces, para refinar mi pregunta,Me gustaría un comando que obtenga todas las actualizaciones de seguridad.(para poder verlos como una lista e incluirlo en el informe diario de qué paquetes de seguridad tienen actualizaciones)y luego también descargarlos e instalarlos. Las pruebas y demás las hago yo mismo (obviamente). Solo necesito ayuda para comprender qué comandos ejecutar.
Dado que los scripts ejecutarán estos comandos, no es necesario que sean legibles por humanos de ninguna manera específica, por lo que pueden ser largos y extraños, o algo así, y preferiblemente de una sola línea que no requieran configuración previa.
Respuesta1
Después de un poco de mi propia investigación y de algunas pruebas, esta es la solución que encontré por mí mismo:
grep security /etc/apt/sources.list > /tmp/su.list
apt-get -o Dir::Etc::Sourcelist=/tmp/su.list -q update
apt-get -o Dir::Etc::Sourcelist=/tmp/su.list -q upgrade -s 2>&1 | tee /tmp/security_updates_fetch.log
apt-get -o Dir::Etc::Sourcelist=/tmp/su.list -q upgrade -ym --force-yes 2>&1 | tee /tmp/security_updates_install.log
Esto generará salida a la salida estándar y creará algunos archivos en /tmp/
:
/tmp/su.list
: Que es un archivo desechable una vez completada la operación.security_updates_fetch.log
: Contiene las actualizaciones que se realizarán.security_updates_install.log
: Contiene el registro de la actualización real.