2009年萬歲

Posted by on | | 0 意見
好久沒來寫關於程式的東東囉,
嗯2009年有個目標,就是介紹一下Blog的外掛和應用目的,
加油!!!

SNMP相關術語

Posted by on | | 0 意見
術語定義
SNMP:
Simple Network Management Protocal


MIB:Management Information Base
一種 SNMP 與 RMON 使用的網路管理資訊資料庫 (DATABASE) 的設備定義格式,通常以檔案形式存在。

MIB 可分為標準(Standard) MIB 及 私人 (Private) MIB 兩大類,標準 MIB適用於所有網絡設備,而 Private MIB 則由廠家自行定義,以反映設備的獨特變量值,合法的Private MIB 需要向有關機構申請,務求令每一個Private MIB都是世上獨一無二的。

MIB 採用樹狀結構,為一種階層式分類,每個節點皆有它特定的類型,以易於人類辨識的單字標記,並附有物件身份編號 (OID)
iso(1).org(3).dod(6).internet(1).private(4).enterprise(1)
iso.org.dod.internet.private.enterprise=1.3.6.1.4.1

MIB Browser:
可以查看MIB資訊,順便根據MIB資料,和裝置取得結果的browser
免費的有:ireasoning,ks-soft二家公司提供

OID:Object Identifier, Object ID
物件身份編號,組織、設備、公司、設備上的任何一個資訊,都可以為一個物件。每個物件都會有其對應的ID。


Agent:
一個 SNMP 網管系統,由"代理器(AGENT)"及"網管系統(NMS)"組成。
AGENT是附在網絡設備內的程式模塊,它可取得所依附裝置的網絡資訊,並透過網絡將這些資訊採用 SNMP 協定提供予網管系統。

AGENT所依附裝置可以是任何形態的網絡設備,包括電腦主機、終端機、網絡印表機、路由器、 橋接器等等,這些裝置的規模有大有小,其計算能力、儲存空間等亦有限制,為令AGENT能普遍安裝於各種網絡裝置,在定義時即考慮各裝置在網管需求的交集,並令AGENT的存在不會對原裝置造成太大負擔。

NMS:
網管系統(NMS)通常是部專職的主機,它負責收集由各AGENT傳來的網絡資訊,並提供網絡整體的分析、統計等圖表及數據,由於各裝置上的AGENT被設計的很小巧,它們只負責回應裝置的資訊,所以主要的計算負擔即落在 NMS,故 NMS 通常是配備有高速的 CPU、大量記憶體、磁碟機空間的工作站級電腦,並且也配備良好的圖形操作介面以方便管理操作及圖表的輸出。

PDU:Protocol Data Unit
在SNMPv1中指定了五種PDU(Protocol Data Unit)型態:
Get Request(讀取請求):由 NMS 發送給代理器,用來讀取一個變量值。
GetNext Request(讀取下一個請求):由 NMS 發送給代理器,用來讀取一個變量值, 主要是用來讀取一個表中的項目值。
Get Response(讀取回應):由代理器發送給 NMS,以回應GetRequest 及GetNextRequest,包含NMS 所請求的變量值。
Set Request(設置請求):由NMS 發送給代理器,用來設置一個變量值。
Trap(異常情況):由代理器單向發送給 NMS,用來報告一個異常情況,例如設備重新啟動,NMS 不會對 Trap 作任何回應。

SNMPv2引入了GETBULK以替代GETNEXT:
GetBulk Request:更加快速的替代檢索管理信息序列,在單個請求中獲取大量的管理數據。
INFORM:一個被承認的TRAP

SNMP為代理者則使用UDP Ports 161,而管理者則使用UDP Ports 162
Mib broswer:
可以瀏覽機器的OID與觀察OID的值
有分公開的Mib(每家公司都會有的OID,如Interface)
與私有的Mib(如Cpu、Memory、Temperature)
私有的mib因為各家公司名稱不同 所以會有沒Node name出現只帶OID的情形
必須讀入特定的Mibs檔才能知道名稱
但是不知道名稱 mib broswer一樣能get到值 只是值所代表的名稱我們不清楚而已
例如
1.3.6.1.4.1.9.9.82.1.5.1.1.2.17
Mib broswer沒讀入OLD-CISCO-CPU-MIB.my時我們只知道值是30 但是不知道他的意義為何
讀入後Node name會出現avgBusy5 也會出現說明敘述
5minute exponentially-decayed moving average of the CPU busy percentage.
使我們知道這是Cpu每五分鐘的負荷 OID


Community:
社群名稱。在AGENT上設定,用來允許設定的Community可來要求SNMP結果。

http://www.microsoft.com/taiwan/technet/book/tcpip/default_part2.aspx

svn + apache 的安裝

