RH124-log Linux日志

课程笔记

#日志目录
[[email protected] log]$ ls /var/log/
amanda    cron-20170531  glusterfs         messages       

#日志管理服务
[[email protected] log]$ systemctl is-active rsyslog.service
active

#日志服务配置文件
[[email protected] log]$ cat /etc/rsyslog.conf
# rsyslog configuration file

#### MODULES ####
#加载模块列表

#### GLOBAL DIRECTIVES ####
#全局指令

#### RULES ####
#规则

# The authpriv file has restricted access.
authpriv.*                      /var/log/secure
# 说明:authpriv.为事件名(系统内置的事件),authpriv.*的*为级别,/var/log/secure为事件对应的目录

#同步与非同步
# Log all the mail messages in one place.
mail.*                         -/var/log/maillog
#-/var/log/maillog的-表示非同步。没-是同步,有-是非同步(比较消耗内存)。

#emerg 严重级别,omusrmsg通告所有的用户
# Everybody gets emergency messages
*.emerg                                                 :omusrmsg:*

#journalctl 查看日志
[[email protected] yuq]# journalctl -f #查看最后10条
[[email protected] yuq]# journalctl -p emerg #查看emery级别日志
[[email protected] yuq]# journalctl -p err #查看err级别日志
[[email protected] yuq]# journalctl --since "18:00:00" #查看18点整以来的日志
[[email protected] yuq]# journalctl --since "17:00:00" --until "21:00:00" #查看17点整到19点整的日志

#日志同步到日志服务器
local5.info			@192.168.26.140  # 192.168.26.200 配置
local5.info			/var/log/yyy     # 192.168.26.140 配置
[[email protected] yuq]# systemctl restart rsyslog.service   #重启服务

#192.168.26.140配置开启远程日志接收:cat /etc/rsyslog.conf
# 远程UDP
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# 远程TCP
# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

#不同服务器日志存进不同文件(192.168.26.140 配置)
:fromhost,isequal, "station1.rhce.cc" 		/var/log/station1
:fromhost,isequal, "station1.rhce.cc" 		~				  # ~:到此为止,不会在往下匹配,不加这行日志会匹配写入/var/log/messages
:fromhost,isequal, "station2.rhce.cc"		/var/log/station2
*.info;mail.none;authpriv.none;cron.none    /var/log/messages

#时间命令 date timedatectl
[[email protected] ~]$ timedatectl list-timezones | head  不同时区
[[email protected] ~]$ timedatectl set-timezone Asia/Shanghai  设置上海时间
[[email protected] ~]$ timedatectl set-time "2012-12-21 10:00:00"
[[email protected] ~]$ date
2012年 12月 21日 星期五 10:00:19 CST

#不同服务器时间同步
[[email protected] yuq]# cat /etc/ntp.conf

  

【Linux日志】系统日志及分析

Linux系统拥有非常灵活和强大的日志功能,可以保存几乎所有的操作记录,并可以从中检索出我们需要的信息。

大部分Linux发行版默认的日志守护进程为 syslog,位于 /etc/syslog 或 /etc/syslogd 或/etc/rsyslog.d,默认配置文件为 /etc/syslog.conf 或 rsyslog.conf,任何希望生成日志的程序都可以向 syslog 发送信息。

Linux系统内核和许多程序会产生各种错误信息、警告信息和其他的提示信息,这些信息对管理员了解系统的运行状态是非常有用的,所以应该把它们写到日志文件中去。

完成这个过程的程序就是syslog。syslog可以根据日志的类别和优先级将日志保存到不同的文件中。

例如,为了方便查阅,可以把内核信息与其他信息分开,单独保存到一个独立的日志文件中。默认配置下,日志文件通常都保存在“/var/log”目录下。

日志类型

下面是常见的日志类型,但并不是所有的Linux发行版都包含这些类型:

类型 说明
auth 用户认证时产生的日志,如login命令、su命令。
authpriv 与 auth 类似,但是只能被特定用户查看。
console 针对系统控制台的消息。
cron 系统定期执行计划任务时产生的日志。
daemon 某些守护进程产生的日志。
ftp FTP服务。
kern 系统内核消息。
local0.local7 由自定义程序使用。
lpr 与打印机活动有关。
mail 邮件日志。
mark 产生时间戳。系统每隔一段时间向日志文件中输出当前时间,每行的格式类似于 May 26 11:17:09 rs2 -- MARK --,可以由此推断系统发生故障的大概时间。
news 网络新闻传输协议(nntp)产生的消息。
ntp 网络时间协议(ntp)产生的消息。
user 用户进程。
uucp UUCP子系统。

日志优先级

常见的日志优先级请见下标:

