蠻簡單實用的網路流量檢視的軟體。
bwm-ng (Bandwidth Monitor NG)
2011年2月19日 星期六
2010年11月21日 星期日
蒙提霍爾(Monty Hall Problem)
Monty Hall Problem
參賽者會看見三扇關閉了的門,其中一扇的後面有一輛汽車,選中後面有車的那扇門就可以贏得該汽車,而另外兩扇門後面則各藏有一隻山羊。當參賽者選定了一扇門,但未去開啟它的時候,節目主持人會開啟剩下兩扇門的其中一扇,露出其中一隻山羊。主持人其後會問參賽者要不要換另一扇仍然關上的門。問題是:換另一扇門會否增加參賽者贏得汽車的機率?
之前忘了在哪有聽到這個問題,不過都沒太仔細去思考這個問題,想說機率不都是三分之一嗎?沒想到換門的話,真的會提高機率。
參賽者會看見三扇關閉了的門,其中一扇的後面有一輛汽車,選中後面有車的那扇門就可以贏得該汽車,而另外兩扇門後面則各藏有一隻山羊。當參賽者選定了一扇門,但未去開啟它的時候,節目主持人會開啟剩下兩扇門的其中一扇,露出其中一隻山羊。主持人其後會問參賽者要不要換另一扇仍然關上的門。問題是:換另一扇門會否增加參賽者贏得汽車的機率?
之前忘了在哪有聽到這個問題,不過都沒太仔細去思考這個問題,想說機率不都是三分之一嗎?沒想到換門的話,真的會提高機率。
2010年8月14日 星期六
2010年7月14日 星期三
Server Load Balance
HAProxy可以讓我們簡單架設一個Load Balance的機器。Debian架設方法如下:
# apt-get install haproxy
若要啟用,記得修改/etc/default/haproxy的設定檔
# vim /etc/default/haproxy
Enabled=1
接著便是依據實際環境對Load Balance的設定檔(/etc/haproxy/haproxy.cfg)做修改,可參考此網站
最後,啟動Service
# /etc/init.d/haproxy start
# apt-get install haproxy
若要啟用,記得修改/etc/default/haproxy的設定檔
# vim /etc/default/haproxy
Enabled=1
接著便是依據實際環境對Load Balance的設定檔(/etc/haproxy/haproxy.cfg)做修改,可參考此網站
global
maxconn 10000
user haproxy
group haproxy
daemon
nbproc 8
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
option httpclose
maxconn 32768
contimeout 5000
clitimeout 30000
srvtimeout 30000
listen web-server
bind 0.0.0.0:80
balance roundrobin
server w1 192.168.1.1:80 weight 3 check
server w2 192.168.1.2:80 weight 3 check
option httpchk GET /index.html option redispatch option forwardfor 最後,啟動Service
# /etc/init.d/haproxy start
2010年7月5日 星期一
PostgreSQL安裝
Debian安裝PostgreSQL
# apt-get install postgresql
要登入PostgreSQL,必須以postgres的身份執行
# su postgres
# psql template1
接著便可新增使用者(可新增資料庫及使用者的權限)
create user 帳號 with password '密碼' createdb createuser;
修改密碼
alter user 帳號 with password '新密碼';
# apt-get install postgresql
要登入PostgreSQL,必須以postgres的身份執行
# su postgres
# psql template1
接著便可新增使用者(可新增資料庫及使用者的權限)
create user 帳號 with password '密碼' createdb createuser;
修改密碼
alter user 帳號 with password '新密碼';
2010年6月26日 星期六
update-rc.d
寫了一支Daemon程式,除了在/etc/init.d/rc.local上寫入欲執行的指令外,也可以利用[Debian]update-rc.d指令,更新各runlevel下要執行的script。
首先要產生一個init.d script來執行我們要執行的Daemon,我們可以利用/etc/init.d/skeleton來當做修改的範本。
接著便是修改myservice script,部份修改如下:
最後便是利用update-rc.d指令,更新各runlevel服務啟動設定
defaults參數設定服務在runlevel為2,3,4,5啟動,runlevel為0,1,6為停止。若要詳細的設定,請參考man update-rc.d
首先要產生一個init.d script來執行我們要執行的Daemon,我們可以利用/etc/init.d/skeleton來當做修改的範本。
# cp /etc/ init.d/skeleton /etc/init.d/myservice
# chmod a+x /etc/init.d/myservice
接著便是修改myservice script,部份修改如下:
# vim /etc/init.d/myservice
DESC="Daemon的描述"
NAME=Daemon的檔名
DAEMON=Daemon所在絕對路徑
PIDFILE=/var/run$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME最後便是利用update-rc.d指令,更新各runlevel服務啟動設定
# cd /etc/init.d
# update-rc.d myservice defaults
defaults參數設定服務在runlevel為2,3,4,5啟動,runlevel為0,1,6為停止。若要詳細的設定,請參考man update-rc.d
2010年6月20日 星期日
update-alternatives for gcc
update-alternatives提供了程式版本切換管道,以下將教學如何將gcc也加入到此管理系統。
假設系統已安裝gcc-4.1, g++-4.1, gcc-4.3, g++-4.3
顯示所有的版本
設定所要選擇的版本
# update-alternatives --config gcc
假設系統已安裝gcc-4.1, g++-4.1, gcc-4.3, g++-4.3
# update-alternatives --remove-all gcc
# update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.3 41 --slave /usr/bin/g++ g++ /usr/bin/g++-4.3 --slave /usr/bin/gcov gcov /usr/bin/g++-4.3
# update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.1 41 --slave /usr/bin/g++ g++ /usr/bin/g++-4.1 --slave /usr/bin/gcov gcov /usr/bin/g++-4.1
顯示所有的版本
# update-alternatives --display gcc
設定所要選擇的版本
# update-alternatives --config gcc
訂閱:
文章 (Atom)
