Solaris中syslog機(jī)制有什么用

這篇文章將為大家詳細(xì)講解有關(guān)Solaris中syslog機(jī)制有什么用,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)公司不只是一家網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司;我們對(duì)營(yíng)銷、技術(shù)、服務(wù)都有自己獨(dú)特見解,公司采取“創(chuàng)意+綜合+營(yíng)銷”一體化的方式為您提供更專業(yè)的服務(wù)!我們經(jīng)歷的每一步也許不一定是最完美的,但每一步都有值得深思的意義。我們珍視每一份信任,關(guān)注我們的網(wǎng)站設(shè)計(jì)、做網(wǎng)站質(zhì)量和服務(wù)品質(zhì),在得到用戶滿意的同時(shí),也能得到同行業(yè)的專業(yè)認(rèn)可,能夠?yàn)樾袠I(yè)創(chuàng)新發(fā)展助力。未來將繼續(xù)專注于技術(shù)創(chuàng)新,服務(wù)升級(jí),滿足企業(yè)一站式成都全網(wǎng)營(yíng)銷需求,讓再小的品牌網(wǎng)站制作也能產(chǎn)生價(jià)值!

syslog機(jī)制負(fù)責(zé)發(fā)送、記錄系統(tǒng)內(nèi)核及工具所產(chǎn)生的信息,由syslog()調(diào)用、syslogd守護(hù)進(jìn)程和配置文件/etc/syslog.conf組成。當(dāng)系統(tǒng)內(nèi)核及工具產(chǎn)生信息時(shí),通過調(diào)用syslog(),把信息送往syslogd,syslogd再根據(jù)/etc/syslog.conf中的配置要求,將這些信息分別作如下處理:
1.記錄到系統(tǒng)日志中;
2.輸出到系統(tǒng)控制臺(tái)上;
3.轉(zhuǎn)發(fā)給指定的用戶;
4.通過網(wǎng)絡(luò)轉(zhuǎn)發(fā)給其它主機(jī)上的syslogd。
通過syslog.conf的配置,我們可以靈活地對(duì)信息的發(fā)送和保存進(jìn)行控制。

syslogd進(jìn)程在系統(tǒng)啟動(dòng)時(shí)由/etc/rc2.d/S74syslog啟動(dòng)。如果需要手工啟動(dòng)或停止syslogd,可以使用命令:
# /etc/init.d/syslog start | stop

/etc/syslog.conf文件中的一項(xiàng)配置記錄由“選項(xiàng)”(selector)和“動(dòng)作”(action)兩個(gè)部分組成,兩者間用tab制表符進(jìn)行分隔。而“選項(xiàng)”又由一個(gè)或多個(gè)形如“類型.級(jí)別”格式的保留字段組合而成,各保留字段間用分號(hào)分隔。

保留字段中的“類型”代表信息產(chǎn)生的源頭,可以是:
kern 由kernel產(chǎn)生的信息;
user 由用戶進(jìn)程產(chǎn)生的信息。對(duì)那些由程序或不在此列出的工具產(chǎn)生的信息,其缺省類型都是“user”;
mail 郵件系統(tǒng)產(chǎn)生的信息;
daemon 系統(tǒng)守護(hù)進(jìn)程的信息,如in.ftpd、telnetd;
auth 由login, su, getty等進(jìn)行身份認(rèn)證時(shí)產(chǎn)生的信息;
syslog 由syslogd自己內(nèi)部產(chǎn)生的信息;
lpr 行打印spooling系統(tǒng)的信息;
news USENET 網(wǎng)絡(luò)新聞系統(tǒng)的信息;
uucp UUCP系統(tǒng)信息;
cron cron和at工具信息;
local0-7 保留為local使用;
mark syslogd內(nèi)部產(chǎn)生的時(shí)間戳信息;
* 除mark之外的所有其它類型(此符號(hào)不可用以代表所有級(jí)別)。

保留字段中的“級(jí)別”代表信息的重要性,可以是:
emerg 緊急,處于Panic狀態(tài)。通常應(yīng)廣播到所有用戶;
alert 告警,當(dāng)前狀態(tài)必須立即進(jìn)行糾正。例如,系統(tǒng)數(shù)據(jù)庫崩潰;
crit 關(guān)鍵狀態(tài)的警告。例如,硬件故障;
err 其它錯(cuò)誤;
warning 警告;
notice 注意;非錯(cuò)誤狀態(tài)的報(bào)告,但應(yīng)特別處理;
info 通報(bào)信息;
debug 調(diào)試程序時(shí)的信息;
none 通常調(diào)試程序時(shí)用,指示帶有none級(jí)別的類型產(chǎn)生的信息無需送出。如*.debug;mail.none表示調(diào)試時(shí)除郵件信息外其它信息都送出。

