同学 是具有即时终端共享的终端多路复用器,即,它可以与许多受信任的用户共享您的终端会话。 它类似于多播的概念。 所有收件人都可以通过 SSH 连接查看终端会话。
tmate 实际上是一个 fork 多路复用器,一种流行的终端多路复用器,可让您在单个终端中使用多个程序。 它在终端窗口中为您提供一种 IDE 体验。
tmate 是如何实现终端共享的!
在启动 Tmate 时,它将首先建立与 tmate.io 网站的 SSH(安全外壳)连接,该网站充当 Internet 上的服务器。 建立连接后,将为每个会话生成一个随机 SSH URL 令牌。 ssh URL ID 将显示在终端会话的底部。 现在终端已准备好共享。
受信任的队友可以通过 URL ID 访问您的终端会话,并且只要连接处于活动状态就可以使用它。 在我看来,tmate最好的应用是协助小组项目,或者和开发团队一起调试项目,或者在远程网络上获得技术支持。
如何在 Linux 中安装 tmate
tmate 是一个流行的程序,因此它可以在大多数 Linux 发行版的默认存储库中使用。 您所要做的就是使用 Linux 发行版的包管理器并安装它。
为了您的舒适,我将列出一些示例。
在基于 Debian 和 Ubuntu 的 Linux 发行版中,使用以下命令:
sudo apt install tmate
为了 Fedora,您可以使用以下命令:
sudo dnf install tmate
tmate 在 AUR 中可用,因此您可以在 Arch Linux 中使用您最喜欢的 AUR Helper:
yaourt -S tmate
在 openSUSE 中,你可以 zypper 安装 tmate:
sudo zypper in tmate
如何与 tmate 共享终端
让我们看看使用 tmate 并与他人共享终端会话的步骤。
第 1 步:生成 SSH 密钥对
要使用 tmate,我们需要创建一个 SSH 密钥对。 tmate 程序首先使用该 SSH 密钥对建立主机与 tmate.io 网站的安全 SSH 连接。
此外,每台尝试连接主机终端的客户端机器的身份验证也是由 tmate.io 服务器通过相同的 ssh 密钥进行的。 因此,每个系统都应该生成自己的 SSH 密钥。
使用此命令生成 ssh-key:
ssh-keygen -t rsa
第 2 步:在主机系统上使用 tmate
在将使用终端会话的系统上,打开终端并在终端中输入“tmate”命令。
tmate
tmate 会话屏幕如下所示:
您会注意到几秒钟后,SSH 会话 ID 将消失。 您需要此会话 ID,以便其他人可以查看您的会话。
要查找 tmate sesson id,请使用以下命令:
tmate show-messages

第 3 步:访问 tmate 会话
与您信任的队友共享 SSH 会话 ID,他们可以在自己的终端中使用此命令访问您的终端。
ssh <SSH_Session_ID>
为了 example,就我而言,它将是:
ssh [email protected]
默认情况下,tmate 允许对共享终端会话进行读写访问。 这意味着连接到您的会话的任何人都可以在您的终端中运行命令。
如果您不希望这样,您可以共享只读会话 ID。 如果查看 show-messages 命令的输出,您会注意到有几个会话 ID。 您可以在那里找到只读会话 ID。
不仅使用 SSH,您还可以通过 Web URL 共享您的终端。 您可以在 show-messages 输出中获取 Web 会话 URL(如上图所示)。
第 4 步:结束 tmate 会话
使用“exit”命令退出 tmate 会话。
exit
你喜欢 tmux 吗?
由于 tmate 基于 tmux,您可以在 tmate 终端会话中使用所有 tmux 命令。 这对 Linux 高级用户非常有用。
我希望你喜欢这篇关于与 tmate 共享终端的快速文章。 你对它有什么经验。 请与我们分享。
作者: Rishi Raj Gautam 是 Linux 爱好者和开源活动家。