2011年2月23日

Compile PHP 4 to Apache v1.3

cd /php
./configure --with-apxs=/usr/local/apache/bin/apxs --enable-track-vars
make
make install

將 php.ini-disk 複製到 /usr/local/lib

重啟 apache

[自動化網管] Expect on Perl

程式名稱叫作 : reboot.pl

程式是要去遠端重開 voice gw

程式碼如下 :

use Expect;
$ip_address = $ARGV[0];
$mac_address = $ARGV[1];
$password = `/reboot/voice_1port.sh $mac_address | awk '{print \$2}'`; #voice_1port.sh 是算登入密碼的程式

if ($ip_addree eq '' and $mac_address eq '') {
print "Too less arguments!\nRight Syntax : reboot.pl IP_ADRESS MAC_ADDRESS\n";
}
else {
chomp($password);
$cmd = "telnet";
my $exp = Expect->spawn($cmd, "$ip_address")
or die "Cannot spawn $cmd\n";
$exp->expect($timeout, -re=>'Password:');
$exp->send("$password\r\n");
$exp->expect($timeout, -re=>'>');
$exp->send("sys reboot\r\n");
$exp->soft_close();
print "$ip_address rebooting!\n";
}

2011年2月22日

[自動化網管] 利用 expect 自動化登入系統並執行重開機

如系統無安裝 expect 可執行以下安裝步驟

su -
yum install expect

執行登入並重開機的程式碼如下

#!/usr/bin/expect

set host "[lrange $argv 0 0]" #變數1: 主機 IP
set pass "[lrange $argv 1 1]" #變數2: 主機密碼

spawn /usr/bin/ssh root@$host #執行 ssh 並用 root 帳號登入指定的 IP
expect "Are you sure you want to continue connecting (yes/no)?" {send "yes\r"} #抓到特定 pattern 就送出 yes 字串
expect "password:" {send "$pass\r"} #抓到特定 pattern 就送出 $pass 變數所存到密碼內容
expect "root>" {send "reboot\r"} #抓到特定 pattern 就送出 reboot 字串並執行
send "\r" #空一格
send "exit\r" #登出

用任何藍芽耳機聽 iPhone 的音樂 [需JB]

一般來說要有支援 A2DP 立體聲的藍芽耳機才能直接從 iPhone 聽音樂

但如果您的 iPhone 有 JB, 就可以另行安裝 bluetooth mono 這個套件,安裝之後在 SBSetting 裡面啟動,就可以使用單音的藍芽耳機聽 iPhone 上的音樂或廣播囉,對於無 A2DP 的使用者真的一大福音!

2011年2月8日

將 MySQL 的 DB 輸出為外部 CSV 檔

SELECT * INTO OUTFILE '/tmp/result.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM my_test_table;
這個小工具發生錯誤