Чи є простий спосіб зберегти сеанс byobu таким чином, щоб я міг його перезавантажити після перезавантаження?


28

Я розумію, що існує спосіб визначення вікон, які відкриваються в сеансі, зберігаючи конфігураційні файли в $ BYOBU_CONFIG_DIR. Але чи є спосіб (команда чи сценарій) зберегти поточний сеанс (тобто вікна та їх імена тощо) таким, що його можна буде відновити після перезавантаження?



Так, відповів тут superuser.com/questions/440015/…
xizdaqrian

Багато сценаріїв та пропозицій, пов’язаних вище та знизу, схоже, працюють на vanilla tmux, але не обов'язково на byobu, що робить їх важкими для використання, якщо ви звикли / подобаєте byobu. Було б чудово, якби ця функція в майбутньому потрапила до byobu (і tmux без додаткових скриптів та плагінів). Я був би задоволений лише відновленими іменами вікон / вкладок та шляхів, але історія була б чудовою.
Нік

Можливо, це допоможе: byobu-layout- Збережіть та відновіть макети byobu-tmux.
Пабло А

Відповіді:


1

Інтерактивні сеанси перезавантаження перезавантажень, здається, перемагають цілі перезавантаження, а це (принаймні частково) створити чистий, безпечний аркуш для перезавантаження системи.

Тим не менш, це ви дуже зацікавлені в цьому, з'явиться незграбний ярлик: використовуйте контейнер linux (lxc), щоб запустити розділ byobu, заморожте його, коли ви збираєтеся перезавантажити хост-систему, а потім скористайтеся lxc-restart для перезавантаження вашої контейнер і розморожуйте його. Це поверне вам ваш сеанс byobu, як ви його покинули (звичайно, мінус ssh-сеанси).

Єдина проблема. lxc-перезапуск з конфігураційного файла оголошується на сторінці sourceforge , але ще не реалізований.

Нарешті, є ще одна можливість, яку ви можете знайти на github : я не впевнений, що саме ви хочете, щоб перезапустити bybu, як це було раніше, тож я не впевнений, чи справді це те, що ви шукаєте, але це дає певні функції, які можуть вам бути корисними. Ура.


0

IMP: Будь ласка, не використовуйте це рішення у вашому середовищі розробки. Це може зіпсувати ваш сеанс.

Існує частково успішний спосіб зробити це.

Завантажте цей скрипт тут і зберігайте його у своїй папці для сміття та зробіть його виконуваним. Не забудьте зберегти його як tmux-сесію.

Тепер продовжуйте працювати в byobu. Коли ви закінчите і збираєтеся перезавантажити, просто введіть:

tmux-session save

Після перезавантаження відкрийте byobu і введіть:

tmux-session restore

Тепер це працює, тому що byogu використовує tmux як бекенд. Але чому я сказав, що це працює частково? Тому що не всі конфігурації відновлюються за допомогою вищевказаного сценарію. Відновлюються лише вкладки, але їхнє місцезнаходження та інші речі не відновлюються.

Є ще одне рішення з використанням: tmux-resurrect . Але поки що це не грає круто з byobu. Дивіться проблему, розміщену тут: Не грає круто з byobu

ВИСНОВОК : На сьогодні не існує повного рішення для досягнення цього. Але я сподіваюся, що одного дня буде. Одного разу один із нас напише рішення.


Дякую за сценарій шивам, але він фактично зіпсував мій сеанс byobu після відновлення. Я не зміг створити / перейменувати / вкладки, і моє оточення було зіпсовано. Закриття та перезапуск Byobu повернуло його до нормального стану, але люди обов'язково повинні перевірити цей сценарій перед використанням. FWIW Я використовую будь-яку версію та конфігурацію byobu, що є частиною сховищ Fedora 20 за замовчуванням.
Нік

1
Так. Ось чому це часткове рішення. У будь-якому випадку, дякую за коментар. Я зараз додав попередження.
шивам
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.