在我們?nèi)粘9ぷ髦校?jīng)常要把路由器、交換機(jī)的日志或者是防火墻的地址翻譯日志保存到遠(yuǎn)端的主機(jī)上。Windows平臺(tái)下有一些商業(yè)軟件可以實(shí)現(xiàn)建立集中的syslog服務(wù)器的功能,但是由于windows自身的穩(wěn)定性以及這些商業(yè)軟件的成熟度問題,性能及可靠性都存在一定的缺陷,應(yīng)用并不是很廣泛。采用freebsd來建立集中的syslog服務(wù)器不僅可以享受freebsd平臺(tái)卓越的網(wǎng)絡(luò)性能和優(yōu)秀的可靠性,而且可以充分利用UNIX平臺(tái)下強(qiáng)大的命令行工具以及shell程序腳本功能。最后,所有這一些都是免費(fèi)的!
一、安裝freebsd系統(tǒng)
這部分網(wǎng)上有大量的參考資料,而且freebsd的安裝界面還算比較友好,就不詳細(xì)說明了。需要說明的是安裝過程中需要選擇安裝ports collection。
二、安裝minirsyslogd
在root帳號(hào)下
cd /usr/ports/sysutils/minirsyslogd
make
make install
make clean
安裝腳本的提示可以看到minirsyslogd被安裝到了
/usr/local/sbin/minirsyslogd
可以使用man minirsyslogd來查看該程序的說明,寫得非常詳細(xì),在此感謝一下程序作者。
三、配置minirsyslogd
在root帳號(hào)下建立一個(gè)目錄作為minirsyslogd保存所有日志的主目錄。
例如:mkdir /usr/home/mylog
在該目錄下以IP地址為名建立子目錄,如果要接收來自192.168.1.1的syslog信息,就在主目錄下建立名為192.168.1.1的子目錄。
例如:cd /usr/home/mylog
mkdir 192.168.1.1
有幾臺(tái)機(jī)器要接收就建幾個(gè)目錄
mkdir 192.168.2.1
mkdir 192.168.2.3
…
四、運(yùn)行minirsyslogd
/usr/local/sbin/ minirsyslogd –-daemon –rootdir /usr/home/mylog
minirsyslogd會(huì)在每個(gè)地址命名的目錄下建立日志文件,缺省是每小時(shí)生成一個(gè)新文件,文件名以IP地址開頭,后面跟日期和時(shí)間。
如果運(yùn)行過程中需要添加接收的新主機(jī)地址,在建立完目錄后,需要運(yùn)行
kill –HUP <minirsyslogd的進(jìn)程號(hào)>
如果忘記kill –HUP了,程序也會(huì)在每小時(shí)檢查一次主目錄下是否有新的目錄加入。
如果你將生成新日志文件的間隔設(shè)為一天而不是一個(gè)小時(shí),請(qǐng)確保該文件不要大于2G,否則還是用每小時(shí)生成文件比較好(什么,你的系統(tǒng)每小時(shí)也大于2G?那就沒辦法了)。
五、定時(shí)運(yùn)行的腳本
程序作者在man給出的說明中提供了幾個(gè)例子,這里再提供一點(diǎn)思路:
每天將前一天的日志進(jìn)行壓縮
find /usr/home/mylog -ctime +1d -exec gzip {} ";
將超過90天的日志文件進(jìn)行刪除
find /usr/home/mylog -ctime +90d -exec rm {} ";
這兩個(gè)任務(wù)可以放到crontab中每天凌晨非忙時(shí)運(yùn)行。
posted on 2009-05-14 18:10
Blog of JoJo 閱讀(300)
評(píng)論(0) 編輯 收藏 所屬分類:
每日一記