PHPでssh2を使う必要が出てきた。
方法としては、PECL::ssh2をインストールしておけばよいらしい。
依存ライブラリとして、libssh2が必要なので、yumにてlibssh2をインストールしておく。
libssh2-develはいらないかもしれない。
yum -y install libssh2 libssh2-devel
その後、peclコマンドでssh2拡張をインストールする。
pecl install ssh2 downloading ssh2-0.11.0.tgz ... Starting to download ssh2-0.11.0.tgz (22,884 bytes) ........done: 22,884 bytes 5 source files, building running: phpize Configuring for: PHP Api Version: 20041225 Zend Module Api No: 20060613 Zend Extension Api No: 220060519 1. libssh2 prefix? : /usr 1-1, 'all', 'abort', or Enter to continue: all # libssh2.soへのprefixが/usrではない場合、修正 libssh2 prefix? [/usr] : /usr/lib 1. libssh2 prefix? : /usr/lib 1-1, 'all', 'abort', or Enter to continue: # 何も入力せずにenterを押す # インストールが始まる ... # インストール完了通知 Build process completed successfully Installing '/usr/lib/php/modules/ssh2.so' install ok: channel://pear.php.net/ssh2-0.11.0
ssh2.soがインストールされたので、権限を変更する
chmod 755 /usr/lib/php/modules/ssh2.so
php.iniを修正してextensionを組み込む。自分の環境では、extensionの組み込みが外部ファイル化してあったので、そちらを修正する。gd.iniとかをコピーしてssh2.iniを作り、それを修正した。その後は、apacheの再起動を行う。
cd /etc/php.d cp gd.ini ssh2.ini vi ssh2.ini # gdをssh2に変更 extension=gd.so ↓ extension=ssh2.so # 編集終了 # apacheの再起動 service httpd restart
これで、phpinfo()を確認したところ、ssh2が組み込まれていたのでOK!!