优先级 说明
emerg 紧急情况,系统不可用(例如系统崩溃),一般会通知所有用户。
alert 需要立即修复,例如系统数据库损坏。
crit 危险情况,例如硬盘错误,可能会阻碍程序的部分功能。
err 一般错误消息。
warning 警告。
notice 不是错误,但是可能需要处理。
info 通用性消息,一般用来提供有用信息。
debug 调试程序产生的信息。
none 没有优先级,不记录任何日志消息。

/var/log/syslog 或 /var/log/messages 存储所有的全局系统活动数据,包括开机信息。基于 Debian 的系统如 Ubuntu 在 /var/log/syslog 中存储它们,而基于 RedHat 的系统如 RHEL 或 CentOS 则在 /var/log/messages 中存储它们。
/var/log/auth.log 或 /var/log/secure 存储来自可插拔认证模块(PAM)的日志,包括成功的登录,失败的登录尝试和认证方式。Ubuntu 和 Debian 在 /var/log/auth.log 中存储认证信息,而 RedHat 和 CentOS 则在 /var/log/secure 中存储该信息。

日志文件详细介绍:

/var/log/boot.log

该文件记录了系统在引导过程中发生的事件,就是Linux系统开机自检过程显示的信息,如图1所示:

/var/log/syslog

默认Centos,Fedora不生成该日志文件,但可以配置/etc/syslog.conf让系统生成该日志文件。

它和/etc/log/messages日志文件不同,它只记录警告信息,常常是系统出问题的信息,所以更应该关注该文件。

要让系统生成该日志文件,在/etc/syslog.conf文件中加上:*.warning /var/log/syslog 该日志文件能记录当用户登录时login记录下的错误口令、Sendmail的问题、su命令执行失败等信息。

该日志文件记录最近成功登录的事件和最后一次不成功的登录事件,由login生成。在每次用户登录时被查询,该文件是二进制文件,需要使用lastlog命令查看,根据UID排序显示登录名、端口号和上次登录时间。如果某用户从来没有登录过,就显示为"**Never logged in**"。该命令只能以root权限执行。简单地输入lastlog命令后就会看到类似图4的信息:

[[email protected] etc]# lastlog

/var/log/wtmp

该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件。因此随着系统正常运行时间的增加,该文件的大小也会越来越大,增加的速度取决于系统用户登录的次数。该日志文件可以用来查看用户的登录记录,last命令就通过访问这个文件获得这些信息,并以反序从后向前显示用户的登录记录,last也能根据用户、终端tty或时间显示相应的记录。

/var/run/utmp

该日志文件记录有关当前登录的每个用户的信息。因此这个文件会随着用户登录和注销系统而不断变化,它只保留当时联机的用户记录,不会为用户保留永久的记录。系统中需要查询当前用户状态的程序,如 who、w、users、finger等就需要访问这个文件。该日志文件并不能包括所有精确的信息,因为某些突发错误会终止用户登录会话,而系统没有及时更新 utmp记录,因此该日志文件的记录不是百分之百值得信赖的。

以上提及的3个文件(/var/log/wtmp、/var/run/utmp、/var/log/lastlog)是日志子系统的关键文件,都记录了用户登录的情况。这些文件的所有记录都包含了时间戳。这些文件是按二进制保存的,故不能用less、cat之类的命令直接查看这些文件,而是需要使用相关命令通过这些文件而查看。其中,utmp和wtmp文件的数据结构是一样的,而lastlog文件则使用另外的数据结构,关于它们的具体的数据结构可以使用man命令查询。

每次有一个用户登录时,login程序在文件lastlog中查看用户的UID。如果存在,则把用户上次登录、注销时间和主机名写到标准输出中,然后login程序在lastlog中记录新的登录时间,打开utmp文件并插入用户的utmp记录。该记录一直用到用户登录退出时删除。utmp文件被各种命令使用,包括who、w、users和finger。

下一步,login程序打开文件wtmp附加用户的utmp记录。当用户登录退出时,具有更新时间戳的同一utmp记录附加到文件中。wtmp文件被程序last使用。

时间: 2024-08-18 03:24:31

RH124-log Linux日志的相关文章

/var/log目录下的20个Linux日志文件功能详解

如果愿意在Linux环境方面花费些时间,首先就应该知道日志文件的所在位置以及它们包含的内容.在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时从容找出问题并加以解决. 以下介绍的是20个位于/var/log/ 目录之下的日志文件.其中一些只有特定版本采用,如dpkg.log只能在基于Debian的系统中看到. /var/log/messages - 包括整体系统信息,其中也包含系统启动期间的日志.此外,mail,cron,daemon,kern和auth等内容也记录在var

