• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            小默

            【轉(zhuǎn)】Fedora Linux中的日志服務(wù)

            原文:http://blog.csdn.net/flagonxia/archive/2009/08/09/4427756.aspx

            ---

            <序言>

            我已經(jīng)寫過兩篇實用型的博文,可以作為參考:

            1) 如何將Linux主機(jī)設(shè)置成syslog服務(wù)器;

            2) 使用cron和logrotate來管理日志文件。

                 這篇文章主要介紹日志服務(wù)的基礎(chǔ)知識。涉及日志的服務(wù)有兩個,在Fedora9中是rsyslog服務(wù)和logrotate服務(wù)。前者負(fù)責(zé)寫入日志,后者負(fù)責(zé)備份和刪除舊日志,以及更新日志文件。

            1. rsyslogd 服務(wù)

            1.1 查看當(dāng)前rsyslogd服務(wù)的狀態(tài)

                 在Fedora 9開始,負(fù)責(zé)寫入日志信息的服務(wù)是rsyslogd,它的配置文件為:/etc/rsyslog.conf。我們檢測一下當(dāng)前這個服務(wù)是不是在運行。

                 [flagonxia@airhouse etc]$ ps -ef | grep -v grep | grep rsyslog
                 root      1584     1  0 10:33 ?        00:00:00 rsyslogd -c 3

                  從上面命令的輸出結(jié)果看到rsyslogd執(zhí)行時使用的參數(shù)是-c 3。這個輸入?yún)?shù)在文件/etc/sysconfig/rsyslog中指定。

                  [flagonxia@airhouse sysconfig]$ less rsyslog
                  # Options to syslogd
                  # syslogd options are deprecated in rsyslog v3 
                  # if you want to use them, switch to compatibility mode 2 by "-c 2"
                  SYSLOGD_OPTIONS="-c 3"

                  也可以通過另一種方式,查看當(dāng)前運行級別中,rsyslogd是否運行。

                  [flagonxia@airhouse sysconfig]$ sudo chkconfig --list rsyslog
                  rsyslog         0:off   1:off   2:on    3:on    4:on    5:on    6:off

                  注意,這里的服務(wù)名是rsyslog。

            1.2 配置文件/etc/rsyslog.conf

            1.2.1 配置文件的基本信息

                  配置文件/etc/rsyslog.conf中有很多內(nèi)容,但最主要的是指定需要記錄哪些服務(wù)和需要記錄什么等級的信息。

                  下面是rsyslog.conf的內(nèi)容。

                  # /etc/rsyslog.conf

                  ... ...

                  #### RULES ####

                  # Log all kernel messages to the console.
                  # Logging much else clutters up the screen.
                  #kern.*                                                 /dev/console

                  # Log anything (except mail) of level info or higher.
                  # Don't log private authentication messages!
            A    *.info;mail.none;authpriv.none;cron.none                /var/log/messages

                  # The authpriv file has restricted access.
                  authpriv.*                                              /var/log/secure

                  # Log all the mail messages in one place.
            B    mail.*                                                  -/var/log/maillog


                  # Log cron stuff
                  cron.*                                                  /var/log/cron

                  # Everybody gets emergency messages
            C      *.emerg                                                 *

                  # Save news errors of level crit and higher in a special file.
            D    uucp,news.crit                                       /var/log/spooler

                  # Save boot messages also to boot.log
                  local7.*                                                /var/log/boot.log     

                 【注釋】

                  A:把所有大于info級別的信息都記錄到/var/log/messages中,但不要記錄mail,authpriv和cron服務(wù)產(chǎn)生的信息;

                  B:把mail產(chǎn)生的信息都記錄到/var/log/maillog中

                  C:把所有服務(wù)輸出的“大于”emergy級別的信息顯示給每個在線的人,通過wall工具

                  D:把uucp和news輸出的大雨crit級別的信息記錄到/var/log/spooler中

            1.2.2 信息的等級及其在配置文件中指定的方式

                 A 七種信息等級

                    1)info

                    2)notice

                    3)warning或warn

                    4)err或error

                    5)crit

                    6)alert

                    7)emerg或panic:導(dǎo)致系統(tǒng)幾乎要死機(jī)

                 B 信息等級的指定方式

                    1). xxx: 表示大于xxx級別的信息

                    2).=xxx:表示等于xxx級別的信息

                    3).!xxx:表示在xxx之外的等級的信息

            2. logrotate服務(wù)

            2.1 logrotate服務(wù)的啟動方式

                   logrotate是一個日志管理程序,用來把舊的日志文件刪除(備份),并創(chuàng)建新的日志文件,這個過程稱為“轉(zhuǎn)儲”。我們可以根據(jù)日志的大小,或者根據(jù)其使用的天數(shù)來轉(zhuǎn)儲。

                   logrotate的執(zhí)行由crond服務(wù)實現(xiàn)。在/etc/cron.daily目錄中,有個文件logrotate,它實際上是個shell script,用來啟動logrotate。logrotate程序每天由cron在指定的時間(/etc/crontab)啟動。

                   [flagonxia@airhouse cron.daily]$ less logrotate
                   #!/bin/sh

                   /usr/sbin/logrotate /etc/logrotate.conf
                   EXITVALUE=$?
                   if [ $EXITVALUE != 0 ]; then
                   /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
                   fi
                   exit 0

                   因此,使用ps是無法查看到logrotate的。如果它沒有起來,就要查看一下crond服務(wù)有沒有在運行。

                   [flagonxia@airhouse logrotate.d]$ ps -ef | grep -v grep | grep cron
                   root      1984     1  0 10:34 ?        00:00:00 crond

            2.2 logrotate的配置文件/etc/logrotate.conf 

                   在執(zhí)行l(wèi)ogrotate時,需要指定其配置文件/etc/logrotate.conf。這個文件定義了如何轉(zhuǎn)儲日志文件的規(guī)則。如下:

                   # see "man logrotate" for details
                   # rotate log files weekly
                   weekly

                   # keep 4 weeks worth of backlogs
                   rotate 4

                   # create new (empty) log files after rotating old ones
                   create

                   # use date as a suffix of the rotated file
                   dateext

                   # uncomment this if you want your log files compressed
                   #compress

                   # RPM packages drop log rotation information into this directory
                   include /etc/logrotate.d

                   # no packages own wtmp and btmp -- we'll rotate them here
                   /var/log/wtmp {
                          monthly
                          create 0664 root utmp
                          rotate 1
                    }

                    /var/log/btmp {
                          missingok
                          monthly
                          create 0600 root utmp
                          rotate 1
                     }

                     # system-specific logs may be also be configured here.

                  這個配置文件的注釋寫得很清楚,沒有必要再羅嗦了。只想強(qiáng)調(diào)下面這行,它的作用包含存放在/etc/logrotate.d目錄下面的配置文件,不可或缺。如果你安裝了一個新的服務(wù),它的日志轉(zhuǎn)儲的規(guī)則可以建立一個專門的配置文件,放在/etc/logrotate.d下面。它其實也因為下面的這句話,在logrotate服務(wù)啟動時被讀取。

                   include /etc/logrotate.d

                   這里有個例子:/etc/logrotate.d/syslog

                   /var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron {
                         sharedscripts
                         postrotate
                              /bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
                         endscript
                   }

                  上面的配置對于/var/log/messages, /var/log/secure, /var/log/mailog/ /var/log/spooler, /var/log/boot.log, /var/log/cron都是適用的。

                  注意,prerotate和postrotate必須和sharescripts...endscript一起用。上面的信息表示日志文件轉(zhuǎn)儲后,重啟rsyslogd服務(wù)。

                  每個存放在/etc/logrotate.d目錄里的文件,都有上面格式的配置信息。在{}中定義的規(guī)則,如果與logrotate.conf中的沖突,以/etc/logrotatate.d/中的文件定義的為準(zhǔn)。

            posted on 2011-03-02 21:23 小默 閱讀(1088) 評論(0)  編輯 收藏 引用 所屬分類: Linux

            導(dǎo)航

            統(tǒng)計

            留言簿(13)

            隨筆分類(287)

            隨筆檔案(289)

            漏洞

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            国产精品丝袜久久久久久不卡 | 色欲av伊人久久大香线蕉影院 | 久久精品国产亚洲AV高清热| 久久精品国产亚洲AV大全| 88久久精品无码一区二区毛片| 伊人久久成人成综合网222| 丰满少妇高潮惨叫久久久| 久久99精品免费一区二区| 久久亚洲精精品中文字幕| 久久亚洲中文字幕精品一区| 久久久国产乱子伦精品作者 | 久久精品国产亚洲AV麻豆网站 | 精品久久久久久国产潘金莲 | 久久天天躁狠狠躁夜夜躁2014| 国产精品久久久久久久久免费| 久久这里都是精品| 国产成人综合久久精品尤物| 久久精品国产亚洲AV无码娇色 | 日产精品99久久久久久| 亚洲伊人久久综合中文成人网| 狠狠久久亚洲欧美专区| 亚洲性久久久影院| 久久涩综合| 国产精品亚洲综合专区片高清久久久| 香蕉久久久久久狠狠色| 日本久久中文字幕| 久久国产成人午夜aⅴ影院 | 亚洲国产另类久久久精品小说| 久久中文字幕视频、最近更新 | 中文字幕亚洲综合久久2| 国产精品久久一区二区三区| 久久天天躁狠狠躁夜夜96流白浆 | 久久久久久久亚洲精品| 久久电影网2021| 久久综合久久综合久久| 久久免费美女视频| 色综合色天天久久婷婷基地| 久久这里只有精品久久| 狠狠人妻久久久久久综合蜜桃| 激情综合色综合久久综合| 久久久久久噜噜精品免费直播|