服务器 AMI 映像不允许用户多次登录

Dav*_*rks 8 server command-line byobu amazon-ec2 cloud-init

当我两次登录为 Amazon EC2 构建的 Ubuntu 服务器的新实例时,两个窗口将完全相同。我在一个中输入的任何内容都会在另一个中复制。

当我自己构建图像时,我从未处理过这个问题。有没有人知道这个?我通常喜欢在我的服务器的终端上打开几个腻子窗口。

Eri*_*ond 6

不幸的是,预发布的 Oneiric AMI 会从终端自动在 ssh 上运行 screen 命令,这会导致您的所有 ssh 会话共享一个屏幕。您可以学习如何使用 screen 来分离您的终端所看到的内容,或者...

您可以通过键入以下命令在给定实例上禁用此功能:

byobu-disable
Run Code Online (Sandbox Code Playgroud)

这将使您注销。下一个 ssh 将正常工作。

希望 Oneiric 在发布时不会包含这种行为,但我们离那个日期越来越近了。

注意:这篇文章包含表达我个人观点的陈述。其他人有不同的看法。


Dus*_*and 6

正如 Eric 所说,您可以通过以下方式禁用主机上的 byobu:

 $ byobu-disable
Run Code Online (Sandbox Code Playgroud)

进入 ssh 后,您可以断开与当前会话的连接,但使用 .

您可以 ssh 进入,然后运行 ​​bash 而不是 byobu:

 $ ssh -t <hostname> bash
Run Code Online (Sandbox Code Playgroud)

您还可以通过在本地 ~/.bashrc 中设置 LC_BYOBU=0,使其永久生效并影响到 Ubuntu/byobu 主机(byobu > 4.0)的所有 ssh 会话:

 $ echo "export LC_BYOBU=0" >> ~/.bashrc
 $ . ~/.bashrc
 $ ssh <hostname>
Run Code Online (Sandbox Code Playgroud)


小智 2

当您在 EC2 中启动实例时,您可以选择提供“用户数据”,该数据在首次启动(以及稍后)时可供实例使用。Ubuntu 使用名为 cloud-init 的程序来使用用户数据,该程序非常强大。

您可以使用 cloud-init 的用户友好的云配置功能禁用 byobu。

要禁用 byobu,您只需提供两行用户数据:

#cloud-config
byobu_by_default: disable
Run Code Online (Sandbox Code Playgroud)

有关 cloud-init 的完整详细信息,请参见:https ://help.ubuntu.com/community/CloudInit

Cloud-config 语法,包括您可以用它做的所有其他令人惊奇的事情,在这里: http ://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/view/head:/doc/examples /云配置.txt