Respuestas:
En pocas palabras, en apt-get updaterealidad no instala nuevas versiones de software. En cambio, actualiza las listas de paquetes para las actualizaciones de los paquetes que necesitan actualización, así como los paquetes nuevos que acaban de llegar a los repositorios.
apt-get updatedescarga las listas de paquetes de los repositorios y las "actualiza" para obtener información sobre las versiones más recientes de paquetes y sus dependencias. Hará esto para todos los repositorios y PPA. De http://linux.die.net/man/8/apt-get :
Se utiliza para volver a sincronizar los archivos de índice del paquete desde sus fuentes. Los índices de los paquetes disponibles se obtienen de las ubicaciones especificadas en
/etc/apt/sources.list(5). Siempre se debe realizar una actualización antes de una actualización o dist-upgrade.
apt-get upgradebuscará nuevas versiones de paquetes existentes en la máquina si APT conoce estas nuevas versiones apt-get update.
De http://linux.die.net/man/8/apt-get :
Se utiliza para instalar las versiones más recientes de todos los paquetes actualmente instalados en el sistema desde las fuentes enumeradas en
/etc/apt/sources.list(5). Los paquetes instalados actualmente con nuevas versiones disponibles se recuperan y actualizan; bajo ninguna circunstancia se eliminan los paquetes instalados actualmente, ni se recuperan e instalan paquetes que aún no están instalados. Las nuevas versiones de los paquetes instalados actualmente que no se pueden actualizar sin cambiar el estado de instalación de otro paquete se dejarán en su versión actual. [El énfasis es mío] Primero se debe realizar una actualización para que apt-get sepa que hay nuevas versiones de paquetes disponibles.
apt-get dist-upgradehará el mismo trabajo que realiza apt-get upgrade, además de que también manejará de forma inteligente las dependencias, por lo que podría eliminar paquetes obsoletos o agregar otros nuevos. Ver aquí: ¿Qué es "dist-upgrade" y por qué se actualiza más que "actualizar"?
De http://linux.die.net/man/8/apt-get :
Además de realizar la función de actualización, esta opción también maneja inteligentemente las dependencias cambiantes con nuevas versiones de paquetes; apt-get tiene un sistema de resolución de conflictos "inteligente" e intentará actualizar los paquetes más importantes a expensas de los menos importantes, si es necesario. El
/etc/apt/sources.listarchivo (5) contiene una lista de ubicaciones para recuperar los archivos de paquete deseados. Consulte también apt_preferences (5) para obtener un mecanismo para anular la configuración general de paquetes individuales.
Puede combinar comandos de la &&siguiente manera:
sudo apt-get update && sudo apt-get install foo bar baz foo-dev foo-dbg
o para obtener las versiones más nuevas posibles según los requisitos de versión de las dependencias:
sudo apt-get update && sudo apt-get dist-upgrade
Necesita las sudodos veces, pero dado que, sudode manera predeterminada, no le solicita dentro de los 5 minutos más o menos desde la última sudooperación, se le pedirá su contraseña solo una vez (o nada).
apt-get updatelleva un tiempo, Internet aquí todavía es primitivo.
Una búsqueda en Google puede darle la definición de casi cualquier comando de terminal, como puede ayudar en la terminal. Por ejemplo,
apt-get --help
sudo apt-get update esencialmente tiene tres partes:
sudo
realiza el siguiente comando con capacidades de superusuario (root). Muchas acciones que requieren modificar archivos del sistema o instalar aplicaciones requieren permisos adicionales para pasar.
apt-get
es una herramienta de línea de comandos que Ubuntu usa para instalar, eliminar y administrar paquetes de software
update
es una opción para el uso del programa apt-get que actualiza las listas de paquetes desde un servidor en Internet. Las listas de paquetes proporcionan a la utilidad apt-get información importante sobre los paquetes de software que puede instalar utilizando apt-get. apt-get usa estas listas para determinar qué software instalar cuando se le da un comando para instalar. Por ejemplo
sudo apt-get install guake
instalaría el terminal Guake tal como aparece actualmente en las listas de software locales de mi computadora. Sin embargo, esta puede no ser la versión adecuada o, si el programa es nuevo, es posible que no esté disponible en absoluto. Por lo tanto, al instalar software con apt-get, normalmente escribe
sudo apt-get update
sudo apt-get install <package>
asegurando que apt-get sepa instalar la versión más reciente del paquete.
Otra fuente útil de información es el help.ubuntu.comsitio. Por ejemplo, si buscó en ese sitio apt-get, encontrará AptGet / Howto como uno de los resultados.
&&entre ellos comosudo apt-get update&&sudo apt-get install foo bar baz
&&significa que el segundo comando solo se ejecutará si el primero tiene éxito. Si no le importa el éxito del primer comando, use ;en su lugar.
La ejecución sudo apt-get updatesimplemente asegura que su lista de paquetes de todos los repositorios y PPA esté actualizada. Si no ejecuta este comando, podría estar obteniendo versiones anteriores de varios paquetes que está instalando, o peor aún, problemas de dependencia. Si acaba de agregar un PPA y no lo ha actualizado, nada del PPA funcionará en absoluto, ya que no tiene una lista de paquetes de ese PPA o repositorio.
En pocas palabras: Está altamente recomendable ejecutar sudo apt-get updateantes de instalar, pero puede omitirse si está realmente presionado por el tiempo , a menos que haya cambiado o repositorios PPA desde la última apt-get update.
Actualiza la lista de software disponible en su computadora.
Su computadora tiene una lista (como un catálogo) que contiene todo el software disponible que los servidores Ubuntu tienen disponibles. Pero el software y las versiones disponibles pueden cambiar, por lo que una "actualización" llegará al servidor y verá qué software está disponible para actualizar sus listas locales (o catálogos).
Tenga en cuenta que updatees diferente de upgrade. La actualización, como se mencionó anteriormente, buscará el software disponible y actualizará las listas mientras upgradeinstalará nuevas versiones del software instalado en su computadora (actualizaciones de software reales).
Para actualizar realmente su software (no "actualizar" las listas), ejecute el comando
sudo apt-get upgrade
que generalmente se ejecuta después de una "actualización".
sudo apt-get installPara qué sirve entonces? ¿Instalar paquetes particulares en lugar de una actualización general?
Debe ejecutar apt-get updateuna vez antes de instalar nuevos paquetes, ya que esto actualiza la información del repositorio local. Si va a instalar varios paquetes poco después de otro, no necesita ejecutarlo apt-get update. Además, puede instalar varios paquetes a la vez si escribe
sudo apt-get install package1 package2...
Cuando instala paquetes desde la línea de comandos con sudo apt-get install ...(o sudo aptitude install ...), o cuando los actualiza desde la línea de comandos (con upgradeo en dist-upgradelugar de install), la siguiente información se obtiene de la configuración de su sistema local y no de Internet:
qué paquetes están disponibles
qué versiones de ellos están disponibles
donde deben recuperarse los paquetes disponibles
Ejecutar sudo apt-get update(o sudo aptitude update) actualiza esto en su sistema local. Este es el paso que realmente recupera información sobre qué paquetes se pueden instalar, incluidas las actualizaciones de los paquetes de paquetes actualmente instalados disponibles , de fuentes de Internet.
Cuando instala paquetes con una interfaz GUI (el Administrador de actualizaciones, el Centro de software o el Administrador de paquetes Synaptic), el trabajo sudo apt-get updatese realiza automáticamente. Cuando instala paquetes desde la línea de comandos, no lo es, y siempre debe hacerlo usted mismo a menos que lo haya hecho muy recientemente .
Debido a que la información sobre qué versiones actualizadas de paquetes están disponibles se obtiene al ejecutar sudo apt-get update(o sudo aptitude update), es recomendable ejecutar esto antes de instalar cualquier paquete, y es necesario ejecutarlo para instalar las últimas actualizaciones, incluso si no ha agregado o eliminado ningún Software Fuentes (como un PPA) .
Tenga en cuenta que si va a realizar varias operaciones de administración de paquetes al mismo tiempo, no necesita ejecutar sudo apt-get updateantes de cada una. Solo si la información no se ha actualizado durante un tiempo, debe asegurarse de ejecutarla.
Como Eliah Kagan mencionó anteriormente, esperaría que una aplicación GUI se ejecutara apt-get updateantes apt-get install/ apt-get upgrade, pero acabo de descubrir un interesante error 404, en una máquina VM de seguridad ofensiva relativamente nueva, que me dejó perplejo por un minuto.
Desde la línea de comandos, ejecuté apt-get update, y luego probé nuevamente el comando Herramientas del sistema / Actualización de software, y esta vez se ejecutó sin errores 404.
Entonces, supongo que no siempre se puede suponer que apt-get updatese ejecuta desde aplicaciones GUI ...
apt-getque con la verificación automática realizada al ejecutar el Actualizador de software / Administrador de actualizaciones? ¿Utiliza un proxy HTTP? ¿Y puedes hacer que vuelva a suceder, o ha sucedido solo una vez? Si se trata de una anomalía aislada, me pregunto si tal vez el problema se deba a una mala configuración temporal del servidor. ¿Qué espejo usas? Con más información, tal vez podría mejorar mi respuesta. (Por cierto, ¿se pretende que esto sea una respuesta por separado, o debería convertirse en un comentario?)
Como han dicho muchas personas antes que yo, esto actualiza su repositorio local (lista de paquetes).
Puede tener problemas si intenta instalar
apt-get install foobar
y foobar o una dependencia no tienen su última versión en el repositorio. Esto puede ser especialmente problemático si instala un archivo .deb manualmente o un ppa de un tercero.
Básicamente se asegura de que su lista coincida con la lista maestra .
Consideremos el ejemplo de instalación del reproductor multimedia VLC en Ubuntu:
sudo apt-get update
Verificará los repositorios para las actualizaciones disponibles.
Mientras
sudo apt-get install vlc vlc-plugin-pulse mozilla-plugin-vlc
instalará el reproductor multimedia VLC de los repositorios que buscamos.
Si inició sesión como usuario root (administrador), no tiene que usarlo sudoporque ya tiene los privilegios de superusuario.
sudo apt-get updatecomandos cada vez que instalamos paquetes? ¿Cuál es la desventaja si no lo hacemos?