【问题标题】:Create TMUX instance using PHP on same server在同一台服务器上使用 PHP 创建 TMUX 实例
【发布时间】:2020-07-12 06:37:36
【问题描述】:

我正在尝试从 PHP 开始一个 TMUX 会话,我认为这是一项简单的任务,但我似乎无法获得任何成功。

我使用的代码是

shell_exec("tmux new-session -s MyNewSession");

但这没有任何作用。

我还阅读了有关 SSH2 连接器的信息并尝试过,但没有成功

<?php
$connection = ssh2_connect('xx.xxx.xx.xx', 22);
ssh2_auth_password($connection, 'root', 'XXXXXXXXX');

$stream = ssh2_exec($connection, 'tmux new-session -s MyNewSession');
?>

任何帮助将不胜感激。

谢谢 克里斯

***** 更新 *****

如果我将代码更改为:

<?php
$output = shell_exec('/usr/bin/tmux tmux new -d -s Test 2>&1');
echo "Done:".$output;
?>

我明白了

Done:no server running on /tmp/tmux-33/default 

所以看起来它正在发送命令?

【问题讨论】:

    标签: php ssh tmux


    【解决方案1】:

    如果加-d so tmux new -ds myNewSession,是否有效?

    【讨论】:

    • 是的,不幸的是没有运气
    • 您期望发生什么? tmux new -dsmysession 将创建一个新的分离会话。您是说这根本没有创建(所以 tmux attach -tmysession 在另一个终端窗口中显示错误),还是您希望它以某种方式从 PHP 附加?
    • 嗨,我实际上是使用 Puty 运行 tmux ls 来列出所有会话,但它没有出现在这里
    • 你确定 PHP 的 shell_exec 能找到 tmux 吗?如果你给它像/usr/bin/tmux new -dsmysession这样的tmux完整路径呢?您在运行 tmux 的同一台计算机上运行 PHP,对吧?
    • 是的,路径是正确的,请查看我更新的问题,我会更进一步
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-22
    • 1970-01-01
    • 2021-11-20
    相关资源
    最近更新 更多