Existe-t-il un moyen simple d'enregistrer une session byobu pour pouvoir la recharger après un redémarrage?


28

Je comprends qu'il existe un moyen de définir des fenêtres ouvertes dans une session en enregistrant les fichiers de configuration dans $ BYOBU_CONFIG_DIR. Mais existe-t-il un moyen (commande ou script) de sauvegarder la session en cours (c'est-à-dire les fenêtres et leurs noms, etc.) de sorte qu'elle puisse être restaurée après un redémarrage?


doublon possible de Y a
yPhil


De nombreux scripts et suggestions liés ci-dessus et ci-dessous semblent fonctionner sur vanilla tmux mais pas nécessairement sur byobu, ce qui les rend difficiles à utiliser si vous êtes habitué à / comme byobu. Ce serait génial si ce type de fonctionnalité venait à byobu (et tmux sans script et plugins supplémentaires) à l'avenir. Je serais heureux que les noms et les chemins des fenêtres / onglets soient restaurés, mais l'histoire serait bien aussi.
Nick

Peut-être que cette aide: byobu-layout- Enregistrez et restaurez les dispositions byobu-tmux.
Pablo A

Réponses:


1

Le fait d'avoir des sessions interactives après les redémarrages semble aller à l'encontre de l'objectif global des redémarrages, qui est (au moins en partie) de créer une ardoise propre et sûre pour redémarrer votre système.

Pourtant, si vous êtes vraiment intéressé par cela, il y aura un raccourci maladroit: utilisez un conteneur linux (lxc) pour exécuter votre section byobu, gelez-le lorsque vous êtes sur le point de redémarrer le système hôte, puis utilisez lxc-restart pour redémarrer votre récipient et dégeler. Cela vous rendra votre session byobu telle que vous l'avez laissée (moins les sessions ssh, bien sûr).

Le seul problème est. lxc-restart à partir d'un fichier de configuration est annoncé dans la page sourceforge , mais n'est pas encore implémenté.

Enfin, il existe une autre possibilité, que vous pouvez trouver sur github : je ne sais pas exactement ce que vous souhaitez de redémarrer byobu tel qu'il était autrefois, donc je ne sais pas si c'est vraiment ce que vous recherchez, mais il fournit certains fonctionnalités que vous pourriez trouver utiles. À votre santé.


0

IMP: Veuillez ne pas utiliser cette solution dans votre environnement de développement. Cela pourrait gâcher votre session.

Il existe une façon partiellement réussie de le faire.

Téléchargez ce script ici et conservez-le dans votre dossier bin et rendez-le exécutable. N'oubliez pas de l'enregistrer en tant que tmux-session.

Maintenant, continuez à travailler à Byobu. Lorsque vous avez terminé et que vous êtes sur le point de redémarrer, tapez simplement:

tmux-session save

Après le redémarrage, ouvrez byobu puis tapez:

tmux-session restore

Maintenant, cela fonctionne car byogu utilise tmux comme backend. Mais pourquoi ai-je dit que cela fonctionne partiellement? Car, toute la configuration n'est pas restaurée à l'aide du script ci-dessus. Seuls les onglets sont restaurés, mais leur emplacement et d'autres choses ne sont pas restaurés.

Il existe une autre solution utilisant: tmux-resurrect . Mais pour l'instant, ça ne joue pas cool avec byobu. Voir le problème publié ici: ne joue pas cool avec byobu

CONCLUSION : Jusqu'à présent, il n'y a pas de solution complète pour y parvenir. Mais j'espère qu'un jour, il y en aura. Un jour, l'un de nous écrira la solution.


Merci pour les shivams de script, mais cela a vraiment gâché ma session byobu après la restauration. Je n'ai pas pu créer / renommer / onglets et mon environnement a été foiré. La fermeture et le redémarrage de byobu l'ont ramené à la normale, mais les gens devraient absolument tester ce script avant de l'utiliser. FWIW J'utilise n'importe quelle version et configuration de byobu qui fait partie des référentiels par défaut de Fedora 20.
Nick

1
Oui. C'est pourquoi c'est une solution partielle. Quoi qu'il en soit, merci pour le commentaire. J'ai ajouté un avertissement maintenant.
shivams
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.