2011年11月20日 星期日
真是難搞的!
為了雲端比賽,不得不開始學習使用Flex和JAVA。但不是很熟Flex又得使用GooogleMap,還真令人倍感挫折!手邊的書籍都是javascript版本得資料,flex的資料只能從網路上取得。這二天試了試,終於試出來了。原來在lib的部份,不能把google map for flash sdk中的二個SWC都匯進來,只能選其中flex的版本吧!雖然最後試出來的心情很爽,但是早上試不出來時,真是歸爛趴火…
2011年10月13日 星期四
程式語言排名
TIOBE Programming Community Index for October 2011
使用JAVA的是17.913第一名,第二名是C佔17.707,二者只差0.206。有人說java雖然發表了JAVA8的藍圖,仍舊持續失去版圖。其實,也還好啦~工具的重點在能不能賺錢,也不是說新的東西就一定比較好用、棒!倒是php在第四名,心裏還滿爽的。而python也沒衝到多高,可見得叫好的未必叫座就是了!
另外,年度得獎的語言,看起來是大家輪流坐!
2011年10月8日 星期六
Google Cloud SQL推出了~
原文網址: 協助中小企業 Google 推雲端資料庫服務Google Cloud | 3C新聞 | NOWnews 今日新聞網http://www.nownews.com/2011/10/07/339-2747785.htm#ixzz1aBTwBkKT
●不需要管理及維護 - Google 幫你搞定這部份的工作
●高可靠性及可用性 - 資料在雲端主機間複製、同步,當硬體發生問題時會自動調整,讓其對使用者造成的影響降到最低
●開發者熟悉的 MySQL 資料庫環 - 支援 JDBC(Java) 和 DB-API(Python)
●提供完整的使用者介面來管理資料庫
●與 Google 應用服務引擎間有良好的整合
●高可靠性及可用性 - 資料在雲端主機間複製、同步,當硬體發生問題時會自動調整,讓其對使用者造成的影響降到最低
●開發者熟悉的 MySQL 資料庫環 - 支援 JDBC(Java) 和 DB-API(Python)
●提供完整的使用者介面來管理資料庫
●與 Google 應用服務引擎間有良好的整合
Google Cloud SQL 具備資料匯出匯入功能,以便開發人員將 MySQL 資料庫轉移至雲端。
哇~又有個新東東推出了,而且還有工具可以將MySQL的資料轉移,真的得找個時間研究一下了!
哇~又有個新東東推出了,而且還有工具可以將MySQL的資料轉移,真的得找個時間研究一下了!
2011年9月29日 星期四
產生結構化程式的規則!
過去學寫程式多從工具的角度出發,儘快學習用法、儘早生出東東來…一些學理的部份也不是那麼計較。不過,既然要重新學個新的語言,它又是JAVA,那麼就照教科書認真學習。

「產生結構化程式的規則」→哇!從來沒注意到有這回事…
一、以最簡單的活動圖開始。

二、任何的動作狀都可以用兩個循序的動作狀態加以取代。
三、任何的動作狀態都可以用任何的控制敘述式加以取代。
四、視需求以任意次數和順序使用規則二、規則三。
2011年9月28日 星期三
eclipse file editor找不到source file
使用eclipse開發java程式時,有個好用的功能就是將滑鼠游標停留類別字串上時,會跳出那個類別的說明內容,如果按Ctrl+滑鼠左鍵的話,則會出現那個類別的原始碼。可是…第一次用的時候,eclipse卻告訴我
Class File Editor
Source not found
找了一下,原來是eclipse設定中source的目錄是C:\Program Files\Java\jre7\lib\rt.jar,目錄中不包含原始檔,只要把它改成C:\Program Files\Java\jdk1.7.0\src.zip就好囉~
2011年9月26日 星期一
好用又免費的UML工具軟體
最近因為開始學習JAVA,教科書裏經常提到UML,所以不得不開始重視起UML。雖然以前曾少量的學習過一些,但是因為沒有個比較順手而且免費的工具,所以也就馬馬虎虎的學習。本想找一個eclipse的外掛,將工具都整合在一起,而且它絕對必要的功能就是要能自動產生JAVA語法。稍微爬了一下文,好像不容易找到這樣的工具。倒是找到一個應該是個人、學校使用免費的獨立軟體叫SoftIdeasModeler。畫面如下:


真是太棒了~
不過,中文的相容性好像還有問題,比如工具/產生文件/pdf的文件中,就沒法兒正常顯示,在rtf中則沒問題。

