web-dev-qa-db-fra.com

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

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

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 concernant les mises à jour. Comment puis-je les installer?

661
Marlin

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)

La documentation sur chaque option apt-get est disponible dans le les pages de manuel d’apt-get . Celles-ci sont également disponibles en exécutant man apt-get sur votre ordinateur.

827
SirCharlo

Exécutez toutes les commandes en tapant une fois Sudo:

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 une boucle pour (Merci @dessert)

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

C'est un comportement normal.

Le message que vous voyez à la connexion a été ajouté au statut du serveur 'Message du jour', qui n'est que mis à jour chaque jour de calendrier (ou au démarrage/démarrage du serveur). Regardez le contenu, en utilisant

cat /etc/motd

Toujours voir 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 serez seul invité à fournir des mises à jour supplémentaires si d'autres mises à jour (plus récentes) ont été publiées.

90
david6

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

Sudo apt-get upgrade

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

11
NorTicUs

Dans mon cas, j'avais un incorrect ou non accessible URL dans /etc/apt/sources.list. Après en supprimant cette URL, j'ai pu mettre à jour tous les paquets avec succès.

Commandes:

Sudo vi /etc/apt/sources.list
Sudo apt-get update && Sudo apt-get upgrade
8
burtsevyg

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

  1. Installer wajig (une fois):

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

    wajig dailyupgrade
    

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

7
Rmano

Vous devrez peut-être aussi le faire -

Sudo touch /etc/motd.tail

De - buntu me dit que j'ai des paquets à mettre à jour quand je ne les ai pas

Cela a fonctionné pour moi le 14.04

4
John Behan

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 courir sur votre boîte locale laissez juste de cette première ligne faire le ssh

voici un alias que je sauvegarde 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 n'émets que doit

1
Scott Stensland

Si vous exécutez à nouveau apt-get update une fois que apt-get upgrade est terminé, ces messages lors de la connexion ssh devraient disparaître.

0
Francisco Luz