Synology NAS 改機教學 Part 2:MRTG之卷

有了上一篇初學者入門之卷的基礎之後
現在讓我們深入一點再進一步:幫Synology NAS裝上MRTG

先解釋一下什麼是MRTG?(圖片借自官網)

MRTG = Multi Router Traffic Grapher
照字上面的意思來看就是多重路由流量統計圖
想要進一步了解可見wiki官網

接下來說明一下在安裝MRTG要做哪些準備工作…
由wiki可知MRTG必須使用SNMP(Simple Network Management Protocol)協定
而且是用Perl寫成的,同時還會使用到zlib、gd、png、jpeg等函式庫
因為MRTG是透過SNMP協定來監控流量的
但是Synology NAS本身並沒有內建SNMP和其它函式庫的功能
所以我們要自己幫它裝上去

1.安裝SNMP
ipkg install net-snmp
(不知道這行是做啥的請先回去看初學者入門之卷)
同時會一起安裝openssl
目前只要你的Synology NAS使用的CPU是Marvell mv5281 ARM
DS107+、DS207+、CS407、RS407
這四台裝了SNMP之後就會導致當機

很遺憾這四台Synology NAS目前無法改MRTG

2.正式開始安裝MRTG
ipkg install mrtg
這個步驟要多花點時間,因為除了MRTG本身之外還會跟著一起安裝下面這堆必要的函式庫
expat
fontconfig
freetype
gconv-modules
gdbm
libdb
libgd
libjpeg
libpng
mrtg
perl
zlib
安裝完成後會出現下面這段訊息:
MRTG is now installed, you now need to make a config file
for it and set up a cron job to run it.

意思是說MRTG已經安裝完成了,只是你還須要設定cron job
Linux的cron job差不多相當於windows系統的"啟動"(一開機就會跟隨系統啟動的服務)

3.決定MRTG所產生的網頁和mrtg.cfg要放在哪…
這一步的做法基本上可以分為兩種:

第一種比較簡單,開啟Synology NAS本身所提供的Web Station
把MRTG產生的網頁放在web這個共用資料夾底下,或是在web底下再建個MRTG目錄也行
缺點是任何人只要知道你的外部網址通通都會看光光
例如:http://yourdomain.dyndns.org/mrtg/←隨便一個人只要打上這串都看的到你的MRTG流量統計
還有要記得設定web的權限,以免其它的user把你的MRTG給刪了
另外若是要和DSM管理介面整合會發生網頁開不起來的問題?!(個人猜測)
這種裝法網路上很多了,我再寫一遍好像沒啥意義又是老調重談
所以後面我會以另一種為主繼續寫下去,但只是路徑不一樣而已,其它大同小異
若是有問題歡迎各位回文一起討論

第二種比較麻煩,不開Web Station,把MRTG產生的網頁放在/volume1以外一般user看不到的目錄
好處是不用在意權限的問題,因為只有管理者能用SSH登入才可以修改
而且確定可以和DSM管理介面整合(初學者入門之卷就預告過了)
Synology NAS 改機教學 Part 2:MRTG之卷
首先建立目錄
mkdir /usr/syno/synoman/webman/3rdparty/mrtg
cfgmaker [email protected] > /usr/syno/synoman/webman/3rdparty/mrtg/mrtg.cfg
上面的192.168.1.100請記得自己換成你的Synology NAS在LAN當中所用的IP位址
後面的/usr/syno/synoman/webman/3rdparty/mrtg是我自己的安裝目錄
會裝在這裡是因為第三方應用程式的設定檔也放在這裡
若是你裝在別的目錄請記得改成你自己的安裝目錄(後面的步驟也是)

4.用上一卷裝好的nano來編輯剛產生的mrtg.cfg
首先切換到你產生mrtg.cfg的目錄
cd /usr/syno/synoman/webman/3rdparty/mrtg
nano mrtg.cfg
找到WorkDir這行,是for UNIX的,記得前面註解的#要刪掉
改成你安裝的目錄,下面是我的
WorkDir:/usr/syno/synoman/webman/3rdparty/mrtg(這個顏色表示設定檔裡要修改的部分,後面也是一樣)
注意不可以有空格,不然後面會出錯
接下來請找到Interface 2這段,注意不是Interface 1←這是系統本身的software loopback
Synology NAS 改機教學 Part 2:MRTG之卷
對照圖片看比較方便
MaxBytes這邊是設定最大值(單位是Byte),上面圖中的最大值是50MB,就填入50000000
TitlePageTop是顯示在最上面的標題,不改也沒關係,只是看起來感覺不太好而已
再下面的System:可以填上自己NAS的名稱,例如我的Synology DS209+
Maintainer:改不改都沒關係,不過填上自己的名字看起來還是比較有成就感
Max Speed:我只填50MByte/s…反正就算Gigabit LAN傳輸也不太可能跑超過這速度

5.讓MRTG產生圖形
/opt/bin/mrtg /usr/syno/synoman/webman/3rdparty/mrtg/mrtg.cfg
沒有問題的話你會看到MRTG目錄底下多出了192.168.1.100_2-xxxxx.png一堆圖片
有出現錯誤訊息的話就表示你的mrtg.cfg有問題須要修改,看是第幾行有問題回去改吧!

6.建立MRTG的首頁
indexmaker /usr/syno/synoman/webman/3rdparty/mrtg/mrtg.cfg > /usr/syno/synoman//webman/3rdparty/mrtg/index.html

