¿Cómo puedo pausar / reanudar un proceso de actualización de apt-get en un terminal?

20

Mi Internet se detiene a veces debido al cambio en la intensidad de la señal 3g y tengo que reiniciar todo el proceso de actualización de apt-get nuevamente. ¡Cada actualización consume 13-15 mb y cada mb cuesta aquí! ¿Puedo hacer algo para pausar la actualización y poder reanudarla después de conectar mi Internet nuevamente? ps: sé que puedo reanudar las descargas de aplicaciones / actualizar

avi
fuente
Entonces, ¿por qué quieres pausar exactamente? ¿Es únicamente para que pueda borrar los archivos de paquete que se descargan para la instalación? Si es así, solo use el comando de limpieza que describí DESPUÉS de que haya ejecutado la instalación del software, esto aclarará el espacio ocupado por los instaladores de paquetes descargados.
Thomas Ward
@EvilPhoenix No. No es por eso. ¡El punto es que si la conexión se rompe en el último paso de mi actualización, pierdo 14 mb, porque tengo que volver a ejecutarla! y mi conexión a internet está basada en datos ... ¡así que no puedo permitirme perder datos innecesariamente!
avi
@amith para marcar una respuesta como respuesta, haga clic en la marca de verificación junto a la respuesta de @jgbelacqua.
theTuxRacer
@Kaustubh, ¡pero su respuesta correcta no es una respuesta real! ¡Es un comentario sobre otra respuesta!
avi
¿Cómo es que cada actualización toma 13-15mb? ¿Estás ejecutando el prelanzamiento? Una nueva actualización solo debería tomar unos 100 kB.
user1974

Respuestas:

25

Mirando las recomendaciones para usar Ctrl+ C, creo que sería mejor intentar Ctrl+ Zsuspender el proceso en segundo plano cuando / si la red cae. Es posible que pueda usar fgpara reanudar una vez que vuelva su conectividad. (Sin embargo, no sé cuán robusto es apt-get en este escenario).

Otra posibilidad sería usar axely el apt-fastscript. Se anuncia como acelerar las descargas haciendo descargas paralelas, pero también parece ser bueno para hacer un seguimiento de lo que ya se ha descargado, presumiblemente porque tiene que rastrear las piezas del archivo a medida que se descarga en fragmentos paralelos.

Aquí está el hilo original de Ubuntuforum .

belacqua
fuente
¿puede axel / apt-fast realizar un seguimiento de la actualización de apt-get también? puede hacer una pausa?
avi
@amith: en cuanto a la pausa axel / apt-fast, existe un margen para la pausa, pero no sé si el mecanismo es exactamente lo que necesita.
belacqua
¿Quién hizo el voto negativo? ¡Te voté!
avi
5

Puede detener la descarga de paquetes o la actualización del sistema, presionando "Ctrl + C" y deteniendo el programa. Esto detendrá el programa por completo. La próxima vez que pruebe el mismo comando, apt-get reanudará la descarga desde el punto donde se detuvo la última vez

Amith KK
fuente
@Amith ¡Reanudará los paquetes pero no la actualización! ¡La actualización comienza de nuevo!
avi
1
Sería mejor intentar Ctrl-Z para suspender el proceso en segundo plano si la red se cae; es posible que pueda fgreanudarlo una vez que vuelva su conectividad. Sin embargo, no sé cuán robusto es apt-get en este escenario.
belacqua
1
@jgbelacqua hey !! esto funciona ... ¿cómo puedo marcar esto como la respuesta?
avi
@amithv: agregué el comentario en la parte superior de mi respuesta original, ya que parece funcionar. Estoy muy contento de que ayude.
belacqua
5

Primero pausa ese trabajo. para pausar un trabajo:

Ctrl + z 

para reiniciar el trabajo nuevamente cuando recibe las señales de red:

para ejecutarlo en primer plano, use

fg %1 

para ejecutarlo en segundo plano, use

 bg %1 
AviD1511
fuente
Al menos en bash, no necesita especificar %1for fgo bg, al menos si solo se suspendió.
Xen2050
4

Como me aptitudedijo después de un reinicio inesperado, use:

sudo dpkg --configure -a

Y como man dpkgexplica:

Si se proporciona -a o --pending en lugar del paquete, se configuran todos los paquetes desempaquetados pero no configurados.

Denis Ryzhkov
fuente
2

La instalación / actualización es una operación atómica. O se completa o no. Si la actualización se rompe / se detiene, retrocede al último punto antes de que comience la actualización. Debido a que los encabezados (archivos que contienen datos de paquetes y de dónde obtenerlos) los paquetes, sin embargo, comienzan a descargarse desde el punto en que se interrumpió la conexión. Solo un consejo, no interrumpa una instalación, lo más probable es que inutilice el sistema.

theTuxRacer
fuente
-1

No me gusta la terminal. Tampoco se sabe si es posible usar terminal o no. Pero hay una mala manera de hacer lo que ha pedido. Para esto necesita "Synaptic Package Manager". Si no tiene esto, primero instálelo. Ahora si lo tienes, ábrelo; Haga clic en "Marcar todas las actualizaciones". Esto mostrará todos los paquetes actualizables (actualizables). Ahora comience a descargar paquetes hasta que se pierda su conexión. Si se pierde la conexión, Synaptic se quejará y dejará de actualizarse. No se preocupe, cierre el administrador de paquetes sinápticos. (No abra el Centro de software ni use la línea de comando apt-get through hasta que finalice la gradación ascendente).

Ahora, después de reconectarse, comience la sináptica nuevamente. Y nuevamente haga clic en "Marcar todas las actualizaciones" y comience a actualizar. Esta vez verá, solo aquellos paquetes que no se pudieron descargar, se descargan y otros se omiten.

Esta no es una buena solución, pero funciona. Si el centro sináptico o de software se queja de algún tipo de "Bloqueo", vaya a / var / cache / apt / archives y elimine el archivo "bloqueo" y estará listo para ir :)

Aprendiz curioso
fuente
Una cosa más. No mantenga las actualizaciones pendientes por días. Como Canonical produce actualizaciones más recientes, sus archivos ya descargados quedarán obsoletos.
Aprendiz curioso