“動(dòng)作”域指示信息發(fā)送的目的地。可以是:
/filename 日志文件。由絕對(duì)路徑指出的文件名,此文件必須事先建立;
@host 遠(yuǎn)程主機(jī);
user1, user2 指定用戶。如果指定用戶已登錄,那么他們將收到信息;
* 所有用戶。所有已登錄的用戶都將收到信息。

我們來看看/etc/syslog.conf文件中的實(shí)例:
……
*.err;kern.debug;daemon.notice;mail.crit /var/adm/messages
……

這行中的“action”就是我們常關(guān)心的那個(gè)/var/adm/messages文件,輸出到它的信息源頭“selector”是:
*.err - 所有的一般錯(cuò)誤信息;
kern.debug - 核心產(chǎn)生的調(diào)試信息;
daemon.notice - 守護(hù)進(jìn)程的注意信息;
mail.crit - 郵件系統(tǒng)的關(guān)鍵警告信息

于是我們對(duì)/var/adm/messages中的東東怎么來的大致清楚一點(diǎn)了。再看下面(不理會(huì)那個(gè)注釋符號(hào)“#”):
……
# if a non-loghost machine chooses to have authentication messages
# sent to the loghost machine, un-comment out the following line:
#auth.notice ifdef(‘LOGHOST’, /var/log/authlog, @loghost)
……

這里涉及Solaris下的loghost和m4宏解釋器。loghost好理解,就是在局域網(wǎng)內(nèi)多臺(tái)SUN機(jī)器中指定一臺(tái)作為loghost,大家的syslogd有水就都往它上面灌。具體誰是loghost在/etc/hosts中定義:
……
192.168.1.11 host1 loghost
192.168.1.22 host2
……

m4負(fù)責(zé)解釋ifdef,它的事跡這里就不去深究了(要考SA的兄弟姐妹們可要去看啊,有題的),反正上面那個(gè)ifdef的意思就是:如果本機(jī)是loghost,那么信息送到/var/log/authlog中,否則送到@后的主機(jī)上。

下面作為一個(gè)示例,看看如何使用syslog機(jī)制來對(duì)telnet登錄進(jìn)行記錄。
Telnet和ftp等許多網(wǎng)絡(luò)服務(wù)是通過inetd來提供的。因此先檢查一下inetd使用了什么類型和級(jí)別的syslog調(diào)用:

# man inetd
……
-t Instructs inetd to trace the incoming
connections for all of its TCP services. It does this by
logging the client’s IP address and TCP port number,
along with the name of the service, using the syslog(3)
facility. UDP services can not be traced. When tracing is
enabled, inetd uses the syslog facility code ``daemon’’
and ``notice’’ priority level.
……

就是說,啟動(dòng)帶-t選項(xiàng)的inetd,它才會(huì)調(diào)用syslog來記錄TCP服務(wù)的細(xì)節(jié),類型是daemon,級(jí)別是notice。于是先修改inetd的啟動(dòng)腳本/etc/init.d/inetsvc,找到inetd那行,改為:
/usr/sbin/inetd -s -t &

前面看到,daemon.notice已經(jīng)包括在syslog.conf中,action是/var/adm/messages。如果action不想變,那么就不用做修改了。

重啟一下syslogd:
# /etc/init.d/syslog stop
# /etc/init.d/syslog start

重啟一下inetd:
# /etc/init.d/inetsvc stop
# /etc/init.d/inetsvc start

試驗(yàn)一下結(jié)果。開一個(gè)窗口監(jiān)視有沒有新的message來:
# tail -f /var/adm/messages

從另一臺(tái)機(jī)器上telnet或ftp上來。上面的監(jiān)視窗口中應(yīng)該有輸出(^C 終止監(jiān)視):
……
Jun 18 12:08:42 host1 inetd[755]: [ID 317013 daemon.notice] ftp[759] from 192.168.1.88 1082
Jun 18 12:09:13 host1 inetd[755]: [ID 317013 daemon.notice] telnet[760] from 192.168.1.88 1083
Jun 18 12:11:22 host1 inetd[755]: [ID 317013 daemon.notice] ftp[771] from 192.168.1.88 1084

關(guān)于“Solaris中syslog機(jī)制有什么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

本文名稱:Solaris中syslog機(jī)制有什么用
新聞來源:http://muchs.cn/article48/iepiep.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站小程序開發(fā)、網(wǎng)站內(nèi)鏈、網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)