sudo apt-get upgrade
instala todas las actualizaciones, no sólo las actualizaciones de seguridad. Sé que puedo usar el Gestor de Actualización para seleccionar sólo las actualizaciones de seguridad importantes, pero hay una manera de hacerlo desde la línea de comandos?
Respuestas
¿Demasiados anuncios?El paquete unattended-upgrades de proporciona funcionalidad de instalar las actualizaciones de seguridad automáticamente.
Usted podría utilizar esto, pero en lugar de la configuración de la parte automática se le puede llamar de forma manual. Para este caso, el siguiente debe hacer es:
sudo unattended-upgrade
Esto supone que el paquete está instalado por defecto, lo que probablemente es. Si no, basta con hacer:
sudo apt-get install unattended-upgrades
Véase también /usr/share/doc/unattended-upgrades/README.md
.
Un Par De Consejos Sobre Cómo Administrar Las Actualizaciones
Esto se aplica tanto para Debian y Ubuntu, pero más instrucciones específicas para Ubuntu siga.
• Mostrar únicamente las actualizaciones de seguridad:
apt-get -s dist-upgrade |grep "^Inst" |grep -i securi
or
unattended-upgrade --dry-run -d
or
/usr/lib/update-notifier/apt-check -p
• Mostrar todos los paquetes actualizables
apt-get -s dist-upgrade | grep "^Inst"
• Instalar las actualizaciones de seguridad sólo
apt-get -s dist-upgrade | grep "^Inst" | grep -i securi | awk -F " " {'print $2'} | xargs apt-get install
• Comprobar qué servicios necesita ser reiniciado después de las actualizaciones de los paquetes. Averiguar lo que los paquetes que se va a actualizar de antemano y programar su reinicia/reinicios. El problema aquí es que, a menos de reiniciar un servicio aún puede ser utilizando una versión anterior de una biblioteca (la razón más común) que se ha cargado en la memoria antes de instalar un nuevo paquete que corrige una vulnerabilidad de seguridad o lo que sea.
checkrestart -v
Sin embargo, tenga en cuenta que checkrestart de mayo de lista de procesos que no deben necesariamente ser reiniciado. Por ejemplo, el servicio de PostgreSQL se puede mantener en su memoria de referencia a un ya eliminado xlog archivo, que no es una razón válida para reiniciar el servicio.
Por lo tanto, otra, más confiable, la forma de verificar esto usando el estándar utils es el siguiente pequeño script en bash que me robó descaradamente https://locallost.net/?p=233
Comprueba si los procesos en ejecución en un sistema que todavía están eliminados utilizando las bibliotecas de la virtud de conservar las copias de aquellos en la memoria activa.
ps xh -o pid \
| while read PROCID; do
grep 'so.* (deleted)$' /proc/$PROCID/maps 2> /dev/null
if [ $? -eq 0 ]; then
CMDLINE=$(sed -e 's/\x00/ /g' < /proc/$PROCID/cmdline)
echo -e "\tPID $PROCID $CMDLINE\n"
fi
done
A veces Ubuntu muestra las actualizaciones de seguridad como si proceden de $release-repositorio de actualizaciones. Esto es lo que me dijo, porque los desarrolladores de Ubuntu empuje actualizaciones de seguridad a $release-repositorio de actualizaciones así como para acelerar su disponibilidad.
Si ese es el caso, se podría hacer lo siguiente para tratar únicamente las actualizaciones de seguridad:
sudo sh -c 'grep ^deb /etc/apt/sources.list |grep securi >> /etc/apt/sources.security.repos.only.list'
apt-get -s dist-upgrade -o Dir::Etc::SourceList=/etc/apt/sources.security.repos.only.list |grep "^Inst" | awk -F " " {'print $2'} | xarg apt-get install
reemplace el /etc/apt/preferences con lo siguiente:
Package: *
Pin: release a=lucid-security
Pin-Priority: 500
Package: *
Pin: release o=Ubuntu
Pin-Priority: 50
ahora un simple apt-get upgrade será la actualización de todas las actualizaciones de seguridad solamente.
Por qué (y cómo) funciona esto: El archivo de preferencias de le pin todos los paquetes de la distribución ubuntu de prioridad de 50, lo que hará que sean menos deseables que ya los paquetes instalados. Los archivos procedentes de seguridad repositorio dado el incumplimiento (500) prioridad por lo que se consideran para la instalación. Esto significa que sólo los paquetes que se consideran más deseables que actualmente instalados son actualizaciones de seguridad. Más información acerca de la fijación en la apt_preferences manual.
Temporalmente se puede promover una cierta distribución de actualizaciones con la ... con el objetivo de liberación de la opción que trabaja con apt-get y aptitude (al menos) lo que permitirá que usted pin ciertas versiones para que sean elegibles para la actualización.
Si desea utilizar este para secuencias de comandos y no lo hacen por defecto para el sistema, usted puede colocar las reglas en alguna otra ubicación y el uso de este lugar:
apt-get -o Dir::Etc::Preferences=/path/to/preferences_file upgrade
Esto hará que apt busque el archivo de preferencias de una ubicación no predeterminada.
El archivo de preferencias dado como un ejemplo no se aplica a los repositorios de terceros, si usted desea pin también puede utilizar apt-cache policy
, para determinar fácilmente las claves necesarias para la fijación.
-
apt-get update
: acabo de leer las entradas en el repositorio de acuerdo a la lista existente. Necesarios para comprobar lo que es nuevo. -
apt-get upgrade
: todas las actualizaciones para los paquetes instalados sin los módulos del núcleo. La liberación de No actualizar. -
apt-get dist-upgrade
: todas las actualizaciones para los paquetes instalados también con los módulos del kernel. La liberación de No actualizar. -
apt-get
con el parámetro-s
: de prueba solamente, no de los cambios realizados.