Posted by on | | 0 意見
  1. 安裝svn server, apache server

  2. 建立repository
    svnadmin create D:\svn_server\my.repos.v1

  3. 建立密碼檔,給apache server用
    htpasswd -c D:\svn_server\my.repos.v1\.htpasswd.svn $username (-c:第一次建立密碼)

  4. 開啟apache server modul
    LoadModule dav_module modules/mod_dav.so
    LoadModule dav_fs_module modules/mod_dav_fs.so
    LoadModule dav_svn_module "C:\svn-win32-1.5.1\bin\mod_dav_svn.so"
    LoadModule authz_svn_module "C:\svn-win32-1.5.1\bin\mod_authz_svn.so"

  5. 建立apache server上的目錄
    <Location /svn>
    DAV svn
    SVNPath "D:\svn_server\my.repos.v1"
    AuthType Basic
    AuthName "Subversion repository"
    AuthUserFile "D:\svn_server\my.repos.v1\conf\.htpasswd.svn"
    Require valid-user
    </Location>

  6. 重新啟動 Apache Server

  7. 使用網頁瀏覽器測試
    在網址列輸入 httpd://mysvn.test.net/svn/

vs2005 - The project type is not supported by this installation

Posted by on | | 0 意見
vs2005 無法開啟某些web applications 的專案,

我的解決方法,請安裝:
  1. VS80-KB915364-X86-ENU.exe
  2. “Microsoft Visual Studio Web Application Projects” installer

下載處:
  • http://www.microsoft.com/downloads/details.aspx?FamilyId=8B05EE00-9554-4733-8725-3CA89DD9BFCA&displaylang=en
  • http://msdn.microsoft.com/en-us/asp.net/aa336618.aspx

iis http壓縮

Posted by on | | 0 意見
iis http壓縮的變更法!

觀念:
a.分靜態和動態頁面的壓縮設定
b.可以改變壓縮比例
c.記得觀察cpu要能撐的住
d.iis要設定
[iis管理員]->[網站]->[右鍵-內容]->[服務]->[HTTP壓縮]->[勾選"壓縮應用程式檔案"]->[勾選"壓縮靜態檔案"]

1.直接更動檔案
[我的電腦]->[右鍵-管理]->[iis管理員]->[右鍵-內容]->[啟用直接MetaBase編輯]
c:> cd c:\windows\system32\inetsrv
先備份c:\windows\system32\inetsrv\MetaBase.xml
編輯c:\windows\system32\inetsrv\MetaBase.xml

<IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/deflate"
HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"
HcCreateFlags="0"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcDynamicCompressionLevel="10"
HcFileExtensions="htm
html
xml
css
txt
rdf
js"
HcOnDemandCompLevel="10"
HcPriority="1"
HcScriptFileExtensions="asp
cgi
exe
dll
aspx
asmx"
>
</IIsCompressionScheme>
<IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/gzip"
HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"
HcCreateFlags="1"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcDynamicCompressionLevel="10"
HcFileExtensions="htm
html
xml
css
txt
rdf
js"
HcOnDemandCompLevel="10"
HcPriority="1"
HcScriptFileExtensions="asp
cgi
exe
dll
aspx
asmx"
>
</IIsCompressionScheme>
<IIsCompressionSchemes Location ="/LM/W3SVC/Filters/Compression/Parameters"
HcCacheControlHeader="max-age=86400"
HcCompressionBufferSize="8192"
HcCompressionDirectory="%windir%\IIS Temporary Compressed Files"
HcDoDiskSpaceLimiting="FALSE"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcExpiresHeader="Wed, 01 Jan 1997 12:00:00 GMT"
HcFilesDeletedPerDiskFree="256"
HcIoBufferSize="8192"
HcMaxDiskSpaceUsage="99614720"
HcMaxQueueLength="1000"
HcMinFileSizeForComp="1"
HcNoCompressionForHttp10="FALSE"
HcNoCompressionForProxies="FALSE"
HcNoCompressionForRange="FALSE"
HcSendCacheHeaders="FALSE"
>
</IIsCompressionSchemes>


2.用dos cmd的指令,可以改變iis http壓縮的參數
adsutil.vbs --> 檔案位在C:\Inetpub\AdminScripts

cscript adsutil.vbs Set W3SVC/Filters/Compression/Parameters/HcDoStaticCompression TRUE
cscript adsutil.vbs Set W3SVC/Filters/Compression/Parameters/HcDoOnDemandCompression TRUE
cscript adsutil.vbs Set W3SVC/Filters/Compression/Parameters/HcDoDynamicCompression TRUE

cscript adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcDoStaticCompression TRUE
cscript adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcDoOnDemandCompression TRUE
cscript adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcDoDynamicCompression TRUE
cscript adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcFileExtensions "asx" "css" "doc" "htm" "html" "js" "txt" "xml"
cscript adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcScriptFileExtensions "asp" "ashx" "asmx" "aspx" "axd" "dll" "exe" "svc"
cscript adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcOnDemandCompLevel 10
cscript adsutil.vbs Set W3SVC/Filters/Compression/deflate/HcDynamicCompressionLevel 9

cscript adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcDoStaticCompression TRUE
cscript adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcDoOnDemandCompression TRUE
cscript adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcDoDynamicCompression TRUE
cscript adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcFileExtensions "asx" "css" "doc" "htm" "html" "js" "txt" "xml"
cscript adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcScriptFileExtensions "asp" "ashx" "asmx" "aspx" "axd" "dll" "exe" "svc"
cscript adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcOnDemandCompLevel 10
cscript adsutil.vbs Set W3SVC/Filters/Compression/gzip/HcDynamicCompressionLevel 9


