Question Que fait «sudo apt-get update»?


Je me demande quoi sudo apt-get update Est-ce que?

Qu'est-ce qu'il met à jour?


450
2017-11-27 00:07


origine




Réponses:


En un mot, apt-get update n'installe pas réellement de nouvelles versions de logiciel. Au lieu de cela, il met à jour les listes de packages pour les mises à niveau des packages nécessitant une mise à niveau, ainsi que les nouveaux packages qui viennent d'arriver dans les référentiels.

  • apt-get update télécharge les listes de paquets à partir des référentiels et les "met à jour" pour obtenir des informations sur les versions les plus récentes des packages et leurs dépendances. Il le fera pour tous les référentiels et les PPA. De http://linux.die.net/man/8/apt-get:

    Utilisé pour resynchroniser les fichiers d'index du package à partir de leurs sources. Les index des packages disponibles sont récupérés à partir des emplacements spécifiés dans /etc/apt/sources.list(5). Une mise à jour doit toujours être effectuée avant une mise à niveau ou une dist-upgrade.

  • apt-get upgrade va chercher de nouvelles versions de paquets existant sur la machine si APT connaît ces nouvelles versions par le biais de apt-get update.

    De http://linux.die.net/man/8/apt-get:

    Utilisé pour installer les dernières versions de tous les packages actuellement installés sur le système à partir des sources énumérées dans /etc/apt/sources.list(5). Les packages actuellement installés avec les nouvelles versions disponibles sont récupérés et mis à niveau. En aucun cas, les packages actuellement installés ne sont supprimés, et les packages qui ne sont pas déjà installés ne sont ni récupérés ni installés. Les nouvelles versions des packages actuellement installés qui ne peuvent pas être mis à niveau sans modifier le statut d'installation d'un autre package seront conservées dans leur version actuelle. [Emphase mien] Une mise à jour doit être effectuée en premier pour que apt-get sache que de nouvelles versions de paquets sont disponibles.

  • apt-get dist-upgrade fera le même travail qui est fait par apt-get upgradeDe plus, il traitera intelligemment les dépendances, de sorte qu'il pourrait supprimer des paquets obsolètes ou en ajouter de nouveaux. Vois ici: Qu'est-ce que "dist-upgrade" et pourquoi met-il à jour plus que "upgrade"?

    De http://linux.die.net/man/8/apt-get:

    Outre la fonction de mise à niveau, cette option gère également de manière intelligente la modification des dépendances avec les nouvelles versions des packages. apt-get a un système de résolution de conflit "intelligent", et tentera de mettre à jour les paquets les plus importants au détriment d’autres moins importants, si nécessaire.   le /etc/apt/sources.list(5) le fichier contient une liste d'emplacements de   qui permet de récupérer les fichiers de package souhaités. Voir aussi apt_preferences (5) pour un mécanisme permettant de dépasser les paramètres généraux des packages individuels.

Vous pouvez combiner des commandes avec && comme suit:

sudo apt-get update && sudo apt-get install foo bar baz foo-dev foo-dbg

ou pour obtenir les dernières versions possibles selon les exigences de version des dépendances:

sudo apt-get update && sudo apt-get dist-upgrade

Vous avez besoin sudo les deux fois, mais depuis sudo par défaut ne vous invite pas dans les 5 minutes environ depuis le dernier sudo opération, vous serez invité pour votre mot de passe qu'une seule fois (ou pas du tout).


483
2017-11-27 00:17



Avons-nous toujours besoin de courir sudo apt-get update commande chaque fois que nous installons des paquets? Quel est l'inconvénient si nous ne le faisons pas? - JohnnyQ
@JohnnyQ Si vous n'exécutez pas cette commande, vous pouvez installer un package obsolète. - hexafraction
ah, ça ressemble à une convention alors. Donc, je suppose que ce n'est vraiment pas nécessaire, surtout si vous utilisez uniquement des paquets de base avec des commandes de base qui ne sont pas mises à jour habituellement. Le problème dans ma situation est que apt-get update prend un moment, internet ici est encore primitif. - JohnnyQ
@JohnnyQ Pour certains paquets, il est très important que vos listes de paquets soient à jour. Des exemples de tels packages incluent des logiciels critiques pour la sécurité. - hexafraction
@JohnnyQ, si votre mise à jour apt-get est lente, votre apt-get dist-upgrade sera également lent, ce n'est donc pas vraiment un argument pour ne pas faire d'abord apt-get update. Btw, vous pouvez accélérer votre mise à jour apt-get en regardant dans le dossier /etc/apt/sources.d/ pour voir si des référentiels personnalisés ont été ajoutés et l'un de ceux-ci peut ne pas répondre, ce qui ralentira tout le processus de mise à jour. - Mladen B.