7.設定每5分鐘自動更新MRTG
nano /etc/crontab
在最後面一行加上:
*/5 * * * * root /opt/bin/mrtg /usr/syno/synoman/webman/3rdparty/mrtg/mrtg.cfg
必須用Tab來隔開,不可使用空白
corntab這個檔案就是用來設定Linux系統的例行性任務
標準的Linux系統每分鐘會去讀取一次crontab的內容,也因為如此最小更新間隔單位是"分鐘"
無法做到像DD-WRT那樣子即時更新
Synology NAS是把crontab載入記憶體裡面,所以改完之後請重新啟動crond服務
/usr/syno/etc/rc.d/S04crond.sh stop
/usr/syno/etc/rc.d/S04crond.sh start


8.和DSM管理介面整合
我的教學文最大的重點就在這邊啦!
首先請看Synology官方的第三方應用程式安裝指南
cd /usr/syno/synoman/webman/3rdparty/mrtg
切換到安裝目錄底下
nano application.cfg
新增application.cfg這個設定檔,用來設定在DSM管理介面當中所看到的
以下是我的設定檔內容:
text = MRTG
description = Multi Router Traffic Grapher
description_cht = 網路流量統計圖
type = embedded
icon_16 = icon_16.png
icon_32 = icon_32.png
path = /webman/3rdparty/mrtg/index.html
adminonly = true

text是出現在"其它應用程式"底下的名稱
description是英文DSM滑鼠游標停在圖示上會出現的名稱,後面加上_cht表示中文名稱
想要加入其它語言的話可見官方的PDF依此類推
type有embedded和popup兩種;embedded是像我一樣直接在右邊顯示,popup則是另開新網頁
icon_16是顯示在左邊樹狀功能表中的圖示
Synology NAS 改機教學 Part 2:MRTG之卷
icon_32是顯示在首頁中我的最愛那邊的圖示
Synology NAS 改機教學 Part 2:MRTG之卷
以上兩者請使用16*16和32*32的PNG圖示
注意有背景透明最好,不然看起來好像貼一塊狗皮膏樂在DSM上,整體的美感都放破壞掉了
在PC上先圖把圖片做好丟到File Staion的public共用資料夾底下
cp /volume1/public/*.png /usr/syno/synoman/webman/3rdparty/mrtg
上面的指令把圖示複製過去,一定要放在3rdparty/mrtg底下不然DSM看不到圖示
path這行就是告訴DSM你的網頁放在哪…我裝在/usr/syno/synoman/底下和DSM一樣
所以只要寫後面不一樣的部分就行了
adminonly是設定只有admin管理者可以看到我們改上去的MRTG
要讓其它user也看的到的話改成false即可,預設值即為true,不想讓它user看的話這行不寫也沒關係

在application.cfg當中可以指定port,但我試過設定為80就會無法正常顯示
所以一開始我才不想開Web Station裝在/volume1/web底下
就是怕做到這邊整合進DSM會出問題
問過官方這是DSM天生的限制,因為是和DSM整合,所以只能用port 5000覽瀏
以後若是開放可以讓我們自己定義DSM管理介面所用的port的話,應該就不會有這樣的問題產生

沒有問題的話大家應該都可以跟我一樣把MRTG整合進DSM管理介面了
最後附上我使用的圖示檔給大家按此下載
祝大家改機愉快

謝謝收看,PC與NAS大家都是好朋友
這篇文章寫得好
棒喔

希望多寫一些

這裡有一堆法文的相關教學
我是都使用這邊的修改
http://www.synology.com/enu/forum/viewtopic.php?f=4&t=4517&p=38796&hilit=vnstat#p38796
我也有一台107+ 真的很棒!
現在又有大大的改機教學....
只能說 剛溫啦...
請問為什麼我的 207+ 裝了後 會當機,需要把插頭拔掉,在重新開機
nthuozntu wrote:
請問為什麼我的 20...(恕刪)


我的107+也是會當機~~~
不過不是馬上當~~要過半小時~1小時才會當....
已經當過三次了~~
也是必須拔掉電源才能重開~~~

我現在已經把SNMP和MRTG移除......
目前還沒出現當機情況~~~
不知原因是出在那裡.....
夢想與現實總是有距離~~
哇係悶燒男 wrote:
我的107+也是會當...(恕刪)

我裝在我的DS209+上一切正常已經三天沒關機了
查了一下網路上其它人改MRTG會當機的問題…
半年前也有人在DS107+上安裝MRTG會當機
應該是安裝SNMP才會導致當機
ipkg remove net-snmp_5.4.2.1-1
將SNMP移除應該就不會再發生當機的情況了

目前只要你的Synology NAS使用的CPU是Marvell mv5281 ARM
DS107+、DS207+、CS407、RS407
這四台裝了SNMP之後就會導致當機
這四台Synology NAS目前無法改MRTG

請問樓上兩位安裝的SNMP版本是…?
ipkg list_installed
可以查看目前已安裝的IPKG清單

P2P精神:我餵人人,人人餵我
是 net-snmp_5.4.2.1-1
謝謝
我的是 DS107+ 竟然不能安裝,真是可惜
nthuozntu wrote:
是 net-snmp...(恕刪)

和我裝在DS209+上的版本一樣…
只是不同CPU所使用的ipkg套件不能夠通用
看來目前除了等SNMP的ipkg更新之外別無它法
若是改裝RRDtool的話好像還是須要用到SNMP服務
P2P精神:我餵人人,人人餵我

hedgehog0083 wrote:

我裝在我的DS20...(恕刪)


原來是net-snmp來是的問題 , 我也不知我裝什麼版本~
因為我已經移掉了~~~
不過應該也是大大所說的版本~
看來只能希望群輝下一版能把這功能加進去~~~
夢想與現實總是有距離~~
關閉廣告

今日熱門文章 網友點擊推薦!

文章分享
評分
複製連結