Antworten:
Die folgenden Protokolle beziehen sich auf apt-Upgrades:
/var/log/apt/history.log
/var/log/apt/term.log
/var/log/dpkg.log
Wenn der Befehl war dist-upgrade
, gibt es zusätzliche Protokolle in:
/var/log/dist-upgrade
Zu Ihrer Information, es ist normalerweise sicher, das Upgrade erneut auszuführen, und apt wird dort fortgesetzt, wo es aufgehört hat, als der Prozess aufgrund einer Unterbrechung abgestürzt ist. Jedoch...
Ein GNU Screen Primer:
Wenn Sie auf einen Remote-Server zugreifen und im Vordergrund einen lang andauernden Prozess starten, empfiehlt es sich, GNU Screen zu verwenden. Screen bietet ein virtuelles Terminal, das auch dann weiterläuft, wenn Ihre SSH-Verbindung unterbrochen wird.
Bildschirm installieren:
sudo apt-get install screen
Bildschirm ausführen:
screen
Nach dem Ausführen von screen erhalten Sie wie bei einem normalen Terminal eine Eingabeaufforderung. Sie können das Upgrade dann über den Innenbildschirm ausführen:
sudo apt-get upgrade
Um zu verstehen, wie dies funktioniert, "trennen" Sie den Bildschirm, indem Sie Strg + a, d drücken . Dadurch kehren Sie zum Nicht-Bildschirm-Terminal zurück. Sie können die Liste der laufenden Bildschirme mit sehen
screen -list
Wenn nur ein Bildschirm ausgeführt wird, können Sie ihn mit folgendem Befehl erneut anfügen:
screen -raAd
(Dadurch wird der Bildschirm getrennt, falls er an einer anderen Stelle angebracht ist, und er wird wieder an das Terminal angeschlossen, das Sie gerade ausführen.)
Normalerweise können Sie ohne zusätzliche Einstellungen keinen normalen Bildlauf auf dem Bildschirm durchführen. Um innerhalb des Bildschirms zu scrollen, drücken Sie Strg-Esc , um den Cursormodus aufzurufen. Sie können dann mit j und k nach oben und unten scrollen . Drücken Sie Esc erneut Cursor - Modus zu verlassen.
Im Internet stehen viele weitere Ressourcen für zusätzliche Bildschirmfunktionen zur Verfügung. Es ist ein unschätzbares Standardwerkzeug für die Systemadministration.
Siehe auch:
screen -x
- eine Verbindung zum laufenden Bildschirm herstellen, ohne andere zu trennen, sodass die Bildschirmsitzung "Multiplayer" wird.
tail -f
Befehls- und Flag-Option vertraut, mit der er den Fortschritt in Echtzeit verfolgen (oder feststellen kann, dass er abgestürzt ist), wenn "neu gestartet" wird. Anmeldung." Ich weiß, dass es alt und akzeptiert ist, aber ich denke, der Befehlssatz sollte um einen Schwanz erweitert werden, da die Antwort von @TheAnonymousBear in Ermangelung dieses Details direkter und auf den Punkt ist. @doublerebel
Neben der Antwort von Doublerebel habe ich heute eine Alternative bemerkt.
Ich bin letzte Nacht ins Bett gegangen, nachdem ich ein Upgrade über SSH gestartet hatte. Ich vergaß dummerweise, es zu starten screen
und verlor meine SSH-Sitzung über Nacht.
Ich wollte gerade recherchieren, retty
als mir auffiel, dass root
eine screen
Sitzung begonnen hatte.
me@GAMMA:~$ ps aux | grep -E 'release|upgrade|apt'
root 6208 0.0 0.0 29140 1628 ? Ss 01:57 0:05 SCREEN -e \0\0 -L -c screenrc -S ubuntu-release-upgrade-screen-window /tmp/ubuntu-release-upgrader-1h6_g4/raring --mode=server --frontend=DistUpgradeViewText
root 6209 0.2 5.6 287428 93144 pts/2 Ss+ 01:57 3:13 /usr/bin/python /tmp/ubuntu-release-upgrader-1h6_g4/raring --mode=server --frontend=DistUpgradeViewText
root 6239 0.0 0.0 50052 1184 ? Ss 01:58 0:00 /usr/sbin/sshd -o PidFile=/var/run/release-upgrader-sshd.pid -p 1022
root 7306 0.0 4.6 287432 77284 pts/2 S+ 02:43 0:08 /usr/bin/python /tmp/ubuntu-release-upgrader-1h6_g4/raring --mode=server --frontend=DistUpgradeViewText
me 26829 0.0 0.0 9440 956 pts/5 S+ 22:18 0:00 grep --color=auto -E release|upgrade|apt
Also habe ich die root
Bildschirme aufgelistet und an sie angehängt:
me@GAMMA:~$ sudo screen -list
There is a screen on:
6208.ubuntu-release-upgrade-screen-window (12/11/2013 01:57:58 AM) (Detached)
1 Socket in /var/run/screen/S-root.
me@GAMMA:~$ sudo screen -x -r
Und Bam! Ich war wieder im Spiel.
do-release-upgrade
für Ubuntu spezifischen Befehl? Ich musste noch nie nach Debian suchen, das ich ausschließlich verwende, weil ich es immer manuell ausführe, trenne und dann zurückkehre. Und natürlich verwenden wir stattdessen sudo apt dist-upgrade
nach dem Wechsel /etc/apt/sources.list
.
apt
Verwenden Sie zum Anzeigen der Echtzeitausgabe des Hintergrundjobs Folgendes:
sudo tail -f /var/log/apt/term.log
tail
) nach einem sogenannten "erneuten Anmelden" betrachten muss.
Hatte genau das gleiche Problem, verlor meine Verbindung und der Dpkg-Prozess wartete auf Eingabe.
Vielleicht versuchen Sie es beim nächsten Mal: sudo dpkg --configure -a
"dpkg: error: dpkg frontend is locked by another process"
/var/dpkg/lock
wenn es noch läuft. Und egal, es beantwortet nicht die Frage, wie "der Upgrade-Status überprüft werden soll" und funktioniert stattdessen nur, wenn das Upgrade abgestürzt ist (und nur dann, wenn die Sperre nicht aktiv ist). Ich würde diesen Ansatz niemandem empfehlen. Mit freundlichen