Je me demande ce que fait sudo apt-get update
?
Qu'est-ce que cela met à jour ?
Je me demande ce que fait sudo apt-get update
?
Qu'est-ce que cela met à jour ?
Lorsque vous installez des paquets depuis la ligne de commande avec sudo apt-get install ...
(ou sudo aptitude install ...
), ou lorsque vous les mettez à jour 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 non depuis Internet :
quels paquets sont disponibles
quelles versions d'entre eux sont disponibles
d'où les paquets disponibles doivent être récupérés
Exécuter sudo apt-get update
(ou sudo aptitude update
) met à jour ces informations sur votre système local. C'est l'étape qui récupère effectivement des informations sur les packages pouvant être installés, incluant les mises à jour des packages déjà installés disponibles, depuis des sources Internet.
Lorsque vous installez des paquets avec une interface graphique (le Gestionnaire de Mises à Jour, le Centre de Logiciels, ou le Gestionnaire de Paquets Synaptic), le travail de sudo apt-get update
est fait automatiquement. Lorsque vous installez des paquets depuis la ligne de commande, ce n'est pas le cas, et vous devriez toujours le faire vous-même sauf si vous l'avez fait très récemment.
Parce que les informations sur les versions mises à jour des paquets sont obtenues en exécutant sudo apt-get update
(ou sudo aptitude update
), il est conseillé de le faire avant d'installer un paquet, et nécessaire de le faire pour installer les dernières mises à jour, même si vous n'avez pas ajouté ou supprimé une Source de Logiciels (comme un PPA).
Veuillez noter que si vous prévoyez d'effectuer plusieurs opérations de gestion de paquets en même temps, vous n'avez pas besoin d'exécuter sudo apt-get update
avant chacune. C'est seulement si les informations n'ont pas été mises à jour depuis un certain temps, que vous devriez vous assurer de le faire.
Comme l'ont dit beaucoup de personnes avant moi, cela met à jour votre dépôt local (liste de packages).
Vous pourriez rencontrer des problèmes si vous essayez d'installer
apt-get install foobar
et que foobar ou une dépendance n'ont pas leur dernière version dans le dépôt. Cela peut être particulièrement problématique si vous installez manuellement un fichier .deb ou un ppa provenant d'un tiers.
Essentiellement, cela s'assure que votre liste correspond à la liste principale.
Comme Eliah Kagan l'a mentionné ci-dessus, vous vous attendriez à ce qu'une application GUI exécute 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 offensive-security relativement nouvelle, qui m'a laissé perplexe pendant une minute.
Depuis la ligne de commande, j'ai exécuté apt-get update
, puis j'ai essayé à nouveau la commande Outils Système/Mise à jour logicielle, et cette fois-ci cela s'est exécuté sans erreur 404.
Donc, je suppose que l'on ne peut pas toujours supposer que apt-get update
est exécuté à partir d'applications GUI...
Intéressant... Pourrait-il y avoir 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 le Gestionnaire de mises à jour logicielles / Gestionnaire de mises à jour? Utilisez-vous un proxy HTTP? Et êtes-vous capable de le reproduire, ou s'est-il produit qu'une seule fois? S'il s'agit d'une anomalie isolée, je me demande si le problème est peut-être dû à une mauvaise configuration temporaire du serveur. Quel miroir utilisez-vous? Avec plus d'informations, peut-être pourrais-je améliorer ma réponse. (Au fait, s'agit-il d'une réponse séparée, ou devrait-elle être convertie en un commentaire?)
Considérons l'exemple de l'installation de VLC media player sur Ubuntu :
sudo apt-get update
Cela vérifiera les dépôts pour les mises à jour disponibles.
Alors que
sudo apt-get install vlc vlc-plugin-pulse mozilla-plugin-vlc
installera le lecteur multimédia VLC à partir des dépôts que nous avons recherchés.
Si vous êtes connecté en tant qu'utilisateur root (administrateur), vous n'avez pas à utiliser sudo
, car vous avez déjà les privilèges de super utilisateur.
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.