663 votes

Que fait "sudo apt-get update" ?

Je me demande ce que fait sudo apt-get update ?

Qu'est-ce que cela met à jour ?

682voto

BezantSoft Points 1

En résumé, apt-get update n'installe pas réellement de nouvelles versions de logiciels. Au lieu de cela, il met à jour les listes de paquets pour les mises à niveau des paquets qui doivent être mis à niveau, ainsi que les nouveaux paquets qui viennent d'arriver dans les dépôts.

  • apt-get update télécharge les listes de paquets à partir des dépôts et les "met à jour" pour obtenir des informations sur les dernières versions des paquets et de leurs dépendances. Il effectuera cette opération pour tous les dépôts et les PPA. De http://linux.die.net/man/8/apt-get:

    Utilisé pour resynchroniser les fichiers d'index des paquets à partir de leurs sources. Les index des paquets disponibles sont récupérés à partir de l'emplacement spécifié 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 récupérera les nouvelles versions des paquets existants sur la machine si APT connaît ces nouvelles versions grâce à apt-get update.

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

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

  • apt-get dist-upgrade fera le même travail que apt-get upgrade, plus il gérera intelligemment les dépendances, donc il pourrait supprimer des paquets obsolètes ou en ajouter de nouveaux. Voir ici : Qu'est-ce que "dist-upgrade" et pourquoi met-il à jour plus que "upgrade"?

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

    En plus de réaliser la fonction de mise à niveau, cette option gère aussi intelligemment les dépendances changeantes avec les nouvelles versions de paquets; apt-get possède un système de résolution de conflits "intelligent", et il tentera de mettre à niveau les paquets les plus importants au détriment des moins importants, si nécessaire. Le fichier /etc/apt/sources.list(5) contient une liste d'emplacements à partir desquels récupérer les fichiers de paquets désirés. Voir aussi apt_preferences(5) pour un mécanisme permettant de remplacer les paramètres généraux pour des paquets individuels.

Vous pouvez combiner des commandes avec && de la manière suivante :

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 versions des dépendances:

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

Vous avez besoin de sudo les deux fois, mais comme sudo par défaut ne vous demande pas votre mot de passe dans les 5 minutes suivant la dernière opération sudo, vous serez invité à saisir votre mot de passe une seule fois (ou pas du tout).

17 votes

Devons-nous toujours exécuter la commande sudo apt-get update chaque fois que nous installons des packages? Quel est le désavantage si nous ne le faisons pas?

21 votes

@JohnnyQ Si vous ne lancez pas cette commande, vous risquez d'installer un package obsolète.

1 votes

Ah, cela semble être simplement une question de convention alors. Je suppose que ce n'est pas vraiment nécessaire, surtout si vous utilisez juste des packages de base avec des commandes de base qui ne sont généralement pas mises à jour. Le problème dans mon cas est que apt-get update prend du temps, l'internet ici est encore primitif.

57voto

Alex Points 1438

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 comprend essentiellement trois parties :

sudo

exécute la commande suivante avec des capacités de super-utilisateur (root). De nombreuses actions nécessitant la modification de fichiers système ou l'installation d'applications nécessitent des autorisations supplémentaires pour être exécutées.

apt-get

est un outil en ligne de commande utilisé par Ubuntu pour installer, supprimer et gérer des packages logiciels

update

est une option du programme apt-get qui permet de mettre à jour les listes de packages depuis un serveur sur Internet. Les listes de packages fournissent à l'utilitaire apt-get des informations importantes sur les packages logiciels que vous pouvez installer en utilisant apt-get. apt-get utilise ces listes pour déterminer quels logiciels installer lorsqu'une commande d'installation est donnée. 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. Cependant, il se peut que ce ne soit pas la version appropriée, ou si le programme est nouveau, il pourrait ne pas être disponible du tout. Ainsi, lors de l'installation de logiciels avec apt-get, vous tapez généralement

sudo apt-get update
sudo apt-get install 

en veillant à ce qu'apt-get sache installer la version la plus récente du package.

Une autre source utile d'informations est le site help.ubuntu.com. Par exemple, si vous avez effectué une recherche sur ce site pour apt-get, vous trouveriez AptGet/Howto parmi les résultats.

0 votes

Alex, puis-je essentiellement utiliser la commande comme vous l'avez mise : "apt-get update apt-get install " ? Fondamentalement, 2 choses peuvent être effectuées en tapant simplement les 2 commandes ensemble comme ceci?

1 votes

@Elysium Oui, si vous avez && entre eux comme sudo apt-get update&&sudo apt-get install foo bar baz

10 votes

Utiliser && signifie que la deuxième commande ne s'exécutera que si la première réussit. Si vous ne vous souciez pas de la réussite de la première commande, utilisez ; à la place.

23voto

BezantSoft Points 1

Exécuter sudo apt-get update assure simplement que votre liste de packages de tous les dépôts et PPA est à jour. Si vous ne lancez pas cette commande, vous pourriez obtenir des versions plus anciennes de divers 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 ne fonctionnera à partir du PPA car vous n'avez pas de liste de packages de ce PPA ou dépôt.

En résumé : Il est fortement recommandé d'exécuter sudo apt-get update avant d'installer, mais cela peut être omis si vous êtes vraiment pressé, sauf si vous avez changé de dépôts ou de PPAs depuis le dernier apt-get update.

0 votes

Merci. Si j'installe plusieurs 2 packages, dois-je exécuter apt-get update deux fois ou une seule fois ? Est-ce une mise à jour pour TOUS les packages ou seulement ceux qui suivent ? (si cela a du sens)

1 votes

@RobertSinclair Une fois suffit - il extrait des listes de paquets de tous les dépôts. Exécuter sudo apt update une deuxième fois ne fait rien de nouveau sauf si vous ajoutez un dépôt, ou que les mainteneurs du dépôt ajoutent / mettent à jour des paquets dans le dépôt.

16voto

ebo Points 5435

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

Votre ordinateur possède une liste (comme un catalogue) qui contient tous les logiciels disponibles que les serveurs Ubuntu ont à disposition. Mais les logiciels disponibles et les versions peuvent changer, donc une "mise à jour" va interroger le serveur pour voir quels logiciels sont disponibles afin de mettre à jour ses listes locales (ou catalogues).

Notez que update est différent de upgrade. Update, comme mentionné ci-dessus, va récupérer les logiciels disponibles et mettre à jour les listes tandis que upgrade va installer de nouvelles versions des logiciels installés sur votre ordinateur (véritables mises à jour logicielles).

Pour effectivement mettre à jour vos logiciels (et non pas "mettre à jour" les listes), vous devez exécuter la commande

sudo apt-get upgrade

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

13voto

zxmon21 Points 1

Vous devez exécuter apt-get update une fois avant d'installer de nouveaux packages, car cela met à jour les informations du référentiel local.

Si vous prévoyez d'installer plusieurs packages peu de temps après l'autre, vous n'avez pas besoin d'exécuter apt-get update avant chaque installation ; juste une fois avant la première installation.

En outre, vous pouvez installer plusieurs packages à la fois si vous tapez sudo apt-get install package1 package2..., mais vous devez toujours exécuter apt-get update avant l'installation de plusieurs packages.

0 votes

Super astuce pour ça!

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X