| 
	一、日志文件:主要记录在本机上谁什么时间做了什么事情. 
	1、日志文件在管理中的作用:1).系统故障排错 
	                                           2).统计访问量 
	2、日志软件: rpm -q rsyslog 
	     文件列表: rpm -ql rsyslog 
	     配置文件: rpm -qc rsyslog 
	3、日志文件默认位置:/var/log 
	     注:某些第3方软件的日志文件位于软件自己的目录中的log目录或其他位置。 
	4、常见的日志文件:(/var/log) 
	     注:文件类型用file命令查。 
	           大多数日志文件是纯文本文件,可以用cat 、head来查看。 
	           还有一些是二进制日志文件,需要用专用的命令来查看。 
	     secure:安全相关,主要是用户认证,如登录 、创建和删除账号 、sudo等 
	     audit/audit.log:审计日志。跟用户账号相关 
	     messages:记录系统和软件的绝大多数消息。如服务启动 、停止 、服务错误等。 
	     boot.log:系统启动日志。能看到启动流程。 
	     cron:计划任务日志。会记录crontab计划任务的创建、执行信息。 
	     dmesg:硬件设备信息(device)。纯文本,也可以用dmesg命令查看。 
	     yum.log:yum软件的日志。记录yum安装、卸载软件的记录。 
	     lastlog:最后登录的日志。用lastlog查看(二进制日志文件) 
	     btmp:登录失败的信息(bad)。用lastb查(二进制日志文件) 
	     wtmp:正确登录的所有用户命令(who、w),用last查(二进制日志文件) 
	日志练习:开两个命令终端窗口,分别执行不同的命令,看A窗口中的日志信息变化, 
	     A窗口:tail -0f /var/log/messages     #实时监测messages日志文件 
	     B窗口:systemctl restart firewalld 
	                 systemctl stop firewalld 
	------------------------------------------------------------------------------------------------------------------- 
	------------------------------------------------------------------------------------------------------------------- 
	rsyslog日志程序的配置文件:rpm -qc rsyslog     #查的结果如下 
	     /etc/logrotate.d/syslog      #日志轮转(切割、轮替)策略文件 
	     /etc/rsyslog.conf     #主配置文件 
	     /etc/sysconfig/rsyslog     #环境设置配置文件 
	------------------------------------------------------------------------------------------------------------------- 
	------------------------------------------------------------------------------------------------------------------- 
	主配置文件:/etc/rsyslog.conf 
	------------------------------------------------------------------------------------------------------------------- 
	------------------------------------------------------------------------------------------------------------------- 
	日志类别:(用man 3 syslog来查看) 
	     注:日志类别主要是用来区分软件、服务. 
	     LOG_AUTH     #安全或授权信息 
	     LOG_AUTHPRIV     #安全或授权信息 (私有) 
	     LOG_CRON     #计划任务 
	     LOG_DAEMON     #系统守护进程 without separate facility value 
	     LOG_FTP     #ftp守护进程相关 
	     LOG_KERN     #内核消息 (these can't be generated from user processes) 
	     LOG_LOCAL0 through LOG_LOCAL     #本地自定义 
	     LOG_LPR     #打印子系统 
	     LOG_MAIL     #邮件子系统 
	     LOG_NEWS     #新闻组子系统 
	     LOG_SYSLOG     #系统消息(8) 
	     LOG_USER (default)     #一般用户的等级的消息 
	     LOG_UUCP     #UUCP subsystem     unix  like机器本身相关子系统 
	------------------------------------------------------------------------------------------------------------------- 
	------------------------------------------------------------------------------------------------------------------- 
	日志等级level:(用man 3 syslog来查看) 
	     注:等级主要用来区分某个软件中日志的分类。 
	     LOG_EMERG     #疼痛级,严重错误 
	     LOG_ALERT     #报警.必须立即采取措施 
	     LOG_CRIT     #较严重 
	     LOG_ERR     #错误 
	     LOG_WARNING     #警告 
	     LOG_NOTICE     #提示信息.normal, but significant, condition 
	     LOG_INFO     #信息 
	     LOG_DEBUG     #调试级信息 
	     注:等级为none表示不记录任何信息。 
	------------------------------------------------------------------------------------------------------------------- 
	------------------------------------------------------------------------------------------------------------------- 
	案例一:要求创建一个跟messages日志文件相同的日志规则,将日志记录到/var/log/my.log文件中. 
	     vim /etc/rsyslog.conf     #执行如下操作 
	        *.info;mail.none;authpriv.none;cron.none     /var/log/messages     #找到此行 
	        *.info;mail.none;authpriv.*;cron.none     /var/log/my.log     #添加此行 
	------------------------------------------------------------------------------------------------------------------- 
	------------------------------------------------------------------------------------------------------------------- 
	重启rsyslog服务:systemctl restart rsyslog 
	查看日志:cat /var/log/my.log 
	------------------------------------------------------------------------------------------------------------------- 
	------------------------------------------------------------------------------------------------------------------- 
	二、logger 是Shell命令,可以通过该命令使用 rsyslog 的系统日志模块,还可以从命令行直接向系统日志文件写入一行信息。 
	1、logger命令的语法为: 
	     logger [-i] [-f filename] [-p priority] [-t tag] [message...] 
	     注:-f filename:将 filename 文件的内容作为日志。 
	           -i 每行都记录logger进程的ID。 
	           -p priority:指定优先级;优先级必须是形如 facility.priority 的完整的选择器,默认优先级为 user.notice。 
	           -t tag:使用指定的标签标记每一个记录行。 
	           message:要写入的日志内容,多条日志以空格为分隔;如果没有指定日志内容,并且 -f filename 选项为空,那么会把标准输入作为日志内容。 
	案例一:将ping命令的结果写入日志: 
	     创建ping的日志:ping -c 3 127.0.0.1 | logger -it logger_test -p local3.notice   
	     创建ping的日志:ping -c 3 127.0.0.5 | logger -it logger_test -p local3.notice  
	     查看日志文件:cat /var/log/user.log 
	     查看到的日志内容:Oct 6 12:48:53 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=10 ttl=253 time=931 ms 
	     发现ping命令的结果成功输出到/var/log/userlog 文件。 
	     注:命令 logger -it logger_test -p local3.notice 各选项的含义: 
	           -i:在每行都记录进程ID; 
	           -t logger_test:每行记录都加上“logger_test”这个标签; 
	           -p local3.notice:设置日志类型和优先级。 
	------------------------------------------------------------------------------------------------------------------- 
	------------------------------------------------------------------------------------------------------------------- 
	三、logrotate日志切割: 
	1、作用:1).防止日志文件过大 
	               2).定期删除旧日志文件 
	2、配置文件:rpm -qc logrotate     #文件如下 
	     /etc/cron.daily/logrotate 
	     /etc/logrotate.conf 
	     /etc/rwtab.d/logrotate 
	     /var/lib/logrotate/logrotate.status 
	3、查轮滚策略帮助手册:man logrotate.conf 
	4、配置文件内容: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     #创建新的空日志文件代替旧文件 
	     # use date as a suffix of the rotated file 
	     dateext     #使用日志为文件名后缀,禁用此项时默认以数字为后缀. 
	     # uncomment this if you want your log files compressed 
	     #compress     #是否压缩(后缀为.gz) 
	     # 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     #创建的新日志文件权限、属主 、属组 
	         minsize 1M     #文件最小容量 
	         rotate 1     #保留1个备份 
	     } 
	     /var/log/btmp { 
	         missingok     #丢了也不会报错 
	         monthly 
	         create 0600 root utmp 
	         rotate 1 
	     } 
	     # system-specific logs may be also be configured here. 
	------------------------------------------------------------------------------------------------------------------- 
	------------------------------------------------------------------------------------------------------------------- 
	强制测试轮滚:logrotate -fv /etc/logrotate.conf 
	                      ls /var/log/ 
	     注:1、-f是强制轮滚,-v显示过程 
	         2、日志文件名后缀的数字越大,文件越旧。日志清理时是清理旧文件。 
	案例一:给/var/log/my.log日志文件创建轮滚策略,每天一轮滚,文件丢了也不报错,保留2个备份,启用压缩功能,用数字作为文件名后缀. 
	     vim /etc/logrotate.d/my   添加如下内容 
	          /var/log/my.log  { 
	               daily     #每天一轮滚 
	               missingok     #丢了也不报错 
	               nodateex     #不使用日期为后缀,即用数字为后缀 
	               create     #创建新文件 
	               rotate 2     #保留2个备份 
	               compress     #启用压缩(后缀为.gz) 
	          } 
	测试轮滚:logrotate -fv /etc/logrotate.d/my 
	查看日志文件列表:ls /var/log/my* 
	注:部分知识点来源于man手册。 | 
