问题描述
目前我似乎无法运行多个byobu
会话。在最初的byobu实例之后,在一个终端上运行,当我在另一个终端中运行byobu
时,它总是连接到第一个byobu
会话。
有没有开始独立的byobu
会议?
最佳解决思路
这很容易。 (至少在我的ubuntu 10.04机器上,byobu使用屏幕。);
如果您已经有一个会话正在运行,并且不想重新挂接但是instad创建了一个新会话,只需键入:
byobu -S my-other-session
my-other-session是你如何命名新会话的地方。
稍后,如果您已经运行了多个byobu会话,则输入就足够了
byobu
您将看到一系列正在运行的会话供您选择:
Byobu sessions...
1. 17680.my-other-session (03/12/2012 01:33:32 PM) (Detached)
2. 11890.pts-2.mit (01/15/2012 09:17:49 AM) (Detached)
3. Create a new session
Choose 1-3 [1]:
如果键入byobu
dos不提供可供选择的运行会话列表,请尝试使用byobu-select-session
命令。
pts-2.mit会话是我最初创建的,没有给它命名,所以这个名字是由boybu选择的。
如果要查找正在运行的会话,而不附加任何会话,请使用
byobu -ls
在显示如下列表之后,它会在您键入它的控制台上再次丢弃:
There are screens on:
17680.my-other-session (03/12/2012 01:33:31 PM) (Detached)
11890.pts-2.mit (01/15/2012 09:17:48 AM) (Detached)
2 Sockets in /var/run/screen/S-root.
次佳解决思路
使用-S
选项为您的下一个byobu会话(例如其套接字)提供不同的名称。如果没有-S "MYNAME"
,插座将是<pid>.<tty>.<host>
而不是<pid>.MYNAME
。
第三种解决思路
据我所知,如果您运行没有参数的byobu
,那么它会重新连接到现有会话(或者如果您根本没有运行byobu
则启动一个新会话)。如果以程序名作为参数运行它,那么它会将其传递给screen
或tmux
,具体取决于您在内部运行的内容。
如果你正在运行screen
,你可以通过运行byobu byobu-shell
来模拟开始一个新的会话(执行你的shell)(byobu-shell
是byobu
通过defualt启动的程序。它打印MOTD并启动你的$shell
。)。然后,当您尝试重新连接时,通过运行byobu
或通过SSH重新连接到服务器,您将获得一个菜单,其中包含可在运行的byobu
会话之间进行选择的选项。
对于tmux
,执行byobu new-session
即可实现此目的。下次重新连接时,您将被添加到上次开始的会话中。