Linux 系統的日誌目錄

鏈接時間的日誌

鏈接時間日誌通常由/var/log/wtmp和/var/run/utmp這兩個文件記錄,經過who查看html

who /var/log/wtmp          【鏈接時間日誌】
who /var/log/utmp          【鏈接時間日誌】
ac -p     //查看每一個用戶的鏈接時間
ac -a     //查看全部用戶的鏈接時間
ac -d     //查看用戶天天的鏈接時間

 

系統和服務日誌

系統日誌服務是由名爲syslog的服務管理的,如下日誌文件都由syslog日誌服務驅動的:
       /var/log/lastlog    :記錄最後一次用戶成功登錄的時間、登錄IP等信息
       /var/log/messages  :記錄Linux操做系統常見的系統和服務錯誤信息
       /var/log/secure   :系統安全日誌,記錄用戶和工做組變壞、用戶登錄認證狀況
       /var/log/btmp【last】:記錄Linux登錄失敗的用戶、時間以及遠程IP地址
       /var/log/cron      :記錄crond計劃任務服務執行狀況

進程監控日誌

進程統計監控日誌在監控用戶的操做指令是很是有效的。當服務器最近發現常常無端關機或者無端被人刪除文件等現象時,能夠經過使用進程統計日誌查看shell

[root@server ~]# accton /var/account/pacct      //開啓進程統計日誌監控
[root@server ~]# lastcomm    [root@server ~]# accton     //關閉進程統計日誌監控

image

RedHat6日誌服務介紹

在Linux系統,大部分日誌都是由syslog日誌服務驅動和管理的,syslog服務由兩個重要的配置文件控制管理,vim

CentOS 6及其以上:  /etc/rsyslog.conf主配置文件安全

                                 /etc/init.d/rsyslog是啓動腳本服務器

注意:CentOS 6以前版本是:/etc/syslog.conf. 和 /etc/sysconfig/syslog輔助工具

[root@server rsyslog.d]# grep -v '#' /etc/rsyslog.conf |grep -v '^$'  

image

消息類型:auth,authpriv,security;cron,daemon,kern,lpr,mail,  mark,news,syslog, user,uucp,local0~local7post

錯誤級別:(8級)debug,info,notice,warning|warn;err|error;crit,alert,emerg|panic性能

動做域:  file,user,console,@remote_ipthis

vim /etc/ rsyslog.conf文件操作系統

*.info;mail.none;authpriv.none;cron.none           /var/log/messages
表示info級別的任何消息都發送到/var/log/messages日誌文件,但郵件系統、驗證系統
和計劃任務的錯誤級別信息就除外,不發送(none表示禁止)
cron.*             /var/log/cron 表示全部級別的cron信息發到/var/log/cron文件
*.emerg           * 表示emerg錯誤級別(危險)的全部消息發給全部用戶

日誌轉發原理了解

對於發送消息到服務器的OS,只要在寫/etc/syslog.conf主配置文件的時候,做用域爲@server-ip就好了

針對218.192.87.24這臺服務器,把一臺系統的全部info級別的auth信息發給日誌服務器
 auth.info           @218.192.87.24  就OK了
# 重啓服務
service rsyslog restart

日誌轉儲服務

系統工做到了必定時間後,日誌文件的內容隨着時間和訪問量的增長而愈來愈多,

日誌文件也愈來愈大。並且當日志文件超過系統控制範圍時候,還會對系統性能形成影響。

儲方式能夠設爲每一年轉儲、每個月轉儲、每週轉儲、達到必定大小轉儲。

在Linux系統,常常使用「logrotate」工具進行日誌轉儲,結合cron計劃任務,能夠輕鬆實現日誌文件的轉儲。

轉儲方式的設置由「/etc/logrotate.conf」配置文件控制

logrotate查看幫助;man logrotate

[root@51cto ~]# cat /etc/logrotate.conf
# see "man logrotate" for details              //能夠查看幫助文檔
# rotate log files weekly
weekly                  //設置每週轉儲
# keep 4 weeks worth of backlogs
rotate 4               //最多轉儲4次
# create new (empty) log files after rotating old ones
create                  //當轉儲後文件不存儲時建立它
# 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 -- we'll rotate them here
/var/log/wtmp {                       //設置/var/log/wtmp日誌文件的轉儲參數
    monthly                              //每個月轉儲
    create 0664 root utmp        //轉儲後文件不存在時建立它,文件全部者爲root,所屬組爲utmp,對應的權限爲0664
    rotate 1                                 //轉儲一次
}
       /var/log/news/* {
           monthly                     
           rotate 2
           olddir /var/log/news/old
           missingok           //若日誌文件不存在,則跳過。
           postrotate
               kill -HUP ‘cat /var/run/inn.pid‘      //完成後重啓news新聞組服務
           endscript           
           nocompress         //轉儲時不壓縮
       } 

自定義轉儲服務

一、修改/etc/rsyslog.conf文件使得以下: 

[root@51cto ~]# tail -1 /etc/syslog.conf       //查看該文件的最後一行
	*.info                  /var/log/test.log

二、重啓syslog服務:
[root@51cto ~]# /sbin/service syslog restart
三、建立/etc/logrotate.d/test.log日誌轉儲參數配置文件,添加以下:
[root@51cto ~]# vim /etc/logrotate.d/test.log
[root@51cto ~]# cat /etc/logrotate.d/test.log
/var/log/test.log{
    rotate  10
    size = 50k
    compress
    postrotate
    killall -HUP  syslog
    endscript

}

四、查看文件/etc/cron.daily/logrotate:

五、查看轉儲後的文件

[root@51cto log]# ls /var/log/test.log*

【更多參考】

日誌服務器轉發功能:

https://yq.aliyun.com/ziliao/25149

https://www.cnblogs.com/hanyifeng/p/5463338.html

相關文章
相關標籤/搜索