2011年7月25日 星期一
2011年7月18日 星期一
使用TortoiseSVN
2011年7月6日 星期三
在CentOS上安裝lighttpd
一直以來慣用的web伺服器都是apache,功能是很強,但是在學校裏,實際能用到的功能也不多啦!所以就換個精簡一點的來用用。因為在一些嵌入式的設備中看到滿多廠商使用的是lighttpd這個套件,所以就來試試。
它的功能也不算差啦!最重要的,它至少要支援php,要不就沒戲唱了!
不過很不幸的,CentOS並未將它包含在內,如果要安裝的話,就得下載原始碼自行編譯。「編譯」!?再說吧!先找rpm套件吧!
[root@centos5 ~]# wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
[root@centos5 ~]# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
[root@centos5 ~]# rpm -K rpmforge-release-0.5.2-2.el5.rf.i386.rpm
rpmforge-release-0.5.2-2.el5.rf.i386.rpm: (sha1) dsa sha1 md5 gpg OK
[root@centos5 ~]# rpm -ivh rpmforge-release-0.5.2-2.el5.rf.i386.rpm
Preparing... ########################################### [100%]
1:rpmforge-release ########################################### [100%]
接著就來安裝lighttpd
[root@centos5 ~]# yum install lighttpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.tc.edu.tw
* extras: ftp.tc.edu.tw
* rpmforge: fr2.rpmfind.net
* updates: ftp.tc.edu.tw
Setting up Install Process
Resolving Dependencies
--< Running transaction check
---< Package lighttpd.i386 0:1.4.28-2.el5.rf set to be updated
--< Finished Dependency Resolution
Dependencies Resolved
=============================================================================================================================
Package Arch Version Repository Size
=============================================================================================================================
Installing:
lighttpd i386 1.4.28-2.el5.rf rpmforge 1.1 M
Transaction Summary
=============================================================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 1.1 M
Is this ok [y/N]:
Downloading Packages:
lighttpd-1.4.28-2.el5.rf.i386.rpm | 1.1 MB 00:03
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : lighttpd 1/1
Installed:
lighttpd.i386 0:1.4.28-2.el5.rf
Complete!
修改一下權限
[root@centos5 ~]# mkdir -p /var/run/lighttpd/
[root@centos5 ~]# chown lighttpd /var/run/lighttpd
檢查tcp 80是不是被佔住
[root@centos5 ~]# netstat -an |grep :80
檢查組態檔語法是否正確
[root@centos5 ~]# lighttpd -t -f /etc/lighttpd/lighttpd.conf
Syntax OK
就給它啟動吧!沒想到發生下面的錯誤,起不來…
[root@centos5 lighttpd]# service lighttpd start
Starting lighttpd: 2011-07-06 16:03:23: (server.c.722) couldn't set 'max filedescriptors' Operation not permitted
[FAILED]
原因是和SELinue的policy衝突了,要修改一下。
[root@centos5 lighttpd]# /usr/sbin/semodule -DB
[root@centos5 lighttpd]# service auditd restart
[root@centos5 lighttpd]# grep lighttpd /var/log/audit/audit.log | audit2allow -M lighttpdmaxfds2
******************** IMPORTANT ***********************
To make this policy package active, execute:
semodule -i lighttpdmaxfds2.pp
[root@centos5 lighttpd]# semodule -i lighttpdmaxfds2.pp
[root@centos5 lighttpd]# service lighttpd restart
Stopping lighttpd: [FAILED]
Starting lighttpd: [ OK ]
不過CentOS預設有啟動iptables,所以tcp 80是不被放行的,另外預設的根目錄裏/srv/www裏沒檔案,所以得自行建個檔案,要不然從瀏覽器中一直會顯示404的錯誤喔!
參考文章:
http://wiki.centos.org/zh-tw/AdditionalResources/Repositories/RPMForge
http://www.howtoforge.com/installing-lighttpd-with-php5-and-mysql-support-on-centos-5.4
http://www.kernelhardware.org/lighttpd-and-centos-5/
https://bugzilla.redhat.com/show_bug.cgi?id=571924
它的功能也不算差啦!最重要的,它至少要支援php,要不就沒戲唱了!
不過很不幸的,CentOS並未將它包含在內,如果要安裝的話,就得下載原始碼自行編譯。「編譯」!?再說吧!先找rpm套件吧!
還好有個套件叫RPMforge,它將一些好用的東東整理成軟件庫,方便使用者可以直接用yum安裝一些套件。先到http://packages.sw.be/網上去找找。
一、先安裝維護者的金鑰
二、下載
三、驗證檔案
四、安裝
[root@centos5 ~]# wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
[root@centos5 ~]# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
[root@centos5 ~]# rpm -K rpmforge-release-0.5.2-2.el5.rf.i386.rpm
rpmforge-release-0.5.2-2.el5.rf.i386.rpm: (sha1) dsa sha1 md5 gpg OK
[root@centos5 ~]# rpm -ivh rpmforge-release-0.5.2-2.el5.rf.i386.rpm
Preparing... ########################################### [100%]
1:rpmforge-release ########################################### [100%]
接著就來安裝lighttpd
[root@centos5 ~]# yum install lighttpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.tc.edu.tw
* extras: ftp.tc.edu.tw
* rpmforge: fr2.rpmfind.net
* updates: ftp.tc.edu.tw
Setting up Install Process
Resolving Dependencies
--< Running transaction check
---< Package lighttpd.i386 0:1.4.28-2.el5.rf set to be updated
--< Finished Dependency Resolution
Dependencies Resolved
=============================================================================================================================
Package Arch Version Repository Size
=============================================================================================================================
Installing:
lighttpd i386 1.4.28-2.el5.rf rpmforge 1.1 M
Transaction Summary
=============================================================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 1.1 M
Is this ok [y/N]:
Downloading Packages:
lighttpd-1.4.28-2.el5.rf.i386.rpm | 1.1 MB 00:03
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : lighttpd 1/1
Installed:
lighttpd.i386 0:1.4.28-2.el5.rf
Complete!
修改一下權限
[root@centos5 ~]# mkdir -p /var/run/lighttpd/
[root@centos5 ~]# chown lighttpd /var/run/lighttpd
檢查tcp 80是不是被佔住
[root@centos5 ~]# netstat -an |grep :80
檢查組態檔語法是否正確
[root@centos5 ~]# lighttpd -t -f /etc/lighttpd/lighttpd.conf
Syntax OK
就給它啟動吧!沒想到發生下面的錯誤,起不來…
[root@centos5 lighttpd]# service lighttpd start
Starting lighttpd: 2011-07-06 16:03:23: (server.c.722) couldn't set 'max filedescriptors' Operation not permitted
[FAILED]
原因是和SELinue的policy衝突了,要修改一下。
[root@centos5 lighttpd]# /usr/sbin/semodule -DB
[root@centos5 lighttpd]# service auditd restart
[root@centos5 lighttpd]# grep lighttpd /var/log/audit/audit.log | audit2allow -M lighttpdmaxfds2
******************** IMPORTANT ***********************
To make this policy package active, execute:
semodule -i lighttpdmaxfds2.pp
[root@centos5 lighttpd]# semodule -i lighttpdmaxfds2.pp
[root@centos5 lighttpd]# service lighttpd restart
Stopping lighttpd: [FAILED]
Starting lighttpd: [ OK ]
不過CentOS預設有啟動iptables,所以tcp 80是不被放行的,另外預設的根目錄裏/srv/www裏沒檔案,所以得自行建個檔案,要不然從瀏覽器中一直會顯示404的錯誤喔!
參考文章:
http://wiki.centos.org/zh-tw/AdditionalResources/Repositories/RPMForge
http://www.howtoforge.com/installing-lighttpd-with-php5-and-mysql-support-on-centos-5.4
http://www.kernelhardware.org/lighttpd-and-centos-5/
https://bugzilla.redhat.com/show_bug.cgi?id=571924
2011年7月4日 星期一
anaconda-ks.cfg內容
# Kickstart file automatically generated by anaconda.
install
url --url http://ftp.isu.edu.tw/pub/Linux/CentOS/5.6/os/i386
lang en_US.UTF-8
keyboard us
network --device eth0 --bootproto static --ip 192.168.1.111 --netmask 255.255.255.0 --gateway 192.168.1.254 --nameserver 168.95.1.1,8.8.8.8 --hostname centos5
rootpw --iscrypted $1$LCZhYcG9$pxb7ZeHvJXaoPABPQQVU4/
firewall --enabled --port=22:tcp
authconfig --enableshadow --enablemd5
selinux --enforcing
timezone --utc Asia/Taipei
bootloader --location=mbr --driveorder=sda
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart --all --drives=sda
#part /boot --fstype ext3 --size=100 --ondisk=sda
#part pv.2 --size=0 --grow --ondisk=sda
#volgroup VolGroup00 --pesize=32768 pv.2
#logvol / --fstype ext3 --name=LogVol00 --vgname=VolGroup00 --size=1024 --grow
#logvol swap --fstype swap --name=LogVol01 --vgname=VolGroup00 --size=512 --grow --maxsize=1024
%packages
@base
@core
@dialup
@editors
@text-internet
keyutils
iscsi-initiator-utils
trousers
fipscheck
device-mapper-multipath
CentOS 5.6 netinstall 最小安裝套件清單
只是記錄一下!
在安裝完成之後,/root/install.log 中有詳細的記錄,本想排序一下的,不過想想還是算了,說不定那天會需要原始的順序。
-- install.log --
filesystem-2.4.0-3.el5
tzdata-2010l-1.el5
rmt-0.4b41-5.el5
nash-5.1.19.6-68.el5
termcap-5.5-1.20060701.1
dump-0.4b41-5.el5
gnu-efi-3.0c-1.1
specspo-13-1.el5.centos
libgcc-4.1.2-50.el5
chkconfig-1.3.30.2-2.el5
glib2-2.12.3-4.el5_3.1
audit-libs-1.7.18-2.el5
libstdc++-4.1.2-50.el5
libusb-0.1.12-5.1
libtermcap-2.0.8-46.1
info-4.8-14.el5
libsepol-1.15.2-3.el5
nss-3.12.8-1.el5.centos
sed-4.1.5-5.fc6
bzip2-libs-1.0.3-6.el5_5
libxml2-2.6.26-2.1.2.8.el5_5.1
db4-4.3.29-10.el5_5.2
libattr-2.4.32-1.1
libcap-1.10-26
procps-3.2.7-16.el5
diffutils-2.8.1-15.2.3.el5
libgpg-error-1.4-2
libgcrypt-1.4.4-5.el5
binutils-2.17.50.0.6-14.el5
libpng-1.2.10-7.1.el5_5.3
libjpeg-6b-37
gdbm-1.8.0-26.2.1
libICE-1.0.1-2.1
libtiff-3.8.2-7.el5_5.5
bzip2-1.0.3-6.el5_5
gzip-1.3.5-11.el5.centos.1
cpio-2.6-23.el5_4.1
libsysfs-2.0.0-6
mailx-8.1.1-44.2.2
perl-String-CRC32-1.4-2.fc6
keyutils-1.2-1.el5
nss-tools-3.12.8-1.el5.centos
ed-0.2-39.el5_2
time-1.7-27.2.2
m4-1.4.5-3.el5.1
iputils-20020927-46.el5
tcl-8.4.13-4.el5
desktop-file-utils-0.10-7
grep-2.5.1-55.el5
libIDL-0.8.7-1.fc6
file-4.17-15.el5_3.1
checkpolicy-1.33.1-6.el5
dmidecode-2.10-3.el5
pax-3.4-2.el5_4
wireless-tools-28-2.el5
libdaemon-0.10-5.el5
libXdmcp-1.0.1-2.1
lftp-3.7.11-4.el5_5.3
numactl-0.9.8-11.el5
iptstate-1.4-2.el5
jwhois-3.2.3-11.el5
rsync-2.6.8-3.1
cyrus-sasl-plain-2.1.22-5.el5_4.3
udftools-1.0.0b3-0.1.el5
mtr-0.71-3.1
talk-0.17-29.2.2
cpuspeed-1.2.1-9.el5
ibmasm-3.0-9
zip-2.31-2.el5
dos2unix-3.1-27.2.el5
rdate-1.4-8.el5
hdparm-6.6-2
eject-2.1.5-4.2.el5
tree-1.5.0-4
pam_smb-1.1.7-7.2.1
pam_passwdqc-1.0.2-1.2.2
lrzsz-0.12.20-22.1
rdist-6.1.5-44
redhat-menus-6.7.8-3.el5
xorg-x11-filesystem-7.1-2.fc6
bitstream-vera-fonts-1.10-7
libX11-1.0.3-11.el5
libXrender-0.9.1-3.1
libXcursor-1.1.7-1.1
libXres-1.0.1-3.1
libXinerama-1.0.1-2.1
grub-0.97-13.5
libselinux-1.33.4-5.7.el5
device-mapper-1.02.55-2.el5
findutils-4.2.27-6.el5
krb5-libs-1.6.1-55.el5
openldap-2.3.43-12.el5_5.3
cairo-1.2.4-5.el5
psmisc-22.2-7
tar-1.15.1-30.el5
libpcap-0.9.4-15.el5
cryptsetup-luks-1.0.3-5.el5
libselinux-utils-1.33.4-5.7.el5
device-mapper-multipath-0.4.7-42.el5
pango-1.14.9-8.el5.centos
libwvstreams-4.2.2-2.1
wget-1.11.4-2.el5_4.1
cups-libs-1.3.7-26.el5
mtools-3.9.10-2.fc6
nscd-2.5-58
lvm2-2.02.74-5.el5
MAKEDEV-3.23-1.2
vim-minimal-7.0.109-7.el5
minicom-2.1-3
gnupg-1.4.5-14.el5_5.1
cadaver-0.22.3-4.el5
tmpwatch-2.9.7-1.1.el5.5
stunnel-4.15-2.el5.1
slrn-0.9.8.1pl1-1.2.2
pkinit-nss-0.7.6-1.el5
ksh-20100202-1.el5_5.1
mlocate-0.15-1.el5.2
nss_db-2.2-35.4.el5_5
syslinux-3.11-4
logwatch-7.3-8.el5
GConf2-2.14.0-9.el5
libwnck-2.16.0-4.fc6
dbus-libs-1.1.2-14.el5
dbus-1.1.2-14.el5
rpm-4.4.2.3-22.el5
python-libs-2.4.3-43.el5
libsemanage-1.9.1-4.4.el5
dmraid-1.0.0.rc13-63.el5
rpm-python-4.4.2.3-22.el5
gamin-python-0.1.7-8.el5
system-config-securitylevel-tui-1.6.29.1-6.el5
notification-daemon-0.3.5-9.el5
bluez-gnome-0.5-5.fc6
audit-libs-python-1.7.18-2.el5
yum-metadata-parser-1.1.2-3.el5.centos
m2crypto-0.16-6.el5.8
python-elementtree-1.2.6-5
pam-0.99.6.2-6.el5_5.2
util-linux-2.13-0.56.el5
SysVinit-2.86-15.el5
policycoreutils-1.33.12-14.8.el5
portmap-4.0-65.2.2.1
passwd-0.73-2
kbd-1.12-21.el5
ypbind-1.19-12.el5
sysklogd-1.4.1-46.el5
cyrus-sasl-2.1.22-5.el5_4.3
dnsmasq-2.45-1.1.el5_3
which-2.16-7
pygobject2-2.12.1-5.el5
fipscheck-1.2.0-1.el5
fetchmail-6.3.6-1.1.el5_3.1
yp-tools-2.9-1.el5
setools-3.0-3.el5
bluez-utils-3.7-2.2.el5.centos
rng-utils-2.0-4.el5
smartmontools-5.38-2.el5
acpid-1.0.4-9.el5_4.2
rp-pppoe-3.5-32.1
prelink-0.4.0-2.el5
nss_ldap-253-37.el5
pam_pkcs11-0.5.3-23
sudo-1.7.2p1-10.el5
libhugetlbfs-1.3-8.2.el5
htmlview-4.0.0-2.el5
python-urlgrabber-3.1.0-6.el5
selinux-policy-targeted-2.4.6-300.el5
sos-1.7-9.49.el5
pcsc-lite-1.4.4-4.el5_5
module-init-tools-3.3-0.pre3.1.60.el5_5.1
hwdata-0.213.22-1.el5
pciutils-3.1.7-3.el5
oddjob-0.27-11.el5
kernel-2.6.18-238.el5
yum-updatesd-0.9-2.el5
pcmciautils-014-5
isdn4k-utils-3.2-56.el5
nfs-utils-1.0.9-50.el5
hal-0.5.8.1-62.el5
NetworkManager-0.7.0-10.el5_5.2
NetworkManager-glib-0.7.0-10.el5_5.2
system-config-network-tui-1.3.99.18-1.el5
gpg-pubkey-e8562897-459f07a4
openssh-server-4.3p2-72.el5_6.3
setup-2.5.58-7.el5
basesystem-8.0-5.1.1.el5.centos
glibc-common-2.5-58
mailcap-2.1.23-1.fc6
centos-release-notes-5.6-0
cracklib-dicts-2.8.9-3.3
rootfiles-8.1-1.1.1
man-pages-2.39-17.el5
words-3.0-9.1
glibc-2.5-58
zlib-1.2.3-3
mktemp-1.5-23.2.2
popt-1.10.2.3-22.el5
expat-1.95.8-8.3.el5_5.3
atk-1.12.2-1.fc6
bash-3.2-24.el5
ncurses-5.5-24.20060715
nspr-4.8.6-1.el5
readline-5.1-3.el5
gawk-3.1.5-14.el5
tcp_wrappers-7.6-40.7.el5
cyrus-sasl-lib-2.1.22-5.el5_4.3
keyutils-libs-1.2-1.el5
libacl-2.2.39-6.el5
sqlite-3.3.6-5
libidn-0.6.5-1.1
freetype-2.2.1-28.el5_5.1
elfutils-libelf-0.137-3.el5
iproute-2.6.18-11.el5
iptables-1.3.5-5.3.el5_4.1
hesiod-3.1.0-8
slang-2.0.6-4.el5
perl-5.8.8-32.el5_5.2
libSM-1.0.1-3.1
gnutls-1.4.1-3.el5_4.8
less-436-7.el5
make-3.81-3.el5
libXau-1.0.1-3.1
pcsc-lite-libs-1.4.4-4.el5_5
aspell-0.60.3-7.1
iptables-ipv6-1.3.5-5.3.el5_4.1
vim-common-7.0.109-7.el5
hmaccalc-0.9.6-3.el5
groff-1.18.1.1-11.1
libgomp-4.4.4-13.el5
gpm-1.20.1-74.1
procmail-3.22-17.1.el5.centos
gamin-0.1.7-8.el5
pcre-6.6-6.el5
bc-1.06-21
ORBit2-2.14.3-5.el5
libevent-1.4.13-1
libvolume_id-095-14.24.el5
mingetty-1.07-5.2.2
dosfstools-2.11-9.el5
ethtool-6-4.el5
bluez-libs-3.7-1.1
sgpio-1.2.0_10-2.el5
sysfsutils-2.0.0-6
fbset-2.1-22
crash-4.1.2-8.el5.centos
acl-2.2.39-6.el5
attr-2.4.32-1.1
ftp-0.17-35.el5
telnet-0.17-39.el5
nano-1.3.12-1.1
mgetty-1.1.33-9.fc6
nc-1.84-10.fc6
unzip-5.52-3.el5
setarch-2.0-1.1
vconfig-1.9-3
rsh-0.17-40.el5
traceroute-2.0.1-5.el5
symlinks-1.2-24.2.2
setserial-2.17-19.2.2
unix2dos-2.2-26.2.3.el5
finger-0.17-32.2.1.1
libaio-0.3.106-5
crontabs-1.10-8
centos-release-5-6.el5.centos.1
redhat-logos-4.9.99-11.el5.centos
aspell-en-6.0-2.1
libXext-1.0.1-2.1
libXfixes-4.0.1-2.1
libXrandr-1.1.1-3.3
libXi-1.0.1-4.el5_4
startup-notification-0.8-4.1
anacron-2.3-45.el5.centos
shadow-utils-4.0.17-18.el5
e2fsprogs-libs-1.39-23.el5_5.1
coreutils-5.97-23.el5_4.2
openssl-0.9.8e-12.el5_5.7
fontconfig-2.4.1-7.el5
e2fsprogs-1.39-23.el5_5.1
logrotate-3.7.4-9.el5_5.2
kpartx-0.4.7-42.el5
libgssapi-0.10-2
net-tools-1.60-81.el5
nfs-utils-lib-1.0.8-7.6.el5
libXft-2.1.10-1.1
neon-0.25.5-10.el5_4.1
bind-libs-9.3.6-16.P1.el5
curl-7.15.5-9.el5
tcsh-6.14-17.el5_5.2
audit-1.7.18-2.el5
device-mapper-event-1.02.55-2.el5
libutempter-1.1.4-4.el5
lockdev-1.0.1-10
patch-2.5.4-31.el5
amtu-1.0.6-2.el5
bind-utils-9.3.6-16.P1.el5
conman-0.1.9.2-8.el5
autofs-5.0.1-0.rc2.143.el5_5.6
tcpdump-3.9.4-15.el5
elinks-0.11.1-6.el5_4.1
psacct-6.3.2-44.el5
parted-1.8.1-27.el5
vim-enhanced-7.0.109-7.el5
lsof-4.78-3
hicolor-icon-theme-0.9-2.1
gtk2-2.10.4-21.el5_5.6
trousers-0.3.1-4.el5
python-2.4.3-43.el5
dbus-glib-0.73-10.el5_5
newt-0.52.2-15.el5
fipscheck-lib-1.2.0-1.el5
libxml2-python-2.6.26-2.1.2.8.el5_5.1
gettext-0.17-1.el5
rhpl-0.194.1-1
rpm-libs-4.4.2.3-22.el5
dbus-python-0.70-9.el5_4
man-1.6d-1.1
ntsysv-1.3.30.2-2.el5
libnotify-0.4.2-6.el5
wpa_supplicant-0.5.10-9.el5
python-sqlite-1.1.7-1.2.1
iscsi-initiator-utils-6.2.0.872-6.el5
libselinux-python-1.33.4-5.7.el5
cracklib-2.8.9-3.3
udev-095-14.24.el5
ppp-2.4.4-2.el5
initscripts-8.45.33-1.el5.centos
libuser-0.54.7-2.1.el5_4.1
usermode-1.88-3.el5.2
authconfig-5.3.21-6.el5
dhclient-3.0.5-23.el5_5.2
vixie-cron-4.1-77.el5_4.1
sendmail-8.13.8-8.el5
mcstrans-0.2.11-3.el5
at-3.1.8-84.el5
dmraid-events-1.0.0.rc13-63.el5
mdadm-2.6.9-3.el5
mutt-1.4.2.2-3.0.2.el5
setuptool-1.19.2-1.el5.centos
quota-3.13-4.el5
microcode_ctl-1.17-1.52.el5
dhcpv6-client-1.0.10-20.el5
irqbalance-0.55-15.el5
ipsec-tools-0.6.5-14.el5_5.5
wvdial-1.54.0-5.2.2.1
krb5-workstation-1.6.1-55.el5
pam_ccreds-3-5
pam_krb5-2.2.14-18.el5
ecryptfs-utils-75-5.el5
readahead-1.3-8.el5
selinux-policy-2.4.6-300.el5
python-iniparse-0.2.3-4.el5
redhat-lsb-4.0-2.1.4.el5
pinfo-0.6.9-1.fc6
mkinitrd-5.1.19.6-68.el5
ifd-egate-0.05-15
yum-3.2.22-33.el5.centos
ccid-1.3.8-1.el5
oddjob-libs-0.27-11.el5
yum-fastestmirror-1.1.16-14.el5.centos.1
mkbootdisk-1.5.3-2.1
coolkey-1.1.0-15.el5
usbutils-0.71-2.1
irda-utils-0.9.17-2.fc6
pm-utils-0.99.3-10.el5.centos
kudzu-1.2.57.1.26-1.el5.centos
apmd-3.2.2-5
firstboot-tui-1.4.27.8-1.el5.centos
設定ip
如果在安裝的過程中使用的透過dhcp方式取得ip的話,當伺服器就比較不便。所以如果有靜態IP的話會比較方便。在CentOS中這個工作簡單多了,因為系統有提供一個文字命令system-config-network可以直接設定。
> system-config-network
另外,設定hostname和dns的設定也是在這個介面中操作。
當然重新啟動網路服務
> service network restart
畫面一直停在這兒不必覺得奇怪,因為ip變了,所以putty當然連不上囉!
安裝openssh-server
CentOS系統安裝好後當然接著就是裝其它的應用軟體,可是持續待在機房裏實在也不是辦法,噪音和機器散發出的有害物質也太令人害怕了!所以當然是將機器放在機房,透過遠端連線進來操作。基於安全性的問題,現在的linux遠端連線都是透過加密連線,實做的方式就裝個ssh伺服器最快了!
在CentOS裏,只要下命令
> yum install openssh-server
> …(略)…
> Is this ok[y/N]:
接著會出現一些套件相依性的資訊,會另外安裝openssh、openssh-clients大約1.0M左右。當然要按y繼續安裝囉!
接著會顯示要匯入一個GPG的key,先按y繼續。沒意外的話,就會顯示安裝成功的訊息。
接著就啟動服務囉!
再來就用putty連線一下囉!第一次連線的話,putty會先問是否要將key存起來,按y的話下次連線就不會再出現詢問畫面。
如果沒有設定其它使用者的話,可以用root直接登入。
這樣就可以用囉!進階的設定待後續…
CentOS設定系統時間
系統剛安裝好,先處理系統時間,從資安的角度來看,系統時間的正確性是基本的查核項目。
在CentOS裏關於時間的命令有date、hwclock,若透過網路更新的話則有ntpdatet可用。
以CentOS-5.6-i386-netinstall.iso以最小安裝為例。
不過,為了一勞永逸,當然是透過網路更新比較省事囉!首先,要先安裝ntp這個套件。
[root@centos5 ~]# yum install ntp
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.tc.edu.tw
* extras: ftp.tc.edu.tw
* updates: ftp.tc.edu.tw
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package ntp.i386 0:4.2.2p1-9.el5.centos.2.1 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
=========================================================================================
Package Arch Version Repository Size
=========================================================================================
Installing:
ntp i386 4.2.2p1-9.el5.centos.2.1 base 1.3 M
Transaction Summary
=========================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 1.3 M
Is this ok [y/N]:
按y繼續囉!
Downloading Packages:
ntp-4.2.2p1-9.el5.centos.2.1.i386.rpm | 1.3 MB 00:01
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : ntp 1/1
Installed:
ntp.i386 0:4.2.2p1-9.el5.centos.2.1
Complete!
話不多說,趕快同步一下,不過得先挑個伺服器。我慣用的的是tock.stdtime.gov.tw,
[root@centos5 ~]# ntpdate tock.stdtime.gov.tw
5 Jul 14:42:35 ntpdate[2664]: step time server 220.130.158.71 offset 73445.538839 sec
不過也有人建議用pool.ntp.org這個網址,所以上pool.ntp.org網站查了一下,在台灣它有13台伺服器在服務,網站是tw.pool.ntp.org。用ping測試了一下,好像是tock.stdtime.gov.tw回應快了一點點。
C:\Documents and Settings\User>ping tock.stdtime.gov.tw
Pinging tock.stdtime.gov.tw [220.130.158.71] with 32 bytes of data:
Reply from 220.130.158.71: bytes=32 time=8ms TTL=47
Reply from 220.130.158.71: bytes=32 time=9ms TTL=47
Reply from 220.130.158.71: bytes=32 time=8ms TTL=47
Reply from 220.130.158.71: bytes=32 time=8ms TTL=47
Ping statistics for 220.130.158.71:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 8ms, Maximum = 9ms, Average = 8ms
C:\Documents and Settings\User>ping tw.pool.ntp.org
Pinging tw.pool.ntp.org [140.130.175.9] with 32 bytes of data:
Reply from 140.130.175.9: bytes=32 time=10ms TTL=51
Reply from 140.130.175.9: bytes=32 time=10ms TTL=51
Reply from 140.130.175.9: bytes=32 time=10ms TTL=51
Reply from 140.130.175.9: bytes=32 time=9ms TTL=51
Ping statistics for 140.130.175.9:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 9ms, Maximum = 10ms, Average = 9ms
2011年7月3日 星期日
網站被駭了!
說來也是手閒沒事,這個網站今年還是第一次上去逛逛,就覺得網站換過的樣子!原來以為它和研習中心是同一個站,所以好奇想看看它是什麼寫出來的。從網址上看來應該是用xoops架的,所以就胡亂輸個網址,沒想到神奇的事情發生了!