Une recherche sur Google peut vous donner la définition de presque n'importe quelle commande de terminal, tout comme --help dans le terminal. Par exemple,

apt-get --help

sudo apt-get update comporte essentiellement trois parties:

sudo

exécute la commande suivante avec des fonctionnalités super-utilisateur (root). De nombreuses actions nécessitant de modifier les fichiers système ou d'installer des applications nécessitent des autorisations supplémentaires pour pouvoir passer.

apt-get

est un outil de ligne de commande qu'Ubuntu utilise pour installer, supprimer et gérer des progiciels

update

est une option à utiliser par le programme apt-get qui met à jour les listes de paquets d'un serveur sur Internet. Les listes de paquets fournissent à l'utilitaire apt-get des informations importantes sur les logiciels que vous pouvez installer avec apt-get. apt-get utilise ces listes pour déterminer le logiciel à installer en cas d’installation d’une commande. Par exemple

sudo apt-get install guake

installerait le terminal Guake tel qu’il est actuellement répertorié dans les listes de logiciels locaux de mon ordinateur. Cela peut ne pas être la version appropriée ou, si le programme est nouveau, il peut ne pas être disponible du tout. Ainsi, lors de l'installation du logiciel avec apt-get, vous tapez généralement

sudo apt-get update
sudo apt-get install <package>

s'assurer que apt-get sait installer la version la plus récente du package.

Une autre source d’information utile est la help.ubuntu.com site. Par exemple, si vous avez recherché ce site pour apt-get tu trouverais AptGet / Howto comme l'un des résultats.


42
2017-11-27 00:16



Alex, puis-je utiliser la commande comme vous l'avez dit: "apt-get update apt-get install <paquet>" En gros, 2 choses peuvent être effectuées en tapant les 2 commandes ensemble comme ceci? - Elysium
@Elysium Oui, si vous avez && entre eux comme sudo apt-get update&&sudo apt-get install foo bar baz - hexafraction
En utilisant && signifie que la deuxième commande ne fonctionnera que si le premier réussit. Si vous ne vous souciez pas du succès de la première commande, utilisez ; au lieu. - Flimm
Une recherche sur Google m'a conduit à cette question / réponse. Juste FYI ;) - teewuane


Fonctionnement sudo apt-get update S'assure simplement que votre liste de paquets de tous les référentiels et PPA est à jour. Si vous n'exécutez pas cette commande, vous pourriez obtenir d'anciennes versions de différents packages que vous installez, ou pire, des problèmes de dépendance. Si vous venez d'ajouter un PPA et que vous ne l'avez pas mis à jour, rien de l'APP ne fonctionnera du tout, car vous n'avez pas de liste de packages provenant de cet PPA ou de ce référentiel.

En bref: c'est très recommandé de courir sudo apt-get update avant l'installation, mais il peut être sauté si vous êtes vraiment pressé par le temps à moins que vous ayez changé de référentiel ou de PPA depuis le dernier apt-get update.


18
2018-06-05 23:21





Vous devez courir apt-get update une fois avant d'installer de nouveaux paquets car cela met à jour les informations du référentiel local. Si vous installez plusieurs packages les uns après les autres, vous n'avez pas besoin de lancer apt-get update. En outre, vous pouvez installer plusieurs packages à la fois si vous tapez sudo apt-get install package1 package2...


12
2018-06-05 23:23



Belle astuce pour ça! - Emerson Hsieh


Il met à jour la liste des logiciels disponibles sur votre ordinateur.

Votre ordinateur a une liste (comme un catalogue) contenant tous les logiciels disponibles sur les serveurs Ubuntu. Mais les logiciels et les versions disponibles peuvent changer, donc une "mise à jour" va frapper le serveur et voir quels logiciels sont disponibles pour mettre à jour ses listes locales (ou catalogues).

