-
linux
系统
/var/log
目录下的信息详解
一、
/var
目录
/var
所有服务的登录的文件或错误信息文件(
LOG
FILES)
都在
/var/log
下,此外,一些数
据库如
MySQL
< br>则在
/var/lib
下,还有,用户未读的邮件的默认
存放地点为
/var/spool/mail
二、
:/var/log/
系统的引导日志
:/var/log/
例如
:Feb 26 10:40:48 sendmial
: sendmail startup succeeded
就是邮件服务启动成功
!
系统日志一般都存在
/var/log
下
常用的系统日志如下
:
核心启动日志
:/var/log/dmesg
系统报错日志
:/var/log/messages
邮件系统日志
:/var/log/maillog
FTP
系统日志
:/var/log/xfer
log
安全信息和系统登录与网络连接的信息
:/var/l
og/secure
登录记录
:/var/log/wtmp
记录登录者讯录,二进制文件,须用
last
< br>来读取内容
who -u
/var/log/wtmp
查看信息
News
< br>日志
:/var/log/spooler
RPM
p>
软件包
:/var/log/rpmpkgs
XFree86
日志
:/var/log/
引导日志
:/var/log/
记录开机启动讯息,
dmesg |
more
cron(
定制任务日志<
/p>
)
日志
:/var/log/cron
安全信息和系统登录与网络连接的信息
:/var/log/s
ecure
文件
/var/run/utmp
記錄著現在登入的用戶。
文件
/var/log/wtmp
記錄所有的登入和登出。
文件
/var/log/lastlog
記錄每個用戶最後的登入信息。
文件
/var/log/btmp
記錄錯誤的登入嘗試。
less /var/log/
需要身份确认的操作
三、部分命令详解
/var/log/messages
messages
日志是核心系统日志文件。它包含了系统启
动时的引导消息,以及系统运行时的
其他状态消息。
IO
p>
错误、网络错误和其他系统错误都会记录到这个文件中。其他信息,比
如某个人的身份切换为
root
,也在这里列出。如果服务正在运行,比如
DHCP
服务器,您
可以在
messages
文件中观察它的活动。
通常,
/var
/log/messages
是您在做故障诊断时首
先要查看
的文件。
/var/log/
这个日志记录的是
Xfree86
Xwindows
服务器最后一次执行的结果。
如果您在启动到图形模
式时遇到了问题,一般情况从这个文件中会找到失败的
原因。
/post/LINUXnotes/01/
成功地管理任何系统的关键之一,
是要知道系统中正在发生什么事。
Linux
中提供了异常日
志,
并且日志的细节是可配置的。
Linux
日志都以明
文形式存储,
所以用户不需要特殊的工
具就可以搜索和阅读它们
。
还可以编写脚本,
来扫描这些日志,
并基于它们的内容去自动执
行某些功能。
Linux
日志存储在
/var/log
目录
中。这里有几个由系统维护的日志文件,
但其他服务和程序也可能会把它们的日志放在这
里。大多数日志只有
root
账户才可以读,
< br>不过修改文件的访问权限
就可以让其他人可读。
日志文件分类
/var/log/
该文件记录了系
统在引导过程中发生的事件,就是
Linux
系统开机自检过程
显示的信息。
/var/log/cron
该日志
文件记录
crontab
守护进程
cr
ond
所派生的子进程的动作,前面加上用
< br>户、登录时
间和
PID
,
以及派生出的进程的动作。
CMD
的一个动作
是
cron
派生出一个调度进程的常见情
况。
REPLACE
(替换)动作记录用户对它的
cron
文件的更新,该文件列出了要周期性执行
的任务调度。
RELOAD
动作在
REPLACE
动作后不久发生,这意味着
cron
注意到一个用户的
cron
文件被更新而
cron
需要把它重新装入内存。该文件可能会查
到一些反常的情况。
/var/log/maillog
该日志文件记录了每一个发送到系统或从系统发出的电子邮件的活动。
它可以用来查看用
户
使用哪个系统发送工具或把数据发送到哪个系统。下面是该日志文件的片段:
Sep 4 17:23:52 UNIX
sendmail[1950]: g849Npp01950: from=root, size=25,
class=0, nrcpts=1,
msgid=<2.g849Npp01950@>,
relay=root@localhost
Sep 4
17:23:55 UNIX sendmail[1950]: g849Npp01950:
to=lzy@,
ctladdr=root (0/0),
delay=00:00:04, xdelay=00:00:03, mailer=esmtp,
pri=30025,
relay=. [10.152.8.2],
dsn=2.0.0, stat=Sent (Message queued)
/var/log/messages
该日志文件是许多进程
日志文件的汇总,
从该文件可以看出任何入侵企图或成功的入侵。
如
以下几行:
Sep 3
08:30:17 UNIX login[1275]: FAILED LOGIN 2 FROM
(null) FOR suying,
Authentication
failure
Sep 4 17:40:28 UNIX --
suying[2017]: LOGIN ON pts/1 BY suying FROM
Sep 4 17:40:39 UNIX
su(pam_unix)[2048]: session opened for user root
by
suying(uid=999)
该文件的格式是每一
行包含日期、
主机名、
程序名,
后面是
包含
PID
或内核标识的方括
号、
一个冒号和一个空格,
最后是消息。
p>
该文件有一个不足,
就是被记录的入侵企图和成功的入
侵事件,
被淹没在大量的正常进程的记录中。
但该文
件可以由
/etc/syslog
文件进行定制。
由
/etc/
配置文件决定系统如何写入
/var/messages
。有关如何配置
/etc/
文件决定系统日志
记录的行为,将在后面详细叙述。
/var/log/syslog
默认
RedHat
Linux
不生成该日志文件,但可
以配置
/etc/<
/p>
让系统生成该日志文
件
。它和
/etc/log/messages
日志文件不同,
它只记录警告信息
,常常是系统出问题的信
息,
所以更应该关注该文件。
要让系统生成该日志文
件,
在
/etc/
文件中加上:
*.warning
/var/log/syslog
该日志文件能记录当用户登
录时
login
记录下的错误口令、
S
endmail
的问题、
su
命令执行
失败等信息。下面是一条记录:
Sep 6
16:47:52 UNIX login(pam_unix)[2384]: check pass;
user unknown
/var/log/secure
该日志文件记录与安全相关的信息。该日志文件的部分内容如下:
Sep 4 16:05:09 UNIX xinetd[711]: START:
ftp pid=1815 from=127.0.0.1
Sep 4
16:05:09 UNIX xinetd[1815]: USERID: ftp OTHER
:root
Sep 4 16:07:24 UNIX xinetd[711]:
EXIT: ftp pid=1815 duration=135(sec)
Sep 4 16:10:05 UNIX xinetd[711]: START:
ftp pid=1846 from=127.0.0.1
Sep 4
16:10:05 UNIX xinetd[1846]: USERID: ftp OTHER
:root
Sep 4 16:16:26 UNIX xinetd[711]:
EXIT: ftp pid=1846 duration=381(sec)
Sep 4 17:40:20 UNIX xinetd[711]: START:
telnet pid=2016 from=10.152.8.2
/var/log/lastlog
该日志文件记录最近成功登录的事件和最后一次不成功的登录事件,由
login
生成。
在每
次用户
登录时被查询,该文件是二进制文件,需要
使用
lastlo
g
命令查看
,根据
UID
排序
显示登录名、端口号和上次登录时间。如果某用户从来没有登录过,就显
示为
logged in**
。该命令
只能以
root
权限执行。简单地输入
lastlog
命令后就会看到类似如
下的信息:
Username Port From Latest
root tty2 Tue Sep 3 08:32:27 +0800 2002
bin **Never logged in**
daemon **Never logged in**
adm **Never logged in**
lp
**Never logged in**
sync **Never logged
in**
shutdown **Never logged in**
halt **Never logged in**
mail **Never logged in**
news **Never logged in**
uucp **Never logged in**
operator **Never logged in**
games **Never logged in**
gopher **Never logged in**
ftpftp UNIX Tue Sep 3 14:49:04 +0800
2002
nobody **Never logged in**
nscd **Never logged in**
mailnull **Never logged in**
ident **Never logged in**
rpc **Never logged in**
rpcuser **Never logged in**
xfs **Never logged in**
gdm
**Never logged in**
postgres **Never
logged in**
apache **Never logged in**
lzy tty2 Mon Jul 15 08:50:37 +0800 2002
suying tty2 Tue Sep 3 08:31:17 +0800
2002
系统账户诸如
bin
、
p>
daemon
、
adm
、
uucp
、
mail
等决不应该登录,如果发现这些账户已经登
录,就说明系统可能已经被入侵
了。若发现记录的时间不是用户上次登录的时间,则说明
该用户的账户已经泄密了。
p>
/var/log/wtmp
该日志文件永久记录每个用户登录、
注销及系统的启动、
停机的事件。
因此随着系统正常
运
行时间的增加,
该文件的大小也会越来越大,
增加的速度取决于系统用户登录的次数。
该日
志文
件可以用来查看用户的登录记录,
last
命令就通过访问这个
文
件获得这些信息,并以
反序从后向
前显示用户的登录记录,
last
也能根据用户、
终端
tty
或时间显示相应的记录。
命令
last
有两个可选参数:
last -u
用户名
显示用户上次登录的情况。
last
-t
天数
显示指定天数之前的用户登录情况。
/var/run/utmp
该日志
文件记录有关当前登录的每个用户的信息。因此这个文件会随着用户登录和注销系
p>
统而不断变化,
它只保留当时联机的用户记录,
不会为用户保留永久的记录。
系统中需要查
询当前用户状态
的程序,如
who
、
w
、
users
、
finge
r
等就需要访问这个文件。该日志文件
并不能包括所有精确的信
息,因为某些突发错误会终止用户登录会话,而系统没有及时
更
新
utmp
记录,因此该日志文件的记录不是百分之百值得信赖的。
以
上提及的
3
个文件
(
< br>/var/log/wtmp
、
/var/run/ut
mp
、
/var/log/lastlog
< br>)是日志子系
统的关键文件,都记录了用户登录的情况
。
这些文件的所有记录都包含了时间戳。这些文
件是按二进制保存
的,故
不能用
less
、
cat
之类的命令直接查看这些文件,而是需要使
用
相关命令通过这些文件而查看。其中,
utmp
和
wtmp
文件的数据结构是一样的,而
lastlog
文件则使用另外的数据结构,关于它们的具体的数据结构
可以使用
man
命令查询。
每次有一个用户登录时,
login
程序在文件
lastlog
中查看用户的
UID<
/p>
。如果存在,则把用
户上次登录、注销时间和主机名写到标准输出
中,然后
login
程序在
last
log
中记录新的
登录时间,打开
ut
mp
文件并插入用户的
utmp
记录。
该记录一直用到用户登录退出时删除。
utmp
文件被各种
p>
命令使用,包括
who
< br>、
w
、
users
和
finger
。
下一步,
login
程序打开文件
wtmp
附加用户的
utmp
记录。当用户登录退出时,具有更新时
间戳的同一
utmp
记录附加到文件中。
wtmp
文件被程
序
last
使用。
/var/log/xferlog
该日志文件记录
FTP
会话,
可以显示
出用户向
FTP
服务器或从服务器拷贝了什么文件。
该文
件会显示用户拷贝到服务器上的用来入侵服务器的恶意程序,
以及该用户拷贝了哪些文件供
他使用。
该文件的格式为:
第一个域是日期和时间,
第
二个域是下载文件所花费的秒数、
远程系统
< br>名
称、
文件大小、
本地路径名、
传输类型
(
a
:
ASCII
,
b
:
二进制)
、
与压缩相关的标志或
tar
,
或
<
/p>
(如果没有压缩的话)、传输方向(相对于服务
器而言:
i
代表进,
o
代表出)、访
问模式(
a
:匿名,
g
:输入口令,
r
:真实用户)、用户名、服务名(通常是
ftp
)、认证
方法(
l
:
RFC931
,或
0
),认
证用户的
ID
或
。下面是该文件的一条记录:
Wed Sep 4
08:14:03 2002 1 UNIX 275531
/var/ftp/lib/libnss_ b _ o a -root@UNIX
ftp 0 * c
/var/log/kernlog
RedHat Linux
默认没有记录该日志文件。要启用该
日志文件,必须
在
/etc/
文
件中添加一行:
kern.*
/var/l
og/kernlog
。这样就启用了向
/var/log/k
ernlog
文件中记录
-
-
-
-
-
-
-
-
-
上一篇:Android Log大全
下一篇:log-rank时序检验