本來還以為是網站提供的特效Flash,只是看著看著竟然出現骷髏頭,然後說“Admin is Loser. You Are GAME OVER”,頓時了解原來網站被駭了!
接著再看一下網站首頁的原始碼,99%的可能性是用xoops架的,而且還是經由中心著名的講師二人組改寫的。本來想直接電話聯絡中心的人趕緊去處理,不過想想還是透過網路中心去處理好了!這樣也有個證人確認不是我眼花或我的電腦中標…
當然,當天下午網站就把那個模組拿掉了,過了二三天了吧!上網去看仍舊沒看到那個模組上線。
因為這件事,不禁想起十年前唸碩班的時候,有同學指出當時中心的研習網站有SQL injection的問題,而且使用者的帳號(當時用身份證)也可能洩漏了!只是當時只有「電腦處理個人資料保護法」,不像現在個資法的規範,所以大概也就過去了!
順便一提,網站首頁上有段「網站更新日期:....」是用javascript寫的,利用document.lastModified的。
這個方法在靜態網頁上是沒問題的,可是在php動態產生的網頁上,會顯示的是網頁產生時的時間。所以它一直顯示的都是目前的時間。不過,從網頁上看到的時間卻不是目前的時間,整整晚了8個小時。ㄟ~那不就是台北時區的值嗎?所以目前伺服器上的時間設定是有問題的囉!不知寫程式的人注意到了沒?!還是頭痛醫痛而己。
2011年6月20日 星期一
2011年4月7日 星期四
無用之用
因為女王服務的單位要超額調動,所以依校內的超額辦法(比積分)排出了順位,但是單位大老闆認為,不適任的才要離開,所以就“喬”了一下,另外安排她心中認為不適任的人成為調動的名單。不去討論原因,但原來想調動的人動不了,自然一肚子大便,於是在fb上留言,也有好心人士回應,內容就是莊子囉!
莊子曰:『山木自寇也,膏火自煎也。桂可食,故伐之;漆可用,故割之。人皆知有用之用,而莫知無用之用也。』
看不懂嗎?我也是。
網路上的解釋,內文如下:
自古以來,很多聰明才智極高的人,如商鞅、蘇秦、張儀…,都不得善終;萬物也是一樣,都被自己的「用處」給害死了。「無用」才是明哲保身之道啊!
其實,事實上並非都是別人的錯,因為今年擔任行政工作,依教育局的超額的規範公文早就明白指出,行政人員“得”不列入超額作業。這樣的作法是雙面刃的,想留下的話,就是好工具;但如果想離開的話,就有點不太妙!因為大老闆一句話,任何人就走不了囉~所以上面的那些古人,雖然是不得善終,但他們也都達到自己想要的位置,所以也可以說死的好囉!看到現在的起額,因為“苦主”這個學年擔任組長,說實在的也算是賺到好處,現在大老問不讓走,那也是應該的。
2011年3月13日 星期日
德高望重 vs 指鹿為馬
當聽聞女王工作場所有位處室主管“準要求”的方式,請各位同仁(尤其是曾擔任其下屬組長的)幫她寫推薦信(不知是何種性質與用途)。當聽到這件重責大任時,不禁好奇“自我感覺良好“這詞在歷史悠久的中華文化中,是從那個詞演化而來的~
呵呵~國文造詣不高的小弟,經過一番努力之後發現,根據網路文章說「自我感覺良好」似乎是出現在王鼎鈞一九九六年日記裡“…讀自己的文章,自我感覺良好…”,所以文章自己寫應該是感覺最好的,別人再怎麼寫都不會比自己寫的來的好。所以,不才深深覺得應該這樣演化的,那就是「自我感覺良好」(現在)←「德高望重」(後來)←「德隆望重」(晉朝)。因此,一但自我感覺良好時,自然就覺得德高望重囉~。
既然如此,大可不必向所有人“邀稿”的,因為別人的文章不可能超越自己寫的!
另外,原來「指鹿為馬」(趙高)和「德高望重」(司馬元顯)的來由竟然大同小異○也!不同的是,指鹿為馬的意思到現代是比較負面的形容詞,而德高望重卻是較正面的詞,除非它根本上就有貶抑的潛在意涵囉~
2011年3月8日 星期二
2011年2月24日 星期四
VOIP 編碼器的比較
語音編碼器有個測量指數,可以此做為選擇的比較基凖,範圍從1 (最差)到 5 (最好)。
| MOS | Quality | Impairment |
|---|---|---|
| 5 | Excellent | Imperceptible |
| 4 | Good | Perceptible but not annoying |
| 3 | Fair | Slightly annoying |
| 2 | Poor | Annoying |
| 1 | Bad | Very annoying |
(摘自於自WIKIPEDIA Mean opinion score)
Linksys SPA 3102手冊裏也提供了一些編碼器所需要的頻寬需求、複雜度和MOS的指數。