Notez que update est différent de upgrade. Mise à jour, comme mentionné ci-dessus, va chercher les logiciels disponibles et mettre à jour les listes tout en upgrade va installer de nouvelles versions du logiciel installé sur votre ordinateur (mises à jour logicielles réelles).

Pour réellement mettre à jour votre logiciel (pas "mettre à jour" les listes), vous exécutez la commande

sudo apt-get upgrade

qui est généralement exécuté après une "mise à jour".


10
2017-11-27 00:21



Quel est sudo apt-get install pour alors? Installer des paquets particuliers au lieu d'une mise à niveau générale? - Peter Mortensen


Lorsque vous installez des packages à partir de la ligne de commande avec sudo apt-get install ... (ou sudo aptitude install ...), ou lorsque vous les mettez à niveau depuis la ligne de commande (avec upgrade ou dist-upgrade au lieu de install), les informations suivantes sont obtenues à partir de la configuration de votre système local, et ne pas à partir d'Internet:

  1. quels paquets sont disponibles

  2. quelles versions sont disponibles

  3. où les paquets disponibles doivent être récupérés de

Fonctionnement sudo apt-get update (ou sudo aptitude update) met à jour cela sur votre système local. C'est l'étape qui récupère les informations sur les paquets pouvant être installés, y compris quelles mises à jour des paquets de paquets actuellement installés sont disponibles, à partir de sources Internet.

Lorsque vous installez des packages avec une interface graphique (Update Manager, Software Center ou Synaptic Package Manager), le travail de sudo apt-get update se fait automatiquement. Lorsque vous installez des paquets à partir de la ligne de commande, ce n’est pas le cas et vous devez toujours le faire vous-même sauf si vous l'avez fait très récemment.

Parce que des informations sur les versions mises à jour des packages sont disponibles en exécutant sudo apt-get update (ou sudo aptitude update), il est conseillé de l'exécuter avant d'installer un paquet, et de l'exécuter pour installer les dernières mises à jour, même si vous n'avez ajouté ou supprimé aucune source de logiciel (telle qu'un PPA).

S'il vous plaît noter que si vous allez effectuer plusieurs opérations de gestion de paquets dans le même temps, vous n'avez pas besoin d'exécuter sudo apt-get update avant chacun C'est seulement si l'information n'a pas été mise à jour depuis un moment que vous devez vous assurer de l'exécuter.


4
2018-06-05 23:59





Comme Eliah Kagan mentionné ci-dessus, vous auriez attendre qu'une application graphique s'exécuterait apt-get update avant apt-get install / apt-get upgrade, mais je viens de découvrir une erreur 404 intéressante, sur une machine VM à sécurité offensive relativement nouvelle, qui m'a laissé perplexe pendant une minute.

De la ligne de commande, j'ai couru apt-get updateet ensuite essayé à nouveau la commande Outils système / Software-Update, et cette fois, il a été exécuté sans erreurs 404.

Donc, je suppose que vous ne pouvez pas toujours supposer que apt-get update est exécuté à partir d'applications GUI ...


4
2018-04-02 02:58



Intéressant ... Y a-t-il une situation de réseau inhabituelle entre vous et le serveur qui est mieux gérée lorsque vous exécutez apt-get que par la vérification automatique effectuée en exécutant Software Updater / Update Manager? Utilisez-vous un proxy HTTP? Et êtes-vous en mesure de vous y rendre, ou est-ce arrivé juste une fois? Si c'est une anomalie isolée, je me demande si le problème est peut-être dû à une mauvaise configuration du serveur temporaire. Quel miroir utilisez-vous? Avec plus d'informations, je pourrais peut-être améliorer ma réponse. (Btw, est-ce prévu comme une réponse séparée, ou devrait-il être converti en un commentaire?) - Eliah Kagan


Comme indiqué par beaucoup de gens avant moi, cela met à jour votre dépôt local (liste de paquets).

Vous pouvez rencontrer des problèmes si vous essayez d'installer

apt-get install foobar

et foobar ou une dépendance n'ont pas leur dernière version dans le référentiel. Cela peut être particulièrement problématique si vous installez un fichier .deb manuellement ou un fichier ppa d'un tiers.

Fondamentalement, il s'assure votre liste correspond à la maîtriser liste.


2
2018-06-05 23:38