¿Ya no es necesario apt dist-upgrade?


22

Antes de que Ubuntu 18.04 estuviera disponible, estaba usando Ubuntu 16.04. Y estaba usando sudo apt-get update, sudo apt-get upgradey sudo apt-get dist-upgradepara hacer la actualización y las cosas de actualización. Con Ubuntu 18.04, cambié a usar en aptlugar de apt-get. Lo extraño para mí es que sudo apt dist-upgradeya no tiene ningún efecto: hago la actualización y la actualización usando sudo apt updatey sudo apt upgade, pero cuando ejecuto sudo apt dist-upgrade, no sucede nada contrario a cuando estaba usando sudo apt-get dist-upgrade.
Cuando usé sudo apt-get dist-upgradealgunos paquetes fueron eliminados y otros instalados. Sin embargo, cuando corro sudo apt dist-upgrade, no pasó nada ... Todo lo que obtengo es:

sudo apt dist-upgrade 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.  

Y esto sucede cada vez desde que comencé a usar en aptlugar de apt-get.
¿Es algo relacionado con apt(es decir, sudo apt upgradereemplaza a ambos upgradey dist-upgrade) o cuál es el problema exactamente?


Tendré curiosidad por ver la respuesta completa, pero esto parece indicar que estás en lo correcto: askubuntu.com/questions/81585/…
rm-vanda

Respuestas:


29

apt-get upgradevs apt upgradevsapt full-upgrade

apt-get upgradesolo actualiza las aplicaciones, herramientas y utilidades. No instala el nuevo kernel de Linux del sistema operativo.

apt upgradeactualiza las aplicaciones, herramientas y utilidades e instala el nuevo kernel de Linux del sistema operativo. Sin embargo, nunca elimina los paquetes viejos.

apt full-upgradeactualiza las aplicaciones, herramientas y utilidades e instala el nuevo kernel de Linux del sistema operativo. También elimina paquetes antiguos si es necesario para la actualización.

Me parece que apt full-upgradehace lo mismo que apt-get dist-upgrade. Es decir, full-upgradebuscará e instalará un nuevo núcleo si está disponible y eliminará los paquetes antiguos si la eliminación es necesaria para la actualización.

los núcleos son la parte fundamental del sistema operativo. Por esta razón, la versión anterior del kernel nunca se reemplaza por la nueva versión cuando ejecuta apt upgradeo apt full-upgrade. Se instala la nueva versión del kernel y la versión existente se mantiene como está. La configuración en el grub se cambia para arrancar desde la nueva versión de forma predeterminada durante el proceso de actualización. Si el nuevo kernel no funciona por alguna razón, uno puede arrancar desde el antiguo kernel desde el menú avanzado de grub.

Tenga en cuenta apt full-upgradeque no elimina las versiones anteriores de los núcleos, ya que instala la versión más reciente. Para eliminar estos uno debe usar apt autoremove.

¿Por qué cambiar el nombre de dist-upgradea full-upgrade?

  • Si usa, apt-getentonces necesita usardist-upgrade
  • Si usa, aptentonces necesita usarfull-upgrade

Creo que dist-upgradefue un poco confuso. Por ejemplo, esto no se actualiza de Ubuntu 16.04 a Ubuntu 18.04. Solo actualiza el kernel y otras cosas dentro de Ubuntu 16.04.

Creo que full-upgradees más intuitivo que dist-upgrade.

Consulte ¿Qué es "dist-upgrade" y por qué se actualiza más que "actualizar"? para más detalles.

Divulgación completa: solo soy un usuario de Ubuntu, no tomé la decisión de cambiarlo. Estas son mis opiniones personales.

Espero que esto ayude


1
+1, pero para ser pedante, desde la aptpropia página de manual : upgrade nunca elimina los paquetes existentes , mientras full-upgrade que eliminará los paquetes instalados actualmente si es necesario para actualizar el sistema en su conjunto . Además, apt dist-upgradeparece funcionar bien en mis sistemas (probablemente por compatibilidad con versiones anteriores).
Sr. Shunz

@ MrShunz Sé que esto es lo que dice la página de manual. También se menciona en la otra respuesta que agregaré como referencia.
user68186

apt upgradey apt-get upgrademaneje la cosa diferente, vea hiroom2.com/2016/05/20/ubuntu-16-04-debian-8-apt-command/…
mook765

@ mook765 ¡Gracias! Editaré mi respuesta en función de su referencia.
user68186

2
"Creo que la actualización de dist fue un poco confusa". Juro que este es el eufemismo del siglo con respecto a apt. ¿Hay algo en apt que no sea confuso? ¿Qué tiene que ver el nombre "apt" o "aptitude" con la administración de paquetes en primer lugar? ¿Por qué hay 3 variaciones de apt? ¿Por qué apt- get modifica mi sistema? ¿Por qué "actualizar" no actualiza mi sistema? ¿Por qué "actualizar" no actualiza mi sistema? ¿Por qué no debería simplemente actualizar su caché interna antes de actualizar automáticamente como un SO sano? ¿Por qué la purga desinstala un paquete en lugar de purgarlo del caché? etc ....
Mehrdad

15

dist-upgradeha sido reemplazado en Ubuntu por full-upgrade.

Los usuarios mayores de Ubuntu recuerdan cuándo dist-upgradese usaba regularmente para instalar paquetes de kernel. Los nombres de los paquetes del kernel cambian con la versión, lo que los hace no elegibles para la normalidad upgrade. full-upgradese agregó para satisfacer con seguridad esta necesidad del flujo de paquetes de Ubuntu.

El propósito original de dist-upgradees migrar entre versiones de Debian (más o menos equivalente a Ubuntu do-release-upgrade). Por lo tanto, hay un poco menos de protección contra consecuencias imprevistas. Lea los cambios propuestos cuidadosamente antes de aceptar.

Usar en dist-upgradelugar de full-upgradeprobablemente no dañará un sistema saludable. Millones de usuarios durante una década han solucionado muchos de los errores del flujo de trabajo apto. Sin embargo, dist-upgradepuede tener resultados inesperados en un sistema con paquetes rotos retenidos u otros problemas no resueltos.


+1 para el propósito original de dist-upgrade. sources.listSupongo que habría que jugar con el para usarlo de esta manera.
user68186
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.