北京IT設(shè)備保修中日志文件詳細(xì)地記錄了系統(tǒng)每天發(fā)生的各種各樣的事件。用戶可以通過(guò)日志文件檢查錯(cuò)誤產(chǎn)生的原因,或者在受到攻擊和黑客入侵時(shí)追蹤攻擊者的蹤跡。日志的兩個(gè)比較重要的作用是:審核和監(jiān)測(cè)。 Linux系統(tǒng)的日志主要分為兩種類型:
1.進(jìn)程所屬日志 由用戶進(jìn)程或其他系統(tǒng)服務(wù)進(jìn)程自行生成的日志,比如服務(wù)器上的access_log與error_log日志文件。
2.syslog消息 系統(tǒng)syslog記錄的日志,任何希望記錄日志的系統(tǒng)進(jìn)程或者用戶進(jìn)程都可以給調(diào)用syslog來(lái)記錄日志。
日志系統(tǒng)可以劃分為三個(gè)子系統(tǒng):
1. 連接時(shí)間日志--由多個(gè)程序執(zhí)行,把紀(jì)錄寫入到/var/log/wtmp和/var/run/utmp,login等程序更新wtmp和utmp文件,使系統(tǒng)管理員能夠跟蹤誰(shuí)在何時(shí)登錄到系統(tǒng)。
2. 進(jìn)程統(tǒng)計(jì)--由系統(tǒng)內(nèi)核執(zhí)行。當(dāng)一個(gè)進(jìn)程終止時(shí),為每個(gè)進(jìn)程往進(jìn)程統(tǒng)計(jì)文件(pacct或acct)中寫一個(gè)紀(jì)錄。進(jìn)程統(tǒng)計(jì)的目的是為系統(tǒng)中的基本服務(wù)提供命令使用統(tǒng)計(jì)。
3. 錯(cuò)誤日志--由syslogd(8)執(zhí)行。各種系統(tǒng)守護(hù)進(jìn)程、用戶程序和內(nèi)核通過(guò)syslog(3)向文件/var/log/messages報(bào)告值得注意的事件。
察看日志文件 Linux系統(tǒng)所有的日志文件都在/var/log下,且必須有root權(quán)限才能察看。
日志文件其實(shí)是純文本的文件,每一行就是一個(gè)消息。察看方式有很多。
1. cat命令。日志文件總是很大的,因?yàn)閺某醮螁?dòng)Linux開(kāi)始,消息都累積在日志文件中。如果這個(gè)文件不只一頁(yè),那么就會(huì)因?yàn)轱@示滾動(dòng)得太快看不清文件的內(nèi)容。
2. 文本編輯器。北京IT設(shè)備保修公司建議也不要用文本編輯器打開(kāi)日志文件,這是因?yàn)橐环矫婧芎馁M(fèi)內(nèi)存,另一方面不允許隨意改動(dòng)日志文件。
3.用more或less那樣的分頁(yè)顯示程序。
4.用grep查找特定的消息。
每一行表示一個(gè)消息,而且都由四個(gè)域的固定格式組成:
n 時(shí)間標(biāo)簽(timestamp),表示消息發(fā)出的日期和時(shí)間 n 主機(jī)名(hostname)(在我們的例子中主機(jī)名為escher),表示生成消息的計(jì)算機(jī)的名字。如果只有一臺(tái)計(jì)算機(jī),主機(jī)名就可能沒(méi)有必要了。但是,如果在網(wǎng)絡(luò)環(huán)境中使用syslog,那么就可能要把不同主機(jī)的消息發(fā)送到一臺(tái)服務(wù)器上集中處理。 n 生成消息的子系統(tǒng)的名字??梢允?quot;kernel",表示消息來(lái)自內(nèi)核,或者是進(jìn)程的名字,表示發(fā)出消息的程序的名字。在方括號(hào)里的是進(jìn)程的PID。 n 消息(message),剩下的部分就是消息的內(nèi)容。
舉例: 在[root@localhost root]# 提示符下輸入:tail /var/log/messages Jan 05 21:55:51 localhost last message repeated 3 times Jan 05 21:55:51 localhost kernel: [drm] AGP 0.99 on Intel i810 @ 0xf0000000 128M B Jan 05 21:55:51 localhost kernel: [drm] Initialized i830 1.3.2 20021108 on minor 0 Jan 05 21:55:51 localhost kernel: mtrr: base(0xf0000000) is not aligned on a siz e(0x12c000) boundary Jan 05 21:56:35 localhost 1月 28 21:56:35 gdm(pam_unix)[4079]: session opened f or user root by (uid=0) Jan 05 21:56:39 localhost 1月 28 21:56:39 gconfd (root-4162): 正在啟動(dòng)(版本 2. 2.0),pid 4162 用戶"root" Jan 05 21:56:39 localhost 1月 28 21:56:39 gconfd (root-4162): 解析的地址"xml:re adonly:/etc/gconf/gconf.xml.mandatory"指向位于 0 的只讀配置源 Jan 05 21:56:39 localhost 1月 28 21:56:39 gconfd (root-4162): 解析的地址"xml:re adwrite:/root/.gconf"指向位于 1 的可寫入配置源 Jan 05 21:56:39 localhost 1月 28 21:56:39 gconfd (root-4162): 解析的地址"xml:re adonly:/etc/gconf/gconf.xml.defaults"指向位于 2 的只讀配置源 Jan 05 21:58:20 localhost kernel: MSDOS FS: IO charset cp936 值得注意的是,與連接時(shí)間日志不同,進(jìn)程統(tǒng)計(jì)子系統(tǒng)默認(rèn)不激活,它必須啟動(dòng)。在Linux 系統(tǒng)中啟動(dòng)進(jìn)程統(tǒng)計(jì)使用accton命令,必須用root身份來(lái)運(yùn)行。accton命令的形式為:accton file,file必須事先存在。先使用touch命令創(chuàng)建pacct文件:touch /var/log/pacct,然后運(yùn)行accton:accton /var/log/pacct。一旦accton被激活,就可以使用lastcomm命令監(jiān)測(cè)系統(tǒng)中任何時(shí)候執(zhí)行的命令。若要關(guān)閉統(tǒng)計(jì),可以使用不帶任何 參數(shù)的accton命令。
13870951502
聯(lián)系人:李經(jīng)理
郵 箱:mulj@it-ybw.com
網(wǎng) 址:cnmsl.cn
地 址:北京市海淀區(qū)永豐產(chǎn)業(yè)園永捷北路9號(hào)聯(lián)強(qiáng)國(guó)際5F