I understand that there is a way of defining windows that are opened in a session by saving configuration files in $BYOBU_CONFIG_DIR. But is there a way (command or script) to save the current session (i.e. the windows and their names etc) such that it can be restored after a reboot?
I have only ever been able to modify the byobu as the way you have decribed. I hated having to leave my computer on just cause I liked the way i configured byobu and coulnd't quickly save as is.
I do not see anything that will do what you want. Sorry.
Having interactive sessions survive reboots seems to defeat the whole purpose of reboots, which is (at least in part) to create a clean, safe slate to restart to your system.
Yet, it you are really keen on this, there will be a clumsy shortcut: use a linux container (lxc) to run your byobu section, freeze it when you are about to reboot the host system, then use lxc-restart to restart your container, and unfreeze it. This will return you your byobu session as you left it (minus the ssh-sessions, of course).
Only problem is. lxc-restart from a configuration file is announced in the sourceforge page, but is not implemented yet.
Lastly, there is another possibility, which you may find on github: I am not sure what exactly you wish from restarting byobu as it once was, so I am not sure whether this is really what you are searching for, but it does provide some functionalities which you may find useful. Cheers.