2012年5月27日 星期日

安裝php ssh2 & expect 模組

作業環境 : CentOS6-64bit

1. pear & pecl 是PHP用來擴充套件( extensions )的程式,pecl 在php-pear套件內

# yum install php-pear
# pecl list-all
安裝 ssh2 & expect ,因為兩個模組都是beta套件,所以無法直接安裝,會有提示bete安裝方式
# pecl install ssh2
# pecl install expect

# pecl install channel://pecl.php.net/ssh2-0.11.3
# pecl install "channel://pecl.php.net/expect-0.3.1"
#安裝完成,檢視已安裝的模組
# pecl list
Installed packages, channel pecl.php.net:
=========================================
Package Version State
expect 0.3.1 beta
ssh2 0.11.3 beta

#確認模組是否正確編譯成功(.so)
# ls /usr/lib64/php/modules/

預設不會掛載pecl 編譯出來的PHP 模組, 必須手動設定
# vim /etc/php.d/ssh2.ini
   extension=ssh2.so
# vim /etc/php.d/expect.ini
   extension=expect.so

#service httpd restart

設定完成


2. 安裝過程中可能發生錯誤(相依套件)

# pecl install channel://pecl.php.net/ssh2-0.11.3
WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-update pecl.php.net" to update
downloading ssh2-0.11.3.tgz ...
Starting to download ssh2-0.11.3.tgz (23,062 bytes)
.....done: 23,062 bytes
5 source files, building
running: phpize

sh: phpize: command not found
ERROR: `phpize' failed

缺少PHP 可執行腳本 編譯軟體,但看一下就知道前面安裝的套件,就知道可能需要那些套件。

# yum install php-devel.x86_64  
# yum install libssh2-devel.x86_64
# yum insatll expect-devel.x86_64
# yum insatll tcl-devel.x86_64

phpize 是屬於 php-devel 中的東西,主要是設定 php 外掛模塊的一些設定
php安裝成功後,在bin目錄下會生成一個phpize的可執行腳本,它的用途是用來動態安裝php擴充模組。使用phpize的好處是:在已經安裝了php的情況下,再安裝擴展模塊時,無需重新編譯安裝php。

沒有留言:

張貼留言

Extreme XOS run pyton scripts

XOS run python scripts v15.7 or high 將交換器上的 IP & MAC 往syslog 丟, 簡單將IP資料保留下 ## 編緝Scripts # vi ip2syslog.py #!/usr/bin/python # ...