所以,若以校內100台網路電話的數量同時通話,用最高話質的G.711 就需要 64x100 = 6400 kbps = 800KB/s = 0.8 MB/s。這樣在校內的環境(100M)下其實也還好,對外的話(100M,集縮比是1:5,所以猜想實際大約20幾個妹吧!)不過因為不是專屬的網路,還得和其它資料共用,萬一遇到大量的資料傳輸的話,或許就會受到影響,所以支援QoS的設備就變得必要了!
在VoMPLS環境中探討網路電話閘道器之話務管控一文中也提到頻寬計算的應該考慮到使用者說話的行為,所以提出一個使用量估算表如下:

哈~線上就有計算機可以幫忙算
2011年2月17日 星期四
等待新玩具的到來…
本來想直接網路下單買一個SheevaPlug std.來玩玩,沒想到訂價美金99元的東東,運到台灣竟然還要再加美金34塊多的運費。哇!真是搶劫呀!只好四處尋覓是否有親朋好友要去美國一趟,可以順道帶一個回來,多少可以省一點。皇天不負苦心人,最近剛好有人要去LA開會,正好可以幫的上忙。這個玩具如果表現的好的話,五月還有人要去美國的啦!到時可以再多帶幾個回來。
原本聽說學校的那個語音匣道器不打算增加一台,其實還有點失望,因為那台是打算用FXS+FXO的機型,可以讓校內的網路電話可以撥外線。雖然現在校內的SIP伺服器是免費的,但是目前給的功能少得可憐,雖說會依需求免費提供功能模組,總是覺得和Asterisk比起來,爽度感覺沒這麼高。沒想到今天竟然有人來裝了○也!算是件好事吧!只是第一次看到校內交換機,沒想到線可以亂成這樣,廠商還說那樣已經是整理過一次了,天啊!當時如果有想到的話,真的應該拍照留念的。
2011年2月15日 星期二
2011年2月12日 星期六
製作超精簡的Asterisk系統
雖然使用Elastix、AsteriskNow…這類安裝光碟可以極近無痛的方式建立屬於自於的ippbx系統,但是要在pc上執行,總是佔空間和耗電,所以就上網找找是否有解決的方式。其實,先前就注意到PlugComputer這類的產品,真是超炫的產品,價格也不算貴(美金99元,換算一下現在只要不到2900台幣○也!),但是卻可以執行完整的作業系統。另一款是Marvell出品的Marvell Plug Computer 3.0,這個“看”起來比SheevaPlug帥氣,外型跟GuruPlug比較像。
不過GuruPlug這個規格比較棒,而且定價也一樣是美金99元,重點是已經成功安裝PlugPBX在GuruPlug上執行了!嗯~看來還是買GuruPlug這個東東好了!這樣就可以配合Linksys SPA3000建置供家族用的網路電話系統了!最好是整合Asterisk + Google Talk的話,就更完美了!
別離題了…主要是要有支援Asterisk系統的啦!找到了一個plugpbx這套已經可以支援SheevaPlug這個Plug Computer了,而且還持續在更新,目前的版本是PlugPBX 2.0。這裏也有另一篇開箱文和安裝Asterisk的說明。
另外又看到原來Cisco Linksys NSLU2這個產品,原來它只是個外接式的儲存介面裝置,台銀的價格是新台幣4455元。價格比SheevaPlug高了些,不過有個網站www.nslu2-linx.org支援它,比較不怕設備變成孤兒。對它還滿心動了…不過,這篇文章裏卻說:
[2009-11-02] New guide: how to migrate your NSLU2 Debian installation to a Sheevaplug. The SheevaPlug is a nice replacement for the NSLU2 with 512 MB of RAM and a 1.2 GHz CPU.看來,可以不花心思想NSLU2這個產品了,找個時間買台SheevaPlug,來裝PlugPBX好了。
2011年2月11日 星期五
2pm的“十分滿分的十分”
超棒的歌詞,不過怕網頁不見了,所以還是把內容再貼一次!
That girl neo'mu' ye'bbeo' Oh my god gi'ga' mag'hyeo'
這是從未見過的美麗
i'geon' bon' jeog'i' eobs'neun' geu'reon' a'reum'da'um'i'ya'
怎麼解釋也不會明白的
mal'ro' seol'myeong'hae'do' al'a'deud'ji' mos'hal'geo'ya'
在書裡才能看到的 在夢裡才能見到的
caeg' sog'e'seo'na' bol' su' iss'neun' ggum' sog'e'seo'na' man'na'bo'neun'
那種女人 不是天天都能見到的
geu'reon' yeo'ja'ran' mal'ya' nal'i'myeon' nal'ma'da' o'ji' anh'a'
後背讓人很煩惱
dwis'mo'seub'i' neo'mu' sa'ram'eul' goe'rob'ge' hae'
讓善良的我產生了不好的想法
cag'han' na'reul' ja'ggu' na'bbeun' mam'eul' meog'ge' hae'
這個真的忍受不了 真的讓人很痛苦
i'geon' cam'eul' su'ga' eobs'eo' jeong'mal' neo'mu'na' goe'ro'weo'
比起看電影美女也煩惱更痛苦
i'geon' cam'eul' su'ga' eobs'eo' jeong'mal' neo'mu'na' goe'ro'weo'
她的嘴唇很甜 嘴唇很甜
geu'nyeo'yi' ib'sul'eun' mas'iss'eo' ib'sul'eun' mas'iss'eo'
(十分滿分的十分)
(10jeom' man'jeom'e' 10jeom)
她的腿很修長 腿很修長
geu'nyeo'yi' da'ri'neun' meos'jyeo' da'ri'neun' meos'jyeo'
(十分滿分的十分)
(10jeom' man'jeom'e' 10jeom)
她飄逸的頭髮 飄逸的頭髮
geu'nyeo'yi' nal'ri'neun' meo'ris'gyeol' nal'ri'neun' meo'ris'gyeol'
(十分滿分的十分)
(10jeom' man'jeom'e' 10jeom)
她從頭到腳都是
geu'nyeo'neun' meo'ri'e'seo' bal'ggeut'gga'ji' mo'du' da'
(十分滿分的十分)
(10jeom' man'jeom'e' 10jeom)
她看著我笑(10分)
na'reul' bo'go' us'neun'de' (10jeom')
她說話的聲音(10分)
mal'ha'neun' mog'so'ri'ga' (10jeom')
越看她越覺得沒有瑕疵 Yes sir,Yes sir
man'na'myeon' man'na' bol' su'rog' eo'jjeom' bin'teum'i' eobs'eo' Yes sir, Yes sir
因為她我真的瘋了
geu'nyeo' ddae'mun'e' jeong'mal' mi'cyeoss'eo'
一天不見都不行
ha'ru'ra'do' an' bol' su'ga' eobs'eo'
昨天因為太忙休息了一天
ha'ru'ra'do' an' bol' su'ga' eobs'eo'
所以舌頭上長了刺 Oh
geu'reo'ja' ib'e' ga'si'ga' dod'cyeoss'eo' Oh
後背讓人很煩惱
dwis'mo'seub'i' neo'mu' sa'ram'eul' goe'rob'ge' hae'
讓善良的我產生了不好的想法
cag'han' na'reul' ja'ggu' na'bbeun' mam'eul' meog'ge' hae'
2011年2月10日 星期四
2011年2月9日 星期三
spa3k中文操作說明
寫完前面的感想後,才看到賣家給的操作文件,還是看中文比較快。不過在賣家的網站上並未看到下載連結,所以就不貼上了!用3cx的softphone試撥了一下,還真的能撥到家中的話機○也!真是太棒了!只是…沒幾個親朋好有070的號碼呀!再研究吧!
Sipura SPA-3000 Simplified Users Guide Version 1.1e手冊說管理介面的網址是下面這串
http://<<spa3000的ip>>/admin/advanced
試了一下,真的○也!雖然換了頭家,東東都沒換。預設webGUI並沒有設定管理密碼,為了安全著想,當然就得先改個管理密碼囉!因為網路上有篇文章指出竟然可以不須帳密就可以透過網路線重設spa3k~天啊!這還得了!(求證中…)不過手冊裏倒是有提到重設的方法。
首先,先移除網路線、PSTN電話線,只留下電話分機線接上,接著撥****進入選單,聽到語音提示之後,再按73738#,所有設定就還原成出廠值囉!
透過webGUI設當然比用語音選單設定來的快速、方便(至少不必去查出選單的快速鍵),不過還是得早點確定前面的那種重設方法是否真實,才能儘快讓sp3k正式“商業”運轉。
spa3000的第一步
翻開“超簡單”的操作說明…
原廠的圖文並貌說明 Set Up the SPA3000
※補充
有篇日本人貼的影片教學!
第一步:插上電源線(廢話)。
第二步:接上網路線(網路必須有dhcp),它會自動抓IP。
第三步:拿個類比電話機(傳統電話RJ11接頭)接上SPA3000的phone端口。
第四步:開啟電源
第五步:拿起話筒撥號 **** ,會聽到一個男性的語音,說@#%#的語音選單(幹嘛不用女聲,聽起來比較爽)
第六步:再撥110#,接著就會聽到很爛的英文語音撥報spa3k抓到的IP,記得要抄下來。
第七步:把電話線從spa3k卸下後接回牆上,或者是再“找”一條電話線,從牆上接到spa3k的line端口(如果要spa3k正式開始上線使用)。
第八步:開啟瀏覽器,在網址列輸入剛剛抄到的IP,就會看到spa3k的畫面囉!
原廠的圖文並貌說明 Set Up the SPA3000
※補充
有篇日本人貼的影片教學!
2011年2月7日 星期一
2011年2月6日 星期日
Linksys SPA3000初體驗
聽說校內在寒假期間要換一台支援FXO及FXS的那個語音匣道器,因為似乎是要提供部分網路電話可以撥打市話或手機,所以必須更換目前只支援FXS的匣道器(福億SP4220)。不過~那台兼負全校通訊的重責大任,恐怕禁不起沒事被催殘吧!而且,要等學校依程序採購一台新的來測試,恐怕是囉哩巴索、拖拖拉拉吧(純臆測,說不定正相反)!。加上目前手邊有的參考書藉,多有提到Cisco的Linksys SPA3000這款語音匣道器,所以,年前終於決定下單買台語音匣道器來玩玩。在露x買的,一台不到1500台幣,當做玩具來說,還可以接受。只是開箱之後,竟然連本操作說明書都沒有,只有一張超簡要的快速使用說明。上網找了半天,只有Sipura SPA-3000 Simplified Users Guide Version 1.1e這本比較詳細一點。只是,它還是用Sipura SPA-3000這個設備名稱,這個名稱是Sipura被Cisco併購之前的名稱,現在已經改名為Linksys SPS-3000。不過就前面手冊所說,新、舊二款設備,其實是一模一樣的,就連韌體也是一樣的。原文是這麼寫的:
*** There is no difference between the Old Sipura SPA-3000 and the new Linksys SPA-3000 apart from the case. All firmware and internals are the same.
機器內的韌體版本是3.0.10(GWd),最新的韌體檔為spa3000-3.1.20Gw.zip,雖然很想給它更新一下,不過還是怕怕的,因為還沒找到清空重設管理帳密的方法,所以還是先暫時等等吧!
dtmfmode設定
在設定Asterisk的時候有個參數叫dtmfmode,可以設定的值有 inband|info|rfc2833|auto。
到底如何設才正常呢?因為最近在試用由pbxes.org所提供的免費版的Asterisk服務時,新增Extension時,如果不設為auto時,3cx或x-lite 4透過市網的sip撥回校內的Asterisk時,進入ivr後撥號,它完全不理我,似乎因為是dtmfmode設定的問題。為了徹底了解它的影響,google了一下,這些文章應該可以解惑。
原來,Asterisk在2005年9月之後如果設定dtmfmode為auto的話,它為先用使用rfc2833,但是如果遠端沒回應是否在SDP支援rfc2833的話,它會轉變成為inband(帶內)。但codec如果不是ulaw或alaw的話,inband的DTMF撥號音會被語音壓縮扭曲而無法辦別,所以inband方式不可靠的話,可考慮用G.711(無壓縮)的codec。而使用rfc2833的話,會指定一個不同的RTP封包格式做為DTMF撥號音,可以減少傳送的資料量。info是使用SIP協定的元素以out-of-band的事件方式來傳送DTMF撥號音,有二種方式:
方法一:
…略…
Content-Type: application/dtmf-relay
Signal=5
Duration=160
這樣是指送出數字5,持續160毫秒。
方法二:
…略…
Content-Length: 1
Content-Type: application/dtmf
5
附註:dtmf-relay或dtmf都還未向IANA正式註冊的mime類型的應用。
另外,有個outband(帶外)這個詞,在Asterisk裏(pbxes.org)應該是沒這個選項,它泛指將按鍵音從語音資料中獨立出來,另外使用一個頻道傳送訊息。
那底到要設定那一個呢?如果單位內所有的call都是撥給PSTN的號碼的話,那就找出VOIP服務供應商所使用的語音匣道器設備所使用的DTMF模式,然後將單位內所有的VOIP設備使用相同的設定值。不過…很不幸的,有些不同的系統使用不同的DTMF模式,例如語音郵件可能需要使用SIP的INFO,但是使用者可能需要透過inband的方式使用電話銀行(telebanking。或稱為電子銀行)。
2011年1月27日 星期四
2011年1月25日 星期二
php.ini設定short_open_tag
剛使用xampp時,php檔可正常執行
<?php
...程式...
?>
可是,在中間插入html標籤後變成直接顯示程式碼
<?
?>
印象中在php.ini檔裏有個設定可以決定是否可使用短標籤。
short_open_tag = on | off
原來xampp預設值是off,和Appserv的預設值是不同的。
也有熱心人士將php.ini的各項設定詳細說明哦!
簡體原文:适用于 php-5.2 的 php.ini 中文版
正體中文(翻譯)
<?php
...程式...
?>
可是,在中間插入html標籤後變成直接顯示程式碼
<?
?>
印象中在php.ini檔裏有個設定可以決定是否可使用短標籤。
short_open_tag = on | off
原來xampp預設值是off,和Appserv的預設值是不同的。
也有熱心人士將php.ini的各項設定詳細說明哦!
簡體原文:适用于 php-5.2 的 php.ini 中文版
正體中文(翻譯)
php 5.3以後才支援sqlite3
原來在Windows環境下是使用 Appserv 2.5.10當做開發平台,結果開啟sqlite3的檔案一直失敗,查了半天才發現原來是Appserv 2.5.10用的是php 5.2.6,難怪試了半天,只好改用xampp 1.7.3的版本。另外,php也要5.2以後的版本才支援sqlite3,而且…php文件中還說,目前建議使用在“實驗”階段。不過在Windows平台,似乎還是不能開啟sqlite3的檔案,持續找資料驗證中…
2011年1月24日 星期一
echo <<< EOF的用法
偶然在程式碼裏看到這樣的用法,就上網查了一下,就某種程度上來說還算是方便。不過因為用Smarty慣了,所以比較少這樣用了!
echo <<< EOF
..
....html內容.......
..
EOF;
PHP的資料庫函式庫
ADOdb資料庫抽象層→這個函式庫好久以前就接觸,也用來寫過幾個程式,不過好久沒用它了。但是只要想到要連結多樣的資料庫,第一個還是想到它。因為專案打算用SQLite資料庫,雖然可以直接用PHP SQLite 函式庫進行操作,但考慮到轉移到其它的資料庫,所以還是決定用ADOdb來進行資料庫的操作。
超棒的Javascript程式庫
2011年1月23日 星期日
AES和SHA-256加密
由於Auto provision的資安需要,相關的設定會用到AES+SHA256方式加密。
查了一下相關的程式碼參考資料
Javascript SHA-256 Encryption
http://www.webtoolkit.info/javascript-sha256.html
PHP SHA-256 Encryption
http://us.php.net/manual/en/function.hash.php
PHP Classes AES 128
http://sgboards.mirrors.phpclasses.org/package/3650-PHP-A-pure-PHP-AES-128-encryption-implementation.html
根據原廠的說法,MAC檔和PUBLIC檔都需要加密,至於PUBLIC檔在那兒?還沒找到,哈哈!
查了一下相關的程式碼參考資料
Javascript SHA-256 Encryption
http://www.webtoolkit.info/javascript-sha256.html
PHP SHA-256 Encryption
http://us.php.net/manual/en/function.hash.php
PHP Classes AES 128
http://sgboards.mirrors.phpclasses.org/package/3650-PHP-A-pure-PHP-AES-128-encryption-implementation.html
根據原廠的說法,MAC檔和PUBLIC檔都需要加密,至於PUBLIC檔在那兒?還沒找到,哈哈!
好用的Chrome extensions - Easy Youtube Video Downloader
之前想把韓國女子天團少女時代在youtube上的影片下載,所以用Google Chrome瀏覽器再加上擴充功能,但是後來那個(忘了名字,版本1.5.8)擴充功能怪怪的,後來找到的是Easy Youtube Video Downloader這個,它更好用了,因為還可以將影片下載成mp3,這樣就省了轉檔案時間囉!哈哈哈~真是太棒了!
簡單易用的Asterisk安裝光碟
幾套基於Asterisk所建立的安裝光碟…
現在正在學校裏用的的是AsteriskNow(外校)、Elastix(校內),目前用起來都還不錯。
Askozia是這幾天看到的,它的大小只有不到46MB左右(Ver 2.0.3),試玩了一下,目前最大的問題就是WebGUI介面沒有提供一次大量建立分機的功能,不過真是夠精簡的了…
訂閱:
意見 (Atom)











