it-swarm.com.de

Wie installiere ich Updates über die Kommandozeile?

Wenn ich mich über SSH bei meinem Webserver anmelde, werden folgende Informationen angezeigt:

88 packages can be updated.
80 updates are security updates

Ich habe apt-get update und dann apt-get upgrade ausprobiert, aber jedes Mal, wenn ich mich anmelde, wird die Nachricht über Updates angezeigt. Wie installiere ich sie?

685
Marlin

Benutze dies hier:

Sudo apt update        # Fetches the list of available updates
Sudo apt upgrade       # Installs some updates; does not remove packages
Sudo apt full-upgrade  # Installs updates; may also remove some packages, it needed
Sudo apt autoremove    # Removes any old packages that are no longer needed

Dokumentation zu jeder apt -Option finden Sie in den Hilfeseiten für apt . Diese sind auch verfügbar, indem Sie man apt in Ihrem Terminal ausführen.

Die gleichzeitige Verwendung von upgrade und full-upgrade ist normalerweise nicht erforderlich, kann jedoch in einigen Fällen hilfreich sein: siehe Debian-Dokumentation über Upgrades von Debian 9 .

857
SirCharlo

Führen Sie alle Befehle aus, indem Sie einmal Sudo eingeben:

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

oder

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

oder noch kürzer in einer für Schleife (Danke @dessert)

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

Dies ist normal.

Die Meldung, die Sie beim Anmelden sehen, wurde an den Serverstatus "Message-Of-The-Day" angehängt, der nur aktualisiert an jedem Kalendertag (oder beim Booten/Starten des Servers) ist. Schauen Sie sich den Inhalt mit an

cat /etc/motd

Immer noch dieselben Updates verfügbar, nachdem sie ausgeführt wurden

Sudo apt-get update && Sudo apt-get upgrade

ist zu erwarten. Wenn Sie diesen Befehl dann erneut ausführen, werden Sie nur zu weiteren Updates aufgefordert, wenn noch weitere (neuere) Updates veröffentlicht wurden.

92
david6

Führen Sie den folgenden Befehl aus, sobald Sie sich bei Ihrem Server angemeldet haben.

Sudo apt-get upgrade

Es sollte den Trick machen. Möglicherweise müssen Sie nur Ihren Server neu starten.

12
NorTicUs

In meinem Fall hatte ich eine falsche oder nicht zugängliche URL in /etc/apt/sources.list. After Nachdem ich diese URL entfernt habe, konnte ich alle Pakete erfolgreich aktualisieren.

Befehle:

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

Meine (sehr spät, ich mag Nekromanten-Abzeichen :-)) Lösung:

  1. Installiere wajig (einmal):

    Sudo apt-get install wajig 
    
  2. Wenn Sie Ihr System vollständig aktualisieren/upgraden möchten

    wajig dailyupgrade
    

    (Bei Bedarf werden Sie nach dem Kennwort gefragt, und Sie können alle Schritte zum Aktualisieren, Aktualisieren, Entfernen von Dist-Upgrades und zum automatischen Entfernen ausführen.).

7
Rmano

Möglicherweise müssen Sie dies auch tun -

Sudo touch /etc/motd.tail

From - buntu teilt mir mit, dass ich Pakete zum Aktualisieren habe, wenn ich dies nicht tue

Bei mir hat es am 14.04 geklappt

4
John Behan

dieses Skript ist praktisch, um Updates zu automatisieren, einschließlich des Entfernens nicht benötigter Pakete und des Durchführens eines Neustarts nur, wenn das Betriebssystem dies wünscht

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 

um auf Ihrer lokalen Box zu laufen, lassen Sie einfach die erste Zeile weg, in der Sie ssh ausführen

hier ist ein Alias, den ich in ~/.bashrc speichere

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 '

dann gebe ich am Terminal einfach doit aus

1
Scott Stensland

Wenn Sie apt-get update erneut ausführen, nachdem apt-get upgrade abgeschlossen wurde, sollten diese Nachrichten bei ssh login nicht mehr angezeigt werden.

0
Francisco Luz