請參考:
http://www.codinghorror.com/blog/archives/000059.html
http://www.seoconsultants.com/tools/compression.asp
http://www.ripcordsoftware.com/IISxpress/IISxpress_for_IIS.aspx <-- 不知好不好用

XMail Server的安裝簡介

Posted by on | | 0 意見
xmail郵件服務器安裝

1.下載xmailserver
登入訪http://www.xmailserver.org/ (xmail的官方網站)下載xmail

主要有L/Unix和win的平台的各種版本

Linux/FreeBSD/OpenBSD/Solaris/OSX/NetBSD
Linux RPM
Linux SRPM
NT/2k/XP Sources
NT/2k/XP Binaries
選擇win下的Binaries的下載最新的軟件包。


2.將下載下來的安裝包解壓。
在解壓的目錄XMail-1.22下有個MailRoot的目錄,將其拷貝到c:\下
然後將xmail-1.22目錄下的所有的"檔案"包括[.exe,.dll],拷貝到c:\MailRoot\bin下

3.修改註冊表
在'HKEY_LOCAL_MACHINE\SOFTWARE\'下,建'GNU'項,
再在'HKEY_LOCAL_MACHINE\SOFTWARE\GNU'下,建' XMail'項。
在'HKEY_LOCAL_MACHINE\SOFTWARE\GNU\XMail\'下,建字串:'MAIL_ROOT' 值是:'C:\MailRoot'(就是剛才安裝的目錄)

4.打開dos窗口,進入C:\MailRoot\bin目錄之執行XMail --install-auto,安裝為系統服務,自動啟動。
進入service視窗,啟動xmail service。

5.測試郵件服務器有沒有配置好。
telnet localhost 25
telnet localhost 110

6.添加一個管理用戶,現用xmcrypt生成一個密碼(加密的)
c:\> xmcrypt password

修改c:\MailRoot\ctrlaccounts.tab增加用戶
"admin" [tab鍵] "0401080c0b"
就可以用該用戶名和密碼來管理了

7.修改:SERVER.TAB
SERVER.TAB 是服務器的全局配置選項。用我的域名green.org來作一個例子,修改以下內容:

RootDomain to "green.org"
SmtpServerDomain to "mail.green.org"
POP3Domain to "mail.green.org"
HeloDomain to "mail.green.org"
PostMaster to "postmaster@green.org"
ErrorsAdmin to "postmaster@green.org"

7.執行管理:
指令範例:
ctrlclnt -s server_ip -u control_user_name -p control_user_password control_cmd

執行-列出已經添加的域名。
ctrlclnt -s localhost -u admin -p admin domainlist

執行-刪除該域名
ctrlclnt -s localhost -u admin -p admin domaindel "xmailserver.test"

執行-列出已經存在的用戶。
ctrlclnt -s localhost -u catfish -p testpassword userlist

執行-列出用戶別名
ctrlclnt -s localhost -u catfish -p testpassword aliaslist

執行-就添加了一個green.org的域名
ctrlclnt -s localhost -u admin -p admin domainadd green.org

執行-添加一個username用戶,密碼是password到該green.org域名
ctrlclnt -s localhost -u admin -p admin useradd green.org username password U

8.測試
加好後就可以在outlook,或其它郵件client端軟體測試了。

clientHeight, offsetHeight, scrollHeight

Posted by on | | 0 意見
轉自:http://bluecat.csie.net/2006/12/25/322/
====================================================================================
四種瀏覽器:IE(Internet Explorer)、NS(Netscape)、Opera、FF(FireFox)。

clientHeight:
四種瀏覽器對 clientHeight 都沒有什麼異議,都認為是內容可視區域的高度,
一般是瀏覽器最後一個工具條以下到狀態欄以上的這個區域,與頁面內容無關。

offsetHeight:
IE、Opera 認為 offsetHeight = clientHeight + 滾動條 + 邊框。
NS、FF 認為 offsetHeight 是網頁內容實際高度,可以小於 clientHeight。

scrollHeight:
IE、Opera 認為 scrollHeight 是網頁內容實際高度,可以小於 clientHeight。
NS、FF 認為 scrollHeight 是網頁內容高度,不過最小值是 clientHeight。

簡單地說:
clientHeight 就是透過瀏覽器看內容的這個區域高度。
NS、FF 認為 offsetHeight 和 scrollHeight 都是網頁內容高度,只不過當網頁內容高度小於等於 clientHeight 時,scrollHeight 的值是 clientHeight,而 offsetHeight 可以小於 clientHeight。
IE、Opera 認為 offsetHeight 是可視區域 clientHeight 滾動條加邊框。scrollHeight 則是網頁內容實際高度。

同理:
clientWidth、offsetWidth 和 scrollWidth 的解釋與上面相同,只是把高度換成寬度即可。

但是:
FF 在不同的 DOCTYPE 中對 clientHeight 的解釋不同, xhtml 1 trasitional 中則不是如上解釋的。其它瀏覽器則不存在此問題。
In old day...