/var/log目录下的Linux日志文件功能详解_转

摘自:http://www.niaoyun.com/help/application/386.html 学习linux应该知道日志文件的所在位置以及它们包含的内容,在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时从容找出问题并加以解决. 以下介绍的是位于/var/log/ 目录之下的日志文件.其中一些只有特定版本才用,如dpkg.log只在基于Debian的系统中有. /var/log/messages          — 包括整体系统信息,其中也包含系统启动期间的日志

【菜鸟学Linux】Cron Job定期删除Log(日志)文件

以前一直做Windows开发,近期的项目中要求使用Linux.作为小菜鸟一枚,赶紧买了一本经典书<鸟哥的Linux私房菜>学习.最近刚好有一个小任务 - 由于产品产生的Log很多,而且增长很快,所以需要用脚本(Bash scripts)删除过期的Log文件. 使用Linux下的Cron Job可以很好的解决这个问题. 什么是Cron Job? 建立Cron Job需要用到命令crontab,维基百科定义:crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令.

linux日志文件

linux日志文件 在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时从容找出问题并加以解决. /var/log/messages — 包括整体系统信息,其中也包含系统启动期间的日志.此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中. /var/log/dmesg — 包含内核缓冲信息(kernel ring buffer).在系统启动时,会在屏幕上显示许多与硬件有关的信息.可以用dmesg查看它们. /var/

linux日志审计2

http://www.cnblogs.com/ahuo/archive/2012/08/24/2653905.html http://people.redhat.com/sgrubb/audit/ (1)audit sudo apt-get install auditd syslog会记录系统状态(硬件警告.软件的log), 但syslog属于应用层, log归咎与软件, 并不会记录所有动作. 于是audit来记录更多信息. (2) inotify. inotify 是文件系统事件监控机制,是细

Linux日志查看

Linux日志查看: 1.Last -a 把从何处登入系统的主机名称或IP地址,显示在最后一行.-d 指定记录文件.指定记录文件.将IP地址转换成主机名称.-f <记录文件>  指定记录文件.-n <显示列数>或-<显示列数>  设置列出名单的显示列数.-R 不显示登入系统的主机名称或IP地址.-x 显示系统关机,重新开机,以及执行等级的改变等信息 总之就是查看设备的登录记录. 2.History 查看历史指令 3.cat, tail 和 watch 系统所有的日志都在

linux日志数据化

linux日志:  /var/log/messages, secure, facility:设施,从功能或程序上对日志进行分类,并由专门的工具负责记录其日志. facility对日志进行分类,并用专门的工具进行记录 auth 认证相关日志 authpriv 认证授权相关的日志 cron 帮周期性计划记录日志 daemon 帮首部进程记录日志 kern 帮内核记录日志 lpr 帮打印记录日志 mail 帮邮件子系统记录日志 mark 防火墙标记记录日志 news 新闻组记录日志 security

Linux日志管理系统

日志:按时间序列将发生的时间予以记录. 记录内容:事件发生的时间,事件内容. Linux系统的日志系统: 1.syslogd:用于CentOS 5上,记录系统进程相关的日志 2.klogd:内核事件相关的日志 rsyslog:用于CentOS 6上,支持的新特性: 1.支持多线程 2.支持基于TCP,SSL,TLS,RELP协议将日志信息存储在远程日志服务器上,以前版本的syslog仅支持文本格式. 3.支持将数据放在MySQL,PGSQL,Oracle等多种关系型数据库中 4.强大的过滤器,可

Linux日志系统syslog

实验环境:RHEL5.8 32Bit Linux日志系统syslog详解 ·日志系统 我们的操作系统在运行的过程当种会产生很多的信息,这些信息既是我们观察系统运行过程当中正常状况的一种途径,也为我们提供了当系统发生故障的时候定位问题所在的必要信息,因此Linux系统的日志,就相当于我们的航海日志,事实上任何一个操作系统都提供了一个强大的日志系统用于记录各子系统运行过程当中所产生的各种信息. ·信息的详细程度 根据系统中产生的日志信息的详细程度的不同,我们可以将系统中产生的不同的日志信息分为不同的

Linux日志系统小记

Linux日志系统小记 概述:最近做ssh无密码认证实验时,在ssh服务配置文件中发现 authpriv,当时有种似曾相识的感觉.干脆就是复习了下syslogd这个daemon,又发现在Redhat 6 中syslogd改名为rsyslogd. 本博客是以 centos 6.6为例. rsyslog简介 rsyslog的配置文件rsyslog.conf说明 rsyslog配置文件语法格式 rsyslog启动方法 系统其它日志和应用程序日志 rsyslog简介 rsyslog 是在redhat 6