LINUX.ORG.RU
ФорумAdmin

Bash, сохранить сессию

 , ,


0

1

Задача такова: сохранить сессию bash (переменные, алиасы, итд) или другого шелла (желательно адекватного, например zsh).

Условия:

  • Работа с хостом происходит удалённо
  • Удалённый хост может быть перезагружен (несколько раз).
  • После перезагрузки необходима возможность восстановить сессию (в некоторый произвольный момент).
  • Желательно бы сохранять сессию в файл на другом хосте (например на localhost).

Подскажите пожалуйста, куда копать?

Пример:

save-session ssh://my.host/home/me/session.save
# после перезагрузки заходим обратно и ...
restore-session ssh://my.host/home/me/session.save

P.S. GNU screen умеет такое?

сохранить сессию
Удалённый хост может быть перезагружен

/0

Deleted ()
Ответ на: комментарий от Deleted

Да вот не надо тут вот так показывать неумение читать.

Желательно бы сохранять сессию в файл на другом хосте (например на localhost).

KennyMinigun ★★★★★ ()

( env; functions; echo «cd $(pwd)» ) > session ?

или как?

vasily_pupkin ★★★★★ ()
Ответ на: комментарий от vasily_pupkin

( env; functions; echo «cd $(pwd)» ) > session

Как вариант, спасибо. Еще бы алиасы надо.

( env; set; alias; echo "cd $(pwd)" ) > session
KennyMinigun ★★★★★ ()
Последнее исправление: KennyMinigun (всего исправлений: 3)

phantom os же, а в убогом линуксе до сих пор приходилось пилить костыли.

anonymous ()

Задача такова: сохранить сессию

Ставлю сто песо, что на самом деле задача не такая, а ТС городит огород из костылей

zolden ★★★★★ ()
Ответ на: комментарий от KennyMinigun

Да вот не надо тут вот так показывать неумение читать.

Ты man bash прочитал?

Deleted ()
Ответ на: комментарий от KennyMinigun

а история команд? возможно, стоит написать свой .bashrc, в котором указать файл истории, на выход из оболочки поставить алиас, сохраняющий все переменные (как у vasily_pupkin в комменте выше)

и да, что понимается под сессией? Если хост будет перезагружен, то все процессы завершатся, и максимум, что ты получишь - это переменные окружения, историю команд.

ЗЫ: screen использует сокеты

leader32 ()
Ответ на: комментарий от leader32

Если хост будет перезагружен, то все процессы завершатся,

То само собой. Пускай система инициализации сама запускает, что ей надо. А мне - нужно удобное «тёпленькое» место.

Например в процессе работы я наделал переменных, алиасов, функций. Они не нужны постоянно, но пока я работаю над задачей - они полезны. Вот их и хочется сохранить.

KennyMinigun ★★★★★ ()
Ответ на: комментарий от KennyMinigun

тогда задача становится вполне достижимой

google://bash logout script

но, тут надо выходить «культурно», просто так отсоединиться, как в screen, по Ctrl+a + d, не получится.

leader32 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.