Interrumpir apt-get dist-upgrade: ¿qué podría pasar?

10

Supongamos que me meto en mi computadora y ejecuto

sudo apt-get dist-upgrade

y, mientras apt-get se está ejecutando e instalando los paquetes, otra persona que está sentada en la terminal e inició sesión en gnome decide apagar la computadora a través de la GUI.

¿Qué es lo peor que puede pasar bajo esta circunstancia? ¿Existe algún mecanismo que evite que los paquetes se queden en estado 'sucio'? Si no, ¿cómo prevenir eso?

fdierre
fuente

Respuestas:

8

En el peor de los casos, puede dañar su sistema haciendo que sea imposible arrancar normalmente, pero siempre puede arrancar en modo de rescate y solucionarlo.

  1. Utilice el modo de rescate iniciando con un CDROM de instalación de Ubuntu e ingresando "rescate" en el indicador de inicio

  2. Monte todas sus particiones y realice un chroot a / target donde está montada la partición raíz.

  3. Después de que el sistema se haya iniciado en el menú, seleccione el elemento que dice "Soltar al indicador de shell de root con redes". Esto le brinda la posibilidad de actualizar los paquetes de software desde Internet.

  4. Cuando aparezca el mensaje, comience asegurándose de que todos los programas instalados actualmente estén configurados:

    dpkg --configure -a

Esto puede llevar mucho tiempo, dependiendo de cuántos programas se instalaron antes de que el sistema se detuviera.

  1. Luego continúe y actualice la lista actual de paquetes:

apt-get update

  1. Después de esto, actualice el software en el sistema:

actualización apt-get

Este último paso, nuevamente, puede tomar mucho tiempo en completarse. Debe prestar atención a la lista de paquetes retenidos (enumerados en la parte superior de la salida de este comando); Estos paquetes deberán ser solicitados específicamente.

Por lo general, los paquetes se retienen porque requieren un nuevo software u otros cambios drásticos: el kernel de Linux siempre se retiene. Use un comando como este para instalar estos paquetes:

apt-get install some-package some-other-package

Puede que tenga que repetir esto más de una vez hasta que todos los paquetes se hayan instalado y ninguno se haya retenido.

Luego, debe repetir la actualización y la actualización para verificar completamente que el sistema esté tan actualizado como sea posible:

apt-get update

actualización apt-get

Estos últimos comandos deberían ejecutarse rápidamente, ya que probablemente todo esté completo; sin embargo, no es imposible que las actualizaciones hayan afectado algo que requiere otra actualización. No hacer esto probablemente no importará, pero ¿por qué no hacerlo de todos modos?

Una vez hecho esto, es necesario reiniciar para asegurarse de que el software anterior ya no se usa y que todo lo que se usa es el nuevo software actualizado. No solo continúe el arranque: reinicie.

Se puede hacer una cosa más para limpiar después, posiblemente después del reinicio. En un shell de comandos, ingrese este comando para eliminar el software innecesario:

apt-get autoremove

Fuente

LnxSlck
fuente
Esta podría ser una pregunta totalmente nueva, pero ¿hay alguna manera fácil de solucionarlo? ¿Te gusta algún comando de restauración?
giZm0
1
He actualizado mi respuesta para incluir eso
LnxSlck
2
Sugeriría correr por apt-get dist-upgradetodas partes como apt-get upgradese sugirió anteriormente. Con eso, no necesita instalar manualmente paquetes "retenidos".
Mikko Rantalainen