Gibt es eine einfache Möglichkeit, eine BYOBU-Sitzung zu speichern, sodass ich sie nach einem Neustart erneut laden kann?

Gibt es eine einfache Möglichkeit, eine BYOBU-Sitzung zu speichern, sodass ich sie nach einem Neustart erneut laden kann?

Ich verstehe, dass es eine Möglichkeit gibt, Fenster zu definieren, die in einer Sitzung geöffnet werden, indem Konfigurationsdateien in $BYOBU_CONFIG_DIR gespeichert werden. Aber gibt es eine Möglichkeit (Befehl oder Skript), die aktuelle Sitzung (also die Fenster und ihre Namen usw.) so zu speichern, dass sie nach einem Neustart wiederhergestellt werden kann?

Antwort1

Dass interaktive Sitzungen Neustarts überstehen, scheint den gesamten Zweck von Neustarts zunichte zu machen, der (zumindest teilweise) darin besteht, eine saubere, sichere Grundlage für den Neustart Ihres Systems zu schaffen.

Wenn Sie das jedoch wirklich wollen, gibt es eine umständliche Abkürzung: Verwenden Sie einen Linux-Container (lxc), um Ihren Byobu-Abschnitt auszuführen, frieren Sie ihn ein, wenn Sie das Hostsystem neu starten möchten, und starten Sie Ihren Container dann mit lxc-restart neu und frieren Sie ihn wieder ein. Dadurch wird Ihre Byobu-Sitzung so zurückgegeben, wie Sie sie verlassen haben (natürlich ohne die SSH-Sitzungen).

Das einzige Problem ist, dass lxc-restart aus einer Konfigurationsdatei angekündigt wird in derSourceforge-Seite, ist aber noch nicht implementiert.

Schließlich gibt es noch eine weitere Möglichkeit, die Sie finden können aufgithub: Ich bin mir nicht sicher, was genau Sie sich davon erhoffen, Byobu so neu zu starten, wie es einmal war, also bin ich mir nicht sicher, ob das wirklich das ist, wonach Sie suchen, aber es bietet einige Funktionen, die Sie vielleicht nützlich finden. Prost.

Antwort2

IMP:Bitte verwenden Sie diese Lösung nicht in Ihrer Entwicklungsumgebung. Dies könnte Ihre Sitzung beeinträchtigen.

Es gibt einen teilweise erfolgreichen Weg, dies zu tun.

Laden Sie dieses Skript herunterHierund bewahren Sie es in Ihrem Bin-Ordner auf und machen Sie es ausführbar. Denken Sie daran, es als tmux-session zu speichern.

Arbeiten Sie nun weiter in byobu. Wenn Sie fertig sind und den Neustart durchführen möchten, geben Sie einfach Folgendes ein:

tmux-session save

Öffnen Sie nach dem Neustart byobu und geben Sie Folgendes ein:

tmux-session restore

Das funktioniert, weil byogu tmux als Backend verwendet. Aber warum habe ich gesagt, dass es teilweise funktioniert? Weil mit dem obigen Skript nicht die gesamte Konfiguration wiederhergestellt wird. Nur die Registerkarten werden wiederhergestellt, aber ihr Speicherort und andere Dinge werden nicht wiederhergestellt.

Es gibt eine andere Lösung mit:tmux-wiederbeleben. Aber im Moment funktioniert es nicht gut mit Byobu. Siehe das hier gepostete Problem:Spielt nicht cool mit Byobu

ABSCHLUSS: Bisher gibt es keine vollständige Lösung, um dies zu erreichen. Aber ich hoffe, dass es eines Tages eine geben wird. Eines Tages wird einer von uns die Lösung schreiben.

verwandte Informationen