apt full-upgrade versus apt-get dist-upgrade

34

De acuerdo con las páginas del manual:

  • apt tiene parámetro full-upgrade
  • apt-gettiene parámetro dist-upgrade.

¿Ambos son el mismo comando?

por cierto: ¿cuál es oficialmente el comando recomendado en Ubuntu 16.04? apto apt-get?

a903user
fuente
El comando oficialmente recomendado para Ubuntu 16.04 y versiones posteriores es en aptlugar de apt-get. Compare help.ubuntu.com/16.04/serverguide/package-management.html con help.ubuntu.com/14.04/serverguide/package-management.html .
wisbucky

Respuestas:

24

apt full-upgraderealiza la misma función que apt-get dist-upgrade.

hombre apto

   full-upgrade (apt-get(8))
       full-upgrade performs the function of upgrade but will remove currently installed packages if this is needed to upgrade the system as a whole.

hombre apto-get

   dist-upgrade
       dist-upgrade in addition to performing the function of upgrade, also intelligently handles changing dependencies with new versions of packages; apt-get has a "smart" conflict resolution system,
       and it will attempt to upgrade the most important packages at the expense of less important ones if necessary. The dist-upgrade command may therefore remove some packages. The
       /etc/apt/sources.list file contains a list of locations from which to retrieve desired package files. See also apt_preferences(5) for a mechanism for overriding the general settings for
       individual packages.
schod
fuente
44
¿Por qué crear confusión con un nuevo nombre que hace lo mismo? Puedes hacerlo apt dist-upgrade(lo acabo de probar) o puedes hacerlo apt full-upgradey estás diciendo que hacen lo mismo.
Z boson
77
"actualización completa" se trata de eliminar los paquetes instalados cuando sea necesario, mientras que "dist-upgrade" se trata de "manejar inteligentemente las dependencias cambiantes con nuevas versiones de paquetes", ¿cómo es la misma función?
Tristan
3
Es la misma función. Es solo un alias aptpara el apt-getcomando. sources.debian.org/src/apt/1.6.1/cmdline/apt.cc/?hl=74#L74 (aunque la macro real invocada parece faltar en el repositorio).
Iain Collins
2
@Zboson La razón del nuevo nombre es que el nombre "dist-upgrade" era extremadamente confuso para muchos usuarios: aunque se llamaba así porque era algo que necesitabas al actualizar entre lanzamientos de distribución, sonaba demasiado como si fuera solo para uso en esa circunstancia, mientras que de hecho es mucho más aplicable.
Colin Watson
2

apt y apt-get son dos comandos diferentes. aptes el comando más nuevo y debe usarse como predeterminado. Debería cambiar a usar apt sobre apt-get ya que apt es mejor.

Mark Dymek
fuente
44
¿Por qué / cómo es mejor?
mafrosis
Desde la aptpágina del manual:The apt(8) commandline is designed as an end-user tool and it may change behavior between versions. While it tries not to break backward compatibility this is not guaranteed either if a change seems beneficial for interactive use.
Lokesh
0

Apt es la versión más nueva del comando. Debería cambiar a usar apt en lugar de apt-get it better y da una mejor idea de lo que está haciendo el comando.

En cuanto a apt-full-upgrade y apt-get-dist es el mismo comando. Pero, nuevamente, apt es el comando más nuevo.

Por ejemplo, cuando usa apt, obtiene una barra de progreso que le indica cuánto de la instalación / actualización se realiza.

marca
fuente
0

Use apt como primera opción, pero si está haciendo scripts, use apt-get. Apt-get tiene una salida más estable (lo que significa que el formato de salida se deja solo tanto como sea posible para no romper los scripts que analizan esa salida automáticamente). Apt-get también tiene algunos comandos de bajo nivel que no están disponibles en apt.

Las páginas del manual para apt y apt-get describen la actualización completa y dist-upgrade de manera un poco diferente, pero probablemente son el mismo comando (apt acepta dist-upgrade como un alias de la actualización completa). Esto sirve como un buen ejemplo de estabilidad apt-gets. En apt, el nombre se cambió para que sea más fácil de usar, mientras que en apt-get el nombre permanece sin cambios para no romper la compatibilidad con los scripts antiguos.

David Trammell
fuente