PHP と ssh2 ライブラリを使用してバックアップを行うスクリプトがあります。このスクリプトは、ssh2 を使用してリモート マシンに接続し、バックアップ タスクを実行します。ダウンロード時間を最小限に抑えるために、バックアップ ディレクトリを圧縮したいと考えています。
なんとかできましたが、ローカルマシンで圧縮ファイルを開くと、「予期しないファイルの終わり」と表示されます:(
私はUbuntu 11.10で作業しています。そしてphp5. 私のリモート マシンは Centos を実行しています。
ファイルを圧縮するには、tar を使用してバックアップ ディレクトリをアーカイブし、その後に gzip を使用するため、myarchiveddir.tar.gz で終了します。
コードは次のようになります: ....
$execO = ssh2_exec($conn,"cd /tmp/;tar -cf {$newFile}.tar myRemoteFolder");
$execO = ssh2_exec($conn,"cd /tmp/;gzip {$newFile}.tar");
$output = fclose($execO);
私は解決策を探して研究してきましたが、いつも同じポイントで終わるようです. 誰かがこの問題に少し光を当てることができますか. 私はssh2ライブラリが初めてなので、この分野では少し緑です。それほど複雑ではないはずです。私が見逃しているものに違いありません。
よろしくお願いします。マヌエル