zl程序教程

您现在的位置是:首页 >  系统

当前栏目

Linux(四)日志管理

Linux日志 管理
2023-09-11 14:19:29 时间

十六、日志管理

1.系统常用的日志:

/var/log/:该目录就是系统日志文件的保存位置

系统常用的日志:

2.日志管理服务 rsyslogd

1)查询Linux中的rsyslogd服务是否启动

ps -aux | grep "rsyslog" | grep -v "grep"(-v:反向匹配)

2)查询 rsyslogd 服务的自启动状态

systemctl list-unit-files | grep rsyslog

3)配置文件目录:/etc/rsyslog.conf

编辑文件格式为:日志类型.日志级别 存放的日志文件

3.日志类型分为:

authpriv:ssh、ftp等登录信息的验证信息

corn:时间任务相关

kern:内核

lpr:打印

mail:邮件

mark(syslog)-rsyslog:服务内部的信息,时间标识

news:新闻组

user:用户程序产生的相关信息

uucp:unix、to、nuix、copy主机之间相关的通信

local 1-7:自定义的日志设备

4.日志级别分为:

debug:有调试信息的,日志通信最多

info:一般信息日志,最常用

notice:最具有重要性的普通条件的信息

warning:警告级别

err:错误级别,阻止某个功能或者模块不能正常工作的信息

crit:严重级别,阻止整个系统或者整个软件不能正常工作的信息

alert:需要立刻修改的信息

emerg:内核崩溃等重要信息

none:什么都不记录

注意;从上到下,级别从低到高,记录信息越来越少

5.日志文件阅读

由日志服务 rsyslogd 记录的日志文件,文件格式包含以下4列:

1)事件产生的时间

2)产生事件的服务器的主机名

3)产生事件服务名或程序名

4)事件的具体信息

6.日志轮替

1)日志轮替就是把旧的日志文件移动并改名,同时建立新的空日志,当旧日志文件超出保存的范围之后,就会进行删除

2)日志轮替文件命名:

centos7使用logrotate进行日志轮替管理,要想改变日志轮替文件名字,通过 /etc/logrotate.conf 配置文件中“dateext”参数

3)logrotate配置文件:/etc/lograte.conf

4)配置文件参数说明:

daily:日志的轮替周期是每天

weekly:日志的轮替周期是每周

monthly:日志的轮替周期是每月

rotate 数字:保留的日志文件个数,0指没有备份

compress:日志轮替时,旧的日志进行压缩

create mode owner group:建立新日志,同时指定新日志的权限与所有者和所属组

mail address:当日志轮替时,输出内容通过邮件发送到指定的邮件地址

missingok:如果日志不存在,则忽略该日志的警告信息

notifempty:如果日志为空文件,则不进行日志轮替

minsize 大小:日志轮替的最小值。也就是日志一定要达到这个最小值才会轮替,否则就算时间达到也不轮替

size 大小:日志只有大于指定大小才进行日志轮替,而不是按照时间轮替

dateext:使用日期作为日志轮替文件的后缀

sharedscripts:在此关键字之后的脚本只执行一次

prerotate/endscript:在日志轮替之前执行脚本命令

postrotate/endscript:在日志轮替之后执行脚本命令

5)把自己的日志加入轮替

①第一种方法是直接在/etc/logrotate.conf配置文件中写入该日志的轮替策略

②第二种方法是在/etc/logrotate.d/目录中新建立该日志的轮替文件,在该轮替文件写入正确的轮替策略,因为该目录中的文件都会被“include”到 主配置文件中,所以也可以把日志加入轮替。

6)日志轮替机制原理

日志轮替之所以可以在指定的时间备份日志,是依赖系统定时任务。在/etc/cron.daily/目录,就会发现这个目录中是有logrotate文件(可执行权限), logrotate通过这个文件依赖定时任务执行的。

7.查看内存日志

journaltcl:查看全部

journaltcl -n 3:查看最新三条

journaltcl --since 19:00 --until 20:00 :查看起始时间到结束时间的日志可加日期

journaltcl -p err:报错日志

journaltcl -o verbose:日志详细内容

journaltcl _PID=1245 _COMM=sshd:查看包含这些参数的日志

十七、系统-备份与恢复

1.安装 dump 和 restore

1)如果Linux上没有安装dump和restore

yum -y install dump

yum -y install restore

2)使用dump完成备份

dump支持分卷和增量备份(所谓增量备份是指备份上次备份后,修改/增加过的文件,也称差异备份)

基本语法:

dump -cu [-0123456789] [-f <备份后的文件名>] [-T <日期>] [需要备份的目录或文件系统]

常用选项:

-c:创建新的归档文件,并将由一个或多个文件参数所指定的内容写入归档文件的开头

-0123456789:备份的层级,0位最完整备份,会备份所有文件。若指定0以上层级,则备份至上一次备份以来修改或新增的文件,到9后,可再次轮替

-f <备份后的文件名>:指定备份后的文件名

-j:调用bzlib库备份压缩文件,将备份后的文件压缩成bz2格式,让文件更小

-T <日期>:指定开始备份的时间与日期

-u:备份完毕后,在/etc/dumpdares中记录备份的文件系统,层级,日期与时间等

-t:指定文件名,若该文件已存在备份文件中,则列出名称

-W:显示需要备份的文件及其最后一次备份的层级,时间,日期

-w:与-W类似,但仅显示需要备份的文件

3)备份文件是,可将文件上传至其他服务器保存,避免该服务器宕机导致备份不可用。

2.使用restore完成恢复

1)restore命令用来恢复已备份的文件,可以从dump生成的备份文件中恢复原文件

2)基本语法:restore [模式选项] [选项]

四种模式:一次命令只可使用一种

-C:使用对比模式,将备份的文件与已存在的文件相互对比

-i:使用交互模式,在进行还原操作时,restore指令将依序询问用户

-r:进行还原模式

-t:查看模式,看备份文件有哪些

常用选项:

-f <备份设备>:从指定的文件中读取备份数据,进行还原操作