Linux的log日志功能

摘要:
Linux提供了一个循环这些日志的命令,这样您当前的日志信息就不会淹没在旧的无关信息中。执行后,logrotate将获取日志文件的当前版本,然后在文件名末尾附加一个“.1”。

# cd /etc/init.d

# ./syslog restart

Shutting down kernel logger: OK ]
Shutting down system logger: OK ]
Starting system logger: OK ]
Starting kernel logger: OK ]

不过最好查询清楚是为什么不能写入linux os log的 ?

--------------------------------------------------------------

日志功能

日志(log)功能用于将路由器产生的各种信息以日志形式记录到具备syslog功能的主机上(如unix主机)。

该功能的缺省形式是将信息显示在连接console口的终端上。

一、syslog功能简介

1、unix主机用syslogd记录系统信息,信息来源包括:

1)系统内核产生系统信息

2)fifo管道记录内部进程通信的信息

3)进程将信息通过socket连接写入到log设备中

4)远端主机通过某种连接将信息输入

其中,第3项与本路由器syslog功能有关。

2、unix将系统信息以某种形式分类或分级,该形式可理解为:

facility.level

facility代表产生信息的来源,常用的有以下几项:

auth 用户身份认证信息

authpriv 用户权限认证信息

cron cron信息

daemon daemon进程产生的信息

kern 内核信息

local0~7 系统留用

lpr 打印队列产生的信息

mail 邮件系统信息

news news系统信息

user 用户进程产生信息

uucp 与uucp有关的信息

syslog syslogd自身信息

level 是信息的级别,代表着子系统对该级别或该级别以上的信息所要采取的措施,常用的有8项

emerg 系统失效,级别最高

alert 需立即修补

crit 情况严重,如硬件损坏

err 错误

warning 警告

notice 需加以注意,但无关紧要

info 普通信息

debug debug信息

二、config状态下log的配置

logging命令有如下命令选项

buffered - 将日志记录于内部缓冲区

clear - 清除内部日志

console [ * ] - 将日志记录于终端

facility - 设置syslog的用途

source-interface- 设置syslog报文的源地址

trap - 设置日志记录的门限

a.b.c.d - 将日志记录于支持syslog的主机

其中,logging console是缺省配置。

1、 logging buffered

将日志记录于内部buffer中,利用show logging命令可以显示buffer中的log信息。

2、 logging clear

logging buffered的相关命令,用于清除buffer中的log信息。

3、 logging console

缺省配置为将日志信息显示于监控终端。

相关命令见terminal monitor enable/disable

4、 logging facility

logging facility ftp 在linux主机中将日志信息的facility标记为ftp

logging facility nnn(0-255) 从0开始,依次对应于前面各项,其余留用

其它命令选项参见syslog功能简介

5、logging source-interface

设定source-interface 为log信息报文的源发地址

6、 logging trap

门限设定参见syslog功能简介

一般说来,log信息下列几大类

err 标记软件错误信息或硬件故障信息

notice 标记端口up/down的变化

info 标记系统重启信息、包过滤报文记录

debug 标记debug信息

warning 标记用户验证失效和被包过滤禁止的报文记录

nnn(0-7) 依次对应于前面各项,级别最高为0,最低为7

在设定一个级别之后,日志将记录该级别和该级别之上的log信息。

7、 logging a.b.c.d

将ip为a.b.c.d的主机作为syslog主机

三、相关命令

1、 terminal monitor enable/disable

缺省状态下为logging console时,日志信息(包括debug信息)只能在监控窗口显示,虚拟终端不能显示,要使在虚拟终端显示log信息,只需在config状态下键入:

terminal monitor enable

反之,设terminal monitor disable

2、防火墙列表中,每个列表都可以记log信息

:如:per add ip 2.2.2.2 255.0.0.0 1.1.1.1 255.0.0.0 log

3、 show logging

显示记录于buffer中的log信息

==========================================================

系统运行日志:

ALinux 日志存储在 /var/log 目录中。这里有几个由系统维护的日志文件,但其他服务和程序也可能会把它们的日志放在这里。大多数日志只有 root 才可以读,不过只需要修改文件的访问权限就可以让其他人可读。

以下是常用的系统日志文件名称及其描述:

lastlog 记录用户最后一次成功登录时间

loginlog 不良的登陆尝试记录

messages 记录输出到系统主控台以及由syslog系统服务程序产生的消息

utmp 记录当前登录的每个用户

utmpx 扩展的utmp

wtmp 记录每一次用户登录和注销的历史信息 wtmpx 扩展的wtmp

vold.log 记录使用外部介质出现的错误

xferkig 记录Ftp的存取情况 sulog 记录su命令的使用情况

acct 记录每个用户使用过的命令

aculog 拨出自动呼叫记录

