SSH命令来自PHP无法正常工作。命令从命令行运行正常

时间:2012-08-18 09:27:25

标签: php command-line ssh unzip

我继承了这个内联网应用程序,它解压缩了一些请求的假脱机报告,并将它们转储到用户可以访问的Samba文件夹中。这是PHP:

$command = "$unzip_program $path_spooled/$zip_file $filename -d $target_dir";
$ssh_command = "$ssh_syscommand -i /web/live/sshkey_nopass reportuser@$archive_server \"$command\"";

$sshpipe2 = popen( $ssh_command, 'r' );

因此,如果我回显正在运行的SSH命令:

/usr/bin/ssh -i /web/live/sshkey reportuser@192.168.1.21 "/usr/bin/unzip -c /reports/spooled/2012/jan.zip 01SU7C.RPT" |
/usr/bin/ssh -i /web/live/sshkey reportuser@192.168.1.2 "cat > /reports/spooled/01SU7C.RPT"

(为了便于阅读,我在管道后插入了回车符)

如果我从命令行执行该命令,它可以正常工作。如果从php运行它会失败而没有错误。

我需要的只是一些帮助,找出去哪里看看。我认为它可能是一个缺少的ssh密钥,但服务器确实在执行命令时显示该用户的登录信息。

我错过了什么?我应该在哪里看?有什么关于解压缩我不知道的事情吗?我是否需要从Apache设置某种上下文?

0 个答案:

没有答案