分类: 系统运维
2005-03-15 10:11:03
安裝 MRTG
MRTG 的咦鬟^程:
要瞭解 MRTG 的咦鳎?捅仨毑t解一下 SNMP (Simple Network Management Protocol) 這個協定,因為 MRTG 是透過 SNMP 協定來監控流量的。所以,所有的 MRTG 所偵測的裝置都必須符合 SNMP 的協定。那什麼是 SNMP 呢?簡單的說,就是一種可以提供裝置(主機設備)的各類資訊的一種協定,諸如:網路流量、主機名稱、CPU用量等等的資訊都可以藉由此一協定來提供。不過,由於不同廠牌的裝置可能會有無法相容的情況,因而後來又有所謂 MIB (Management Information Base) 的協定產生。不論如何, MRTG 就是藉由 SNMP 這個協定來監測與取得相關的資訊以製作圖表的!詳細的 SNMP 你可以在 查得。
所以我們可以知道,MRTG 基本上是透過以 SNMP 的協定,向主機詢問相關的資料後,主機傳遞數值給 MRTG 程式,然後 MRTG 再繪製成網頁上的圖表。由於 MRTG 是以 SNMP 協定來向主機要求資料,因此,您要使用 MRTG 來製作圖表時,必須先確定您的機器(或者說是設備)必須支援 SNMP 協定。好在 Linux 上面的網路卡,通常已經支援了 SNMP 協定了!當然, Windows 2000 也可以被偵測的到喔!
另外,有一點是特別需要注意的,在 mrtg 這個程式中,其實他總共需要要求四個數據(前兩個用來作圖,後兩個提供相關資訊,基本上,繪圖只會用到前兩個數據),因此,你可以隨時製作 MRTG 的圖表,只要你能提供兩個數字(當然要是數字了,不然如何作圖!)給 mrtg 即可製圖!這個在後面的偵測 CPU 或者是 RAM 的地方,加掛自己寫的程式後,就可以得到啦!
--------------------------------------------------------------------------------
安裝前的準備工作:
MRTG 為使用 Perl 程式寫成的,並且使用到 zlib 、 gd 及 png 的函式庫(zlib 用來壓縮圖表、gd 用來繪製圖表),且由於 MRTG 乃使用 SNMP 協定,並且最後是以 HTTP 的網頁型態輸出成圖表,因此,你需要確定 Linux 主機中已經含有下列的套件:
perl (perl-5.0xx 以上)
zlib (zlib-1.1.3-xx 以上)
gd (gd-1.3.xx 以上)
libpng
apache
確定的方法就以 RPM 來確認吧:
rpm -qa | grep perl
rpm -qa | grep zlib
rpm -qa | grep gd
rpm -qa | grep libpng
另外的另外,由於 MRTG 的圖表顯示是以 HTTP 的型態(Web 的型態)來顯示的,因此,你也必須安裝好了 Apache 這個套件,如果沒有安裝好的話,請到這個網頁的 Linux 架站文件去看看吧!以下,我們使用了預設的 Apache 路徑,為 /usr/local/apache/htdocs 這個路徑來安裝 mrtg 輸出的圖表,要注意,如果沒有 apache 的話,那就沒有辦法顯示圖表了(雖然可以執行 MRTG !!)
其實在 Linux 安裝完畢之後,上面的幾個(除了 apache 可能會更新之外)套件都已經安裝好了!所以你可以直接來安裝 MRTG 囉!(基本上,我們這個網頁的 RedHat 6.1 已經包含了這些套件了,所以如果你在安裝的時候是選擇 All 的話,那就直接安裝下列的套件吧)
--------------------------------------------------------------------------------
開始安裝 MRTG
由於 MRTG 是透過 SNMP 通訊協定來要求資料,因此你的 Linux 上面需要先安裝相關的軟體,通常我們都是安裝 ucd-snmp 這套軟體的,那就來安裝吧!
下載 ucd-snmp-4.2.1.tar.gz, mrtg-2.9.17.tar.gz ;
安裝 ucd-snmp-4.2.1.tar.gz: [root @tsai /root]# cd /usr/local/src
[root @tsai src]# cp /root/ucd-snmp-4.2.1.tar.gz .
[root @tsai src]# tar -zxvf ucd-snmp-4.2.1.tar.gz
[root @tsai src]# cd ucd-snmp-4.2.1
[root @tsai ucd-snmp-4.2.1]# ./configure --prefix=/usr/local/snmp
.......(過程我就省略了)
************** Configuration Section **************
You are about to be prompted by a series of questions. Answer
them carefully, as they determine how the snmp agent and related
applications are to function.
After the configure script finishes, you can browse the newly
created config.h file for further - less important - parameters to
modify. Be careful if you re-run configure though since config.h will
be over written.
-Press return to continue- (這裡按 enter 吧)
disabling above prompt for future runs... yes
checking System Contact Information...
*** System Contact Information:
Describes who should be contacted about the host the agent is
running on. This information is available in the MIB-II tree. This
Can Also Be Over-Ridden Using The "syscontact" Syntax In The Agent'S
Configuration Files.
System Contact Information (root@):root@tsai.adsldns.org (這裡輸入你的 e-mail)
setting System Contact Information to... root@tsai.adsldns.org
checking System Location...
*** System Location:
Describes the location of the system. This information is
available in the MIB-II tree. This Can also be over-ridden using the
"syslocation" syntax in the agent's configuration files.
System Location (Unknown):RedHat 6.1 (這裡可以隨便輸入,不正確也沒關係)
setting System Location to... RedHat 6.1
checking Location to write logfile...
*** Logfile location:
Enter the default location for the snmpd agent to dump
information & errors to. If not defined (enter the keyword "none"
at the prompt below) the agent will use stdout and stderr instead.
(Note: This value can be over-ridden using command line options.)
Location to write logfile (/var/log/snmpd.log):(按 enter 即可)
setting Location to write logfile to... /var/log/snmpd.log
checking Location to write persistent information...
*** snmpd persistent storage location:
Enter a directory for the snmp library to store persistent
data in the form of a configuration file.
Location to write persistent information (/var/ucd-snmp):(按 enter 即可)
[root @tsai ucd-snmp-4.2.1]# make
[root @tsai ucd-snmp-4.2.1]# make install
上面輸入的資訊,在進行 MRTG 的製圖時,會顯示在圖表上面,不過,這也是可以改的資訊,所以,如果不小心輸入錯誤也沒關係的。這樣就將 ucd-snmp 安裝妥當了!
啟動 ucd-snmp :
直接在 shell 下面打上 /usr/local/snmp/sbin/snmpd 即可!或者直接加在 /etc/rc.d/rc.local 當中,就可以自動開機時啟動了!
安裝 MRTG : [root @tsai /root]# cd /usr/local/src
[root @tsai src]# cp /root/mrtg-2.9.17.tar.gz .
[root @tsai src]# tar -zxvf mrtg-2.9.17.tar.gz
[root @tsai src]# cd mrtg-2.9.17
[root @tsai mrtg-2.9.17]# ./configure --prefix=/usr/local/mrtg-2
> --with-gd=/usr/include
> --with-gd-lib=/usr/lib
> --with-gd-inc=/usr/include
> --with-png=/usr/include
> --with-zlib=/usr/include
[root @tsai mrtg-2.9.17]# make; make install
[root @tsai mrtg-2.9.17]# mkdir /usr/local/apache/htdocs/mrtg (請注意,這裡與你的 WWW 主頁的放置地點有關,請依你的系統來設定,另外,由於我們需要設定 網路流量、CPU與RAM使用率,因此在 mrtg 中,可以再建立三個子目錄,比較容易管理啦!)
[root @tsai mrtg-2.9.17]# mkdir /usr/local/apache/htdocs/mrtg/net
[root @tsai mrtg-2.9.17]# cp images/* /usr/local/apache/htdocs/mrtg/net (將一些影像檔拷貝到即將使用的目錄中去備用)
就樣就安裝妥當了!再來就是開始要設定 MRTG 的組態囉!
偵測網路卡流量
要使用 mrtg 來作圖真的是太簡單了,只要幾個小步驟就可以自動的監測流量喔!首先以 mrtg 附的程式來製作一個參數檔 (預設檔名是 mrtg.cfg),然後修改一下 mrtg.cfg 這個參數檔之後,在直接執行三次參數檔,之後以 mrtg 程式附的小軟體,直接製作成首頁,就可以察看圖表囉!看下去吧!
設定 MRTG: [root @tsai mrtg-2.9.17]# cd /usr/local/mrtg-2/bin
[root @tsai bin]# ./cfgmaker --output=/usr/local/apache/htdocs/mrtg/net/mrtg.cfg
> public@vbird.adsldns.org
上面這個步驟會在你的主機上面製造一個參數檔,
而你未來的設定都會自動的在這個參數檔中設定完成了!
[root @tsai bin]# vi /usr/local/apache/htdocs/mrtg/net/mrtg.cfg
不過由於程式自動設定的 mrtg.cfg 有些地方會有瑕疵,
因此,請將底下這三行修改成你的樣式喔!
WorkDir: /usr/local/apache/htdocs/mrtg/net/
Options[_]: growright, bits
Language: big5
[root @tsai bin]# ./mrtg /usr/local/apache/htdocs/mrtg/net/mrtg.cfg
開始測試你的參數檔,正常的話,進行
這個動作要執行三次,就可以正常工作了,
不過,若是有問題的話,就需要改 mrtg.cfg ,再執行直到沒有錯誤發生為止!
[root @tsai bin]# ./indexmaker
> --output=/usr/local/apache/htdocs/mrtg/net/index.html
> --title=VBird主機流量統計表
> /usr/local/apache/htdocs/mrtg/net/mrtg.cfg
上面這個程式 indexmaker 是在製作首頁!當然,你也可以自訂首頁!
上面是說,會自動的輸出一個 index.html 的檔案到
/usr/local/apache/htdocs/mrtg/net 中,就是主網頁啦!
上面請特別注意:在 public@vbird.adsldns.org 這一行呢,public 是有其意義的(在 snmp 這個通訊服務裡面的預設搜尋的一個代碼),所以,如果你的主機的動態 DNS 名稱為 your.domain.name 則你就『一定』要寫成 public@your.domain.name 才行!千萬不要弄錯了!已經有很多網友遇到這個問題!
設定五分鐘偵測一次:
好了,開始偵測吧,就修改 /etc/crontab 吧! [root @tsai bin]# vi /etc/crontab
#1. Runing The MRTG Net Flow Control
*/5 * * * * root /usr/local/mrtg-2/bin/mrtg /usr/local/apache/htdocs/mrtg/net/mrtg.cfg > /dev/null 2>&1
這樣就每五分鐘可以自動偵測一次網路卡的流量囉!
設定 Web site:
以上面的例子為例,則你的 mrtg 圖表在:
就可以看到你的主機上網路卡的流量囉!
好了,重點說完了,再來說說在 mrtg.cfg 這個參數檔當中你看到的幾個參數的意義吧!
Target[裝置名稱]:
Target[vbird.adsldns.org_2]: 2: public@192.168.1.2
上面是一般的用法,其中半括號內的是裝置的名稱,同一個裝置的各參數中,這個名稱要一致!
Target[vbird.adsldns.org_3]:`/usr/local/apache/htdocs/mrtg/cpu/mrtg.cpu`
後面接的是一個自訂的加掛的可執行檔案,這個檔案執行之後,會顯示四個數據,這樣就可以繪圖了!在繪製非 MRTG 程式的預設咚咚中,這個是最常使用的方法了!
MaxBytes[裝置名稱]:
MaxBytes[vbird.adsldns.org_2]: 1250000
後面的數字代表資料監測時,最大的傳送速率,使用 bytes,所以 10Mbps 則為 1.25MBytes,大約是 1250000 Bytes。這個數值程式會自動判斷啦!不過你也可以自己修改,用到這個數字的時候是在你的圖表下方,每一個說明後面的(xx%)時用到的。
MaxBytes[vbird.adsldns.org_3]: 100
如果你的資料並不是 Bytes 時,例如監測 CPU 負載率時,那這個數值就需要改變啦!
Options[裝置名稱]:
Options[vbird.adsldns.org_2]: growright, bits (用在網路流量中)
Options[vbird.adsldns.org_3]: growright, nopercent, gauge (用在 CPU 負載中)
growright:將資料隨時間變化的順序以右而左繪圖;
bits:資料單位為 bits;
nopercent:在圖下方的說明文字中,不顯示百分比;
gauge:圖表的上限固定!
--------------------------------------------------------------------------------
偵測 CPU 負載量:
偵測 CPU 負載量時,需要使用到額外的外掛程式,就是 sysstat 這個程式,我只使用在 RedHat 6.1 上面過,是可以使用的!
下載並安裝 sysstat-4.0.2-1.i386.rpm:
不要說還不會使用 rpm 安裝套件喔!打屁屁!
rpm -ivh sysstat-4.0.2-1.i386.rpm
編寫外掛程式:
以安裝完 sysstat 套件後,產生的 /usr/bin/sar 程式進行外掛程式的編寫,我寫了一個監測 CPU 的小程式,使用 bash 寫的,可以參考看看: [root @tsai cpu]# vi mrtg.cpu
---- 檔案開始 ----
#!/bin/bash
# 這個程式是用來偵測 CPU 的小外掛程式!
# 1. 開始使用 sar 來監測 CPU 的 user 及 System 負載率
cpuusr=`/usr/bin/sar -u 1 3 | grep Average | awk '{print }'`
cpusys=`/usr/bin/sar -u 1 3 | grep Average | awk '{print }'`
UPtime=`/usr/bin/uptime | awk '{print " " " " }'`
# 2. 列出四個數據(前兩個為數字)
echo $cpuusr
echo $cpusys
echo $UPtime
echo vbird.adsldns.org (這裡寫你的主機名稱)
---- 檔案結束 ----
[root @tsai cpu]# chmod 755 mrtg.cpu (設定成可執行)
[root @tsai cpu]# ./mrtg.cpu (測試看可執行否)
2.0
5.4
1 day, 22:30,
vbird.adsldns.org
開始設定 mrtg 參數檔:
我的參數檔有點像這樣: [root @tsai cpu]# vi mrtg.cfg.cpu
---- 檔案開始 ----
### Global Config Options
### To get bits instead of bytes and graphs growing to the right
WorkDir: /usr/local/apache/htdocs/mrtg/cpu/
Language: big5
Target[localhost]: `/usr/local/apache/htdocs/mrtg/cpu/mrtg.cpu`
MaxBytes[localhost]: 100
Options[localhost]: gauge, nopercent, growright
YLegend[localhost]: CPU loading (%)
ShortLegend[localhost]: %
LegendO[localhost]: CPU 使用者負載;
LegendI[localhost]: CPU 純系統負載;
Title[localhost]: CPU ?t???v
PageTop[localhost]: VBird 主機 CPU 負載率
System: RedHat 6.1 in Linux Kernel 2.2.19
---- 檔案結束 ----
開始執行參數檔:(一樣,要執行三次以上)
/usr/local/mrtg-2/bin/mrtg /usr/local/apache/htdocs/mrtg/cpu/mrtg.cfg.cpu
寫入 /etc/crontab 當中:
*/2 * * * * root /usr/local/mrtg-2/bin/mrtg /usr/local/apache/htdocs/mrtg/cpu/mrtg.cfg.cpu > /dev/null 2>&1
這樣就OK了,直接將 Web 指向
重點說完了!再來說說 sar 吧!基本上, sar 可以用來偵測很多的咚咚,例如:
sar -u 1 5 :每一秒鐘測一次 cpu ,共計五次後算平均;
sar -r 3 3:每三秒看一次實體與虛擬記憶體用量,三次後算平均!
其他的功能有待你的發掘囉!
--------------------------------------------------------------------------------
即時偵測線上人數
如果您曾經上過中山大學的 FTP 網站的話,您會發現『咦!他們有偵測即時的上線人數(online users)呢!』同樣的,她們也是使用 MRTG 這一套相當漂亮的軟體來達成這個目標!那,要如何達到這個目標呢?其實也是很簡單,我們剛剛不是已經介紹了, mrtg 其實只要接受到 2 個數字就可以繪圖了嗎?那這裡就給他兩個數字就可以啦!兩個數字從何而來?如果您知道 netstat 這個指令的話,就會發現,當您下達 netstat -a 的時候,會有這個咚咚會出現:
[root @tsai root]# netstat -a | more
Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:ftp *:* LISTEN
tcp 0 0 *:telnet *:* LISTEN
tcp 0 0 *:pop-2 *:* LISTEN
tcp 0 0 *:pop-3 *:* LISTEN
tcp 0 0 *:imap2 *:* LISTEN
tcp 0 0 *:smtp *:* LISTEN
tcp 0 0 *:www *:* LISTEN
tcp 0 0 tsai.adsldns.org:www 211.72.119.19:58298 SYN_RECV
tcp 0 0 *:mysql *:* LISTEN
tcp 0 0 *:netbios-ssn *:* LISTEN
tcp 0 57920 tsai.adsldns.org:www 211.75.193.100:2965 ESTABLISHED
tcp 0 57920 tsai.adsldns.org:www 211.75.193.100:2966 ESTABLISHED
tcp 0 57920 tsai.adsldns.org:www 211.75.193.100:2967 ESTABLISHED
tcp 0 57920 tsai.adsldns.org:www 211.75.193.100:2968 ESTABLISHED
tcp 0 57920 tsai.adsldns.org:www 211.75.193.100:2969 ESTABLISHED
tcp 0 1 tsai.adsldns.org:www 202.98.131.11:4374 FIN_WAIT1
tcp 0 1 tsai.adsldns.org:www 202.98.131.11:4404 FIN_WAIT1
tcp 0 1 tsai.adsldns.org:www 202.98.131.11:4413 FIN_WAIT1
tcp 0 1 tsai.adsldns.org:www 202.98.131.11:4453 FIN_WAIT1
以下省略!
我們可以很清楚的發現:使用 netstat 可以查到 WWW 的連線數目,那只要將這些數目作一些重複性分析,以去除重複的 IP 網址後,不就可以知道以 WWW 方法上網連線的即時人數了嘛!這就是我們偵測的主要原理了!
那要如何寫這個偵測的批次檔呢?以下就是鳥哥嘗試寫的一個批次檔!你可以將一些註解符號取消,就可以知道為何這麼寫了:
[root @tsai root]# vi mrtg.person.sh
檔案開始:
#!/bin/bash
# 這個程式主要在計算有多少人以 WWW 的方式連線進我們的主機!
# 1. 計算連線的數目
echo `netstat -a | grep www|awk '{print }'|sort | wc -l|awk '{print - 1}'`
# 底下在說明整個咚咚的列出(檢查用)
# netstat -a | grep www|awk '{print }'|sort| uniq
# 2. 計算連線人數:
echo `netstat -a | grep www|awk '{print }'|cut -d":" -f1|sort| uniq |wc -l | awk '{print - 1}'`
# netstat -a | grep www|awk '{print }'|cut -d":" -f1|sort| uniq
# 3. 輸出時間咚咚
UPtime=`/usr/bin/uptime | awk '{print " " " " }'`
echo $UPtime
echo your.host.name
檔案結束!
在上面的式子中,你可以執行出你所需要的咚咚囉!你也可以將 mrtg.person.sh 這個檔案捉下去直接修改!所需要變更的就只有 最後一行的 your.host.name 要改囉!改成您的主機名稱吧!並且將這個檔案改成可以執行的狀態:
chmod 755 mrtg.person
即可!
接下來則是修改 mrtg 的參數檔啦!我們可以建立一個名稱為 mrtg.cfg.person 的參數檔,內容有點像這樣!
[root @tsai root]# vi mrtg.cfg.person
檔案開始:
# Created by
# VBird 2001/10/29
### Global Config Options
WorkDir: /usr/local/apache/htdocs/mrtg <==請改成您圖表放置的目錄
Language: big5
### CPU Loading detecting ...
Target[tsai.adsldns.org_person]: `/usr/local/mrtg-2/bin/mrtg.person.sh` <==檔案放置的路徑與檔名
MaxBytes[tsai.adsldns.org_person]: 500
Options[tsai.adsldns.org_person]: gauge, nopercent, growright
YLegend[tsai.adsldns.org_person]: Online Users
ShortLegend[tsai.adsldns.org_person]: %
LegendI[tsai.adsldns.org_person]: 連線數目 :
LegendO[tsai.adsldns.org_person]: 上線人數 :
Title[tsai.adsldns.org_person]: WWW 上線人數統計表
PageTop[tsai.adsldns.org_person]: WWW 主機上線人數
System: Aerosol Lab. in Redhat 6.1 Kernel 2.2.18 Maintainer: VBird
檔案結束!
要注意的僅是 `/usr/local/mrtg-2/bin/mrtg.person.sh` 這一行字!這個就是我們剛剛才寫成的 scripts 啦!然後同樣的,執行
./mrtg mrtg.cfg.person
三次之後,就可以正常的產生圖表啦!
然後在將您的圖表加在 index.html 網頁中,如此則可以即時的偵測與記錄上線人數的統計囉!當然,如果您修改一下上面的 script (mrtg.person.sh),將 www 改成 ftp 的話,那就等於是偵測 ftp 的即時上線人數!如何!簡單吧!
祝大家架站愉快!
在 Linux 主機上偵測 windows 2000 的網路流量
好了!我們現在已經可以在 Linux 系統上面偵測任何咚咚啦!那如果要偵測 windows 2000 要如何作呢?其實也真是很簡單,(1) 你要先在 windows 2000 上面安裝 SNMP 通訊協定的套件;(2) 在 Linux 上面針對 windows 2000 進行參數檔的偵測; (3) 做成網頁輸出!簡單的很!
Windows 2000 下啟動 snmp 服務:
windows 2000 這個系統底下已經有預設的 snmp 通訊協定了,只要開放他即可!那要如何開放呢?你可以開啟『開始』>『設定』>『控制台』>『新增移除程式』>『新增/移除 Windows 元件』。然後就像下面兩張圖一樣,先勾選 Management and Monitoring Tools ,之後選擇 『詳細資料』之後,出現的圖示中,選擇勾選 Simple Network Management Protocol ,然後按下確定之後,就開始安裝啦!在安裝的過程中,安裝程式會要求你放入 windows 2000 的 CD 進入 CD-ROM ,安裝完畢之後就已經有 SNMP 的通訊協定啦!
在 Linux 上面針對 windows 2000 進行 MRTG 的參數偵測:
接下來的工作跟之前的工作就差不多啦!先來建立參數檔吧,如何建立呢?假設你的 Windows 2000 的 IP 是 192.168.1.11 ,那麼你就必須要這樣來偵測 Windows 2000 的參數:
[root@vbird mrtg]# /usr/local/mrtg-2/bin/cfgmaker public@192.168.1.11 > mrtg.cfg.vbird
注意囉! public 是預設的指令,後面接的是你的 IP (當然也可以是 domain 說)。這樣一來,就可以做出一個參數檔案,名稱為 mrtg.cfg.vbird,我們來看一看這個檔案的大概內容吧!
[root@vbird mrtg]# vi mrtg.cfg.vbird
# Created by
# /usr/local/mrtg-2/bin/cfgmaker public@192.168.1.11
### Global Config Options
WorkDir: /usr/local/apache/htdocs/mrtg/
Options[_]: growright, bits
Target[192.168.1.11_16777219]: 16777219:public@192.168.1.11:
SetEnv[192.168.1.11_16777219]: MRTG_INT_IP="192.168.1.11" MRTG_INT_DESCR="NDIS 5
.0 driver"
MaxBytes[192.168.1.11_16777219]: 1250000
Title[192.168.1.11_16777219]: Traffic Analysis for 16777219 -- VBLAB2
PageTop[192.168.1.11_16777219]: Traffic Analysis for 16777219 -- VBLAB2
System: VBLAB2 in Maintainer: Description: NDIS 5.0 driver ifType: ethernetCsmacd (6) ifName: Max Speed: 1250.0 kBytes/s Ip: 192.168.1.11 ()
其他的設定不太需要改變,但是上面黃色的那兩行字中,請注意,修改成你的『工作目錄』與一些設定吧!最好是將一些圖表資料都放一起就好了!這樣子大概就OK啦!
做成網頁輸出:
這一步跟前面就都一樣啦,先執行 mrtg mrtg.cfg.vbird(你的參數檔名)三次,然後在將輸出的圖表寫在你的 index.html 上面即可!這樣就已經可以偵測 windows 2000 的網路流量啦!而且還不需要在 windows 2000 上面有任何的咚咚發生喔!
--------------------------------------------------------------------------------
在 Linux 主機上偵測 windows 98 的網路流量
MRTG 流量偵測到此為止介紹的都是屬於 NT 或者是 Linux 上面的訊息,那要如何偵測 Windows 98 的系統呢?畢竟使用這個系統的用戶並不少呀!OK!偵測 Windows 系統,最主要的就是要有 snmp 啦!只要有 snmp 之後,往後的工作就都完全一模一樣了!哪我們就在 Windows98 上面安裝 snmp 的服務吧!其實, snmp 套件已經在 windows 98 的原版光碟中了,你可以到原版 98 光碟的 /tools/reskit/netadmin/snmp 這個路徑下找到以下僅提供 snmp 在 windows98 下的安裝方法,至於偵測的方法則與 Windows 2000 的情況一模一樣!目前我已經在 Linux 上以 MRTG 成功的將研究室所有的電腦之網路卡流量偵測了!往後將可便利於管理整個研究室的網路流量,並可以藉以分析是否有不明人士亂玩網路.....
你可以在 windows 98 下按下『開始』>『控制台』>『網路』,或者是在桌面的『網路上的芳鄰』按『右鍵』選『內容』,會出現如下方框:
請按下『新增』之後,出現:
選擇『服務』的項目後,並按下『新增』:
然後再選擇『從磁片安裝』這一項!並將你的 snmp 套件指向你的原版 windows 98 光碟!
按下確定之後,再按一次確定!即可安裝 snmp 套件囉!
就像這樣,出現了這個東西!按下確定吧!開始安裝囉!
有沒有看到如下圖所示! Microsoft SNMP agent 已經出現了!表示安裝完畢!
--------------------------------------------------------------------------------
一些問題彙整
在寫出這一篇文章之後,收到網友們的熱情支持!讓小弟不甚惶恐!不過,這裡面也出現了一些問題是當初所沒有發現的!以下就來說說問題的所在吧!
我的 Red Hat 本身就有 snmp 了,可不可以不要安裝 ucd-snmp 這個套件呢?
當然了,Red Hat 本身就有 snmp 這個通訊服務存在了,可能的話當然就不要去動他比較好囉!不過,要讓你的 Red Hat 預設的 snmp 能動,那就一定需要修改 /etc/snmp/snmpd.conf 這個檔案!不過,小弟對於 snmpd.conf 的設定還不是很瞭解!因此,就會直接建議您,乾脆移除預設的 ucd-snmp 之後,重新安裝新版的吧!設定上比較簡單啦!當然,如果您英文不錯的話, /etc/snmp/snmpd.conf 這個檔案可要多看一些喔!
為何作完了 ./cfgmaker 這個動作之後,再執行 ./mrtg 時,會出現:『ERROR: Line 9 』的問題?
這個是大家最容易犯的錯了,其實,就是在 public@your.hosts.name 這一個地方寫錯了!請千萬注意, public 是有意義的代碼,請不要將這一行寫成你的 e-mail 了!不然就會造成錯誤情況發生!
zt from: 鸟哥