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?
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.
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'
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.
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.
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
Ma solution (très tardive, j'aime les badges de nécromancien :-)):
Installer wajig (une fois):
Sudo apt-get install wajig
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).
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
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
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.