Question Comment installer les mises à jour via la ligne de commande?


Lorsque je me connecte à mon serveur Web via SSH, je vois les informations suivantes:

88 packages can be updated.
80 updates are security updates

j'ai essayé apt-get update puis apt-get upgrade mais chaque fois que je me connecte, je vois toujours le message sur les mises à jour. Comment les installer?


587
2017-10-05 13:44


origine


Avez-vous essayé ceci en premier: sudo apt-get clean Cela devrait nettoyer le cache. - user2635584


Réponses:


Essaye ça:

sudo apt-get update        # Fetches the list of available updates
sudo apt-get upgrade       # Strictly upgrades the current packages
sudo apt-get dist-upgrade  # Installs updates (new ones)

Documentation sur chacun apt-get l'option peut être trouvée dans le les pages de manuel pour apt-get. Ceux-ci sont également disponibles en cours d'exécution man apt-get sur ton ordinateur.


736
2017-10-05 14:05



Dois-je toujours redémarrer avec sudo reboot après ça? - hellboy
Je dois aussi courir apt-get autoremove ou je manque rapidement d'espace disque. - Jeff
J'avais besoin d'ajouter -y pour que ça marche. Ubuntu 17.10 - T04435


C'est un comportement normal.

Le message que vous voyez lors de la connexion a été ajouté au statut du serveur "Message du jour", qui est uniquement actualisé chaque jour calendaire (ou au démarrage / démarrage du serveur). Regardez le contenu en utilisant

cat /etc/motd

Vous voyez toujours les mêmes mises à jour disponibles, après avoir exécuté

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

est à prévoir. Si vous relancez ensuite cette commande, vous seulement être invité à toute autre mise à jour si des mises à jour encore plus récentes ont été publiées.


83
2017-10-05 20:26



Je remarque que tout changement de fichier dans l'ensemble du système ne s'affiche pas avant le prochain jour du calendrier. Existe-t-il un moyen de "rafraîchir" pour voir immédiatement les changements? - aljuaid86
Voulez-vous dire des mises à jour pour le contenu de Le message du jour, ou ne pas obtenir ce que vous voulez après avoir exécuté sudo apt-get update && sudo apt-get upgrade ? - david6
Ce n'est plus vrai le 16.04. Après "apt-get dist-upgrade" et après un redémarrage, je vois "0 paquets peuvent être mis à jour". - Bogdan Calmac
le '.. ou redémarrage du serveur ..' déclaration ci-dessus couvre cela. - david6
cat: / etc / motd: Pas de tel fichier ou répertoire - xApple


Exécutez toutes les commandes en tapant sudo une fois que:

sudo -- sh -c 'apt-get update; apt-get upgrade -y; apt-get dist-upgrade -y; apt-get autoremove -y; apt-get autoclean -y'

ou

sudo -s -- <<EOF
apt-get update
apt-get upgrade -y
apt-get dist-upgrade -y
apt-get autoremove -y
apt-get autoclean -y
EOF

ou même plus court dans un pour loop (Merci @dessert)

sudo bash -c 'for i in update {,dist-}upgrade auto{remove,clean}; do apt-get $i -y; done'

75
2017-11-08 09:28



C'est une manière très complète et complète de mettre à niveau son serveur et, à mon avis, la meilleure des solutions disponibles dans ce fil. Merci @Benny! - unrivaledcreations
Vous pouvez même le raccourcir en remplaçant apt-get avec apt et dist-upgrade avec full-upgrade. - Eng.Fouad


Une fois que vous vous connectez à votre serveur, exécutez la commande ci-dessous.

sudo apt-get upgrade

Cela devrait faire l'affaire. Peut-être avez-vous juste besoin de redémarrer votre serveur.


10
2018-04-20 09:29



Merci pour votre réponse mais j'ai essayé sudo apt-get upgrade. Redémarrer le serveur est hors de question car j'ai des sites sur celui-ci. - Marlin
Si vous avez installé une mise à jour qui affecte directement le noyau ou une mise à jour de pilote ou une mise à jour de sécurité critique, vous devez redémarrer le serveur. - Evandro Silva
Peut-être devriez-vous considérer une erreur 503 pendant une minute. Savez-vous quel genre de mise à jour c'est? - NorTicUs
Comment pouvez-vous donner un 503 si le serveur est hors ligne? - mcont


Dans mon cas, j'avais une erreur ou pas accessible URL dans /etc/apt/sources.list. Après avoir supprimé cette URL, j'ai pu mettre à jour tous les packages avec succès.

Commandes:

sudo vi /etc/apt/sources.list
sudo apt-get update && sudo apt-get upgrade

8
2017-08-26 07:47





Ma solution (très tardive, j'aime les badges nécromanciens :-)):

  1. Installer wajig (une fois que):

    sudo apt-get install wajig 
    
  2. Lorsque vous souhaitez mettre à jour / mettre à niveau complètement votre système

    wajig dailyupgrade
    

    (il demandera un mot de passe si nécessaire et effectuera toutes les étapes de mise à jour, de mise à niveau, de mise à niveau et de suppression automatique pour vous).


7
2017-10-12 02:22





Vous devrez peut-être aussi le faire -

sudo touch /etc/motd.tail

De - Ubuntu me dit que j'ai des paquets à mettre à jour quand je ne le fais pas

Cela a fonctionné pour moi le 14.04


4
2017-12-16 18:47





Ce script est pratique pour automatiser les mises à jour, notamment pour supprimer les packages inutiles et effectuer un redémarrage uniquement si le système d'exploitation le souhaite.

remote_user=usernamehere
remote_host=example.com

ssh -A -n -o StrictHostKeyChecking=no ${remote_user}@${remote_host} && \
sudo apt-get update && \
sudo apt-get -f install -y && \
sudo apt-get -o Dpkg::Options::="--force-confnew" -yy dist-upgrade -y && \
sudo apt-get autoremove -y && \
[ -f /var/run/reboot-required ] && \
echo "sudo reboot now" && \
sudo reboot now 

pour exécuter sur votre boîte locale juste laisser cette première ligne faisant le ssh

voici un alias que j'ai enregistré dans ~ / .bashrc

alias doit='echo; kill $( ps -eafww|grep update-manager|grep -v grep | grep update-manager | tr -s " " |cut -d" "  -f2 ) > /dev/null 2>&1;  echo "sudo apt-get update && sudo apt-get dist-upgrade &&  [ -f /var/run/reboot-required ] && echo && echo reboot required && echo";echo;sudo apt-get update && sudo apt-get dist-upgrade &&  [ -f /var/run/reboot-required ] && echo && echo reboot required && echo '

puis sur le terminal je viens d'émettre doit


1
2017-08-13 11:27