B/var/log/messages
messages 日志是核心系统日志文件。它包含了系统启动时的引导消息,以及系统运行时的其他状态消息。IO 错误、网络错误和其他系统错误都会记录到这个文件中。其他信息,比如某个人的身份切换为 root,也在这里列出。如果服务正在运行,比如 DHCP 服务器,您可以在 messages 文件中观察它的活动。通常,/var/log/messages 是您在做故障诊断时首先要查看的文件。

C/var/log/XFree86.0.log这个日志记录的是 Xfree86 Xwindows 服务器最后一次执行的结果。如果您在启动到图形模式时遇到了问题,一般情况从这个文件中会找到失败的原因。

D/var/log 目录下有一些文件以一个数字结尾,这些是已轮循的归档文件。日志文件会变得特别大,特别笨重。Linux 提供了一个命令来轮循这些日志,以使您的当前日志信息不会淹没在旧的无关信息之中。 logrotate 通常是定时自动运行的,但是也可以手工运行。当执行后,logrotate 将取得当前版本的日志文件,然后在这个文件名最后附加一个“.1”。其他更早轮循的文件为“.2”、“.3”,依次类推。文件名后的数字越大,日志就越老。

可以通过编辑 /etc/logrotate.conf 文件来配置 logrotate 的自动行为。通过 man logrotate 来学习 logrotate 的全部细节。

其中:

# rotate log files weekly

weekly

这里代表每个日志文件是每个星期循环一次,一个日志文件保存一个星期的内容。

# keep 4 weeks worth of backlogs

rotate 4

这里代表日志循环的次数是4次,即可以保存4个日志文件。

E、定制日志

可以通过编辑 /et/syslog.conf 和 /etc/sysconfig/syslog 来配置它们的行为,可以定制系统日志的存放路径和日志产生级别。

last

单独执行last指令,它会读取位于/var/log目录下,名称为wtmp的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。

history

history命令能够保存最近所执行的命令。如果是root命令所保存的命令内容在/root/.bash_history文件中,如果是普通用户,操作所命令保存在这个用户的所属目录下,即一般的/home/username/.bash_history。这个history的保存值可以设置,编辑/etc/profile文件,其中的HISTSIZE=1000的值就是history保存的值。

免责声明:文章转载自《Linux的log日志功能》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇安装系统时出现 Windows无法打开所需的文件 C:Sourcesinstall.wim 的解决办法PLSQL使用技巧下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Linux-学习patch命令打补丁,diff命令制作补丁(3)

patch:通过补丁文件,来对原文件打补丁 diff: 比较两个文件,然后生成一个补丁文件 1.patch用法 patch -p[剥离层级] <[补丁文件] 2.patch命令示例 cd u-boot-1.1.6/             //进入原文件目录       patch -p1 <../u-boot-1.1.6_jz2...

Linux基础知识之man手册的使用

在Linux中man的使用频率应该是很高的,灵活运用它可以让自己快速的掌握一个不熟悉命令的使用方法。下面来介绍下man 环境CentOS6.8 man - format and display the on-line manual pages 在线使用手册格式及展示通俗点来说它就是命令的使用手册。它共分九个章节 1、用户命令2、系统调用3、C库调用4、设备...

Linux操作系统的curl命令的基本使用

Linux操作系统的curl命令的基本使用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.curl工具概述   curl是基于URL语法在命令行方式下工作的文件传输工具,它支持FTP,FTPS,HTTP,HTTPS,GOPHER,TELNET,DICT,FILE及LDAP等协议;curl支持HTTPS认证,并且支持HTTP的POS...

Linux操作系统学习_操作系统是如何工作的

Linux操作系统学习_操作系统是如何工作的实验五:Linux操作系统是如何工作的? 学号:SA1****369 操作系统工作的基础:存储程序计算机、堆栈(函数调用堆栈)机制和中断机制       首先要整明白的一个问题是什么是存储程序计算机?其实存储程序计算机正是冯.诺依曼最初提出的计算机体系模型,现在我们一提到冯.诺依曼体系结构首先会想到的应该是包含输...

Linux中hadoop配置hdfs

.前提是hadoop已经安装配置成功 2.主要是修改core-site.xml和hdfs-site.xml这两个配置文件 3.我使用的是notepad++连接Linux进行修改的 4.进入notepad++中查看目录找到这两个配置文件 5.首先要在Linux中建立存放name和data的文件 进入Linux输入命令如下 创建三个文件夹 6.编辑core...

Makefile 使用总结

1. Makefile 简介 Makefile 是和 make 命令一起配合使用的. 很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂. Makefile的组织流程的能力如此之强, 不仅可以用来编译项目, 还可以用来组织我们平时的一些日常操作. 这个需要大家发挥自己的...