Estou tentando instalar uma extensão pecl em um servidor remoto (server2), usando a função ssh2_exec () de um arquivo php localizado em outro servidor (server1).
O arquivo php no server1:
<?php
$main_ip = 'xxx.xxx.xxx.xxx'; // ip of the server2
$user = 'root';
$password = 'password'; // root password ot the server2
$connection = ssh2_connect($main_ip, 22);
if($connection)
{
if(ssh2_auth_password($connection, $user, $password))
{
$stream = ssh2_exec($connection, 'printf "\n" | pecl install -f ssh2');
$stream = ssh2_exec($connection, 'printf "\n" | pecl install geoip');
}
}
?>
Eu tentei "echo" em vez de "printf".
Eu tentei executar um script de shell localizado no servidor remoto (server2) do mesmo arquivo php no server1.
O script shel (install.sh):
#!/bin/bash
printf "\n" | pecl install -f ssh2
usando isto: $ stream = ssh2_exec ($ conexão, '/file_path/install.sh');
Nada funcionou.
Obrigado.
Tags remote pecl remote-connection