Linux系统日志解析7---备忘录


Linux系统日志解析7---备忘录
 
这是系列文章第七篇,原来是单独写的,这次加入linux专栏里面
 
7.1--Forword
 
   Linux 系统里面日志无疑是相当重要的,对于我们分析系统故障,解决相关问题是大有裨益的。这篇文章是自己积累一些知识,以做备忘只用。
7.2--Start 
    Linux系统中日志大致有系统日志以及应用日志,前者大多记录在/var/log/下面,而后者则视情况分布在不同目录下,当然也可能写入/var/log下面。
这里我们着重描述一下系统方面的日志:
7.2.1,简单分下类
位置: 
 
[html] 
/usr/adm - 早期版本的UNIX  
                /var/adm - 新一点的版本使用这个位置  
                /var/log - 一些版本的Solaris,linux,BSD,Free BSD使用这个位置  
                /etc - 多数UNIX版本把utmp放在这里,有些也把wtmp放在这里,syslog.conf在这里  
 引用一下:
连接时间日志--由多个程序执行,把纪录写入到/var/log/wtmp和/var/run/utmp,login等程序更新wtmp和utmp文件,使系统管理员能够跟踪谁在何时登录到系统。
进程统计--由系统内核执行。当一个进程终止时,为每个进程往进程统计文件(pacct或acct)中写一个纪录。进程统计的目的是为系统中的基本服务提供命令使用统计。
错误日志--由syslogd(8)执行。各种系统守护进程、用户程序和内核通过syslog(3)向文件/var/log/messages报告值得注意的事件。另外有许多UNIX程序创建日志。像HTTP和FTP这样提供网络服务的服务器也保持详细的日志。
 
常见的日志文件用途说明:
 
[html] 
acct 或 pacct -- 记录每个用户使用的命令记录  
                access_log -- 主要当服务器运行NCSA HTTPD时, 记录什么站点连接过你的服务器  
                aculog -- 保存着你拨出去的MODEMS记录  
                lastlog -- 记录了用户最近的LOGIN记录和每个用户的最初目的地,有时是最后成功LOGIN的记录  
                loginlog -- 记录一些不正常的LOGIN记录  
                messages -- 记录输出到系统控制台的记录,另外的信息由syslog来生成  
                security -- 记录一些使用UUCP系统企图进入限制范围的事例  
                sulog -- 记录使用su命令的记录  
                utmp -- 记录当前登录到系统中的所有用户, 这个文件伴随着用户进入和离开系统而不断变化.  
                utmpx -- UTMP的扩展  
                wtmp -- 记录用户登录和退出事件  
                syslog -- 最重要的日志文件,使用syslogd守护程序来获得日志信息:  
                /dev/log -- 一个UNIX域套接字,接受在本地机器上运行的进程所产生的消息  
                /dev/klog -- 一个从UNIX内核接受消息的设备  
                **514端口 -- 一个INTERNET套接字,接受其他机器通过UDP产生的syslog消息。  
                uucp -- 记录的UUCP的信息,可以被本地UUCP活动更新, 也可有远程站点发起的动作修改,信息包括发出和接受的呼叫,发出的请求,发送者, 发送时间和发送主机  
                lpd-errs -- 处理打印机故障信息的日志  
                ftp日志 -- 执行带-l选项的ftpd能够获得记录功能  
                httpd日志 -- HTTPD服务器在日志中记录每一个WEB访问记录  
                history日志 -- 这个文件保存了用户最近输入命令的记录  
                vold.log -- 记录使用外接媒介时遇到的错误记录  
        这里面wtmp和utmp文件都是二进制文件,也就是你不能通过cat或者vi查看的,可以通过系统命令来查看,常用的命令:who,user,w,ac,last
 
7.2.2,简单介绍一下这些命令:
who:执行这项指令可得知目前有那些用户登入系统,单独执行who指令会列出登入帐号,使用的终端机,登入时间。
         
 
w:显示的信息比who更多,可以看下命令说明
[html] 
              用户 登录的用户。  
tty 用户使用的 tty 名称。  
FROM 本地  
LOGIN@ 用户登录的日期和时间。  
IDLE 自一个程序上次试图从终端读取开始所持续的分钟数。  
JCPU 该终端上的所有进程及其子进程使用的系统部件时间。  
PCPU 当前活动进程所使用的系统部件时间。  
WHAT 当前进程的名称和参数。  
                  
 
user:不解释了,很简单,显示登录用户。
 
last:显示近期用户或终端的登录情况
                 
 
本日志不断补充中.........
 
7.3---Appendix
 
                附:常用查看系统信息命令                 
[html] 
系统:   
# uname -a   # 查看内核/操作系统/CPU信息   
# cat /etc/issue   
# cat /etc/redhat-release # 查看操作系统版本   
# cat /proc/cpuinfo  # 查看CPU信息   
# hostname   # 查看计算机名   
# lspci -tv   # 列出所有PCI设备   
# lsusb -tv   # 列出所有USB设备   
# lsmod    # 列出加载的内核模块   
# env    # 查看环境变量   
资源:   
# free -m   # 查看内存使用量和交换区使用量   
# df -h    # 查看各分区使用情况   
# du -sh <目录名>  # 查看指定目录的大小   
# grep MemTotal /proc/meminfo # 查看内存总量   
# grep MemFree /proc/meminfo # 查看空闲内存量   
# uptime   # 查看系统运行时间、用户数、负载   
# cat /proc/loadavg  # 查看系统负载   
磁盘和分区:   
# mount | column -t  # 查看挂接的分区状态   
# fdisk -l   # 查看所有分区   
# swapon -s   # 查看所有交换分区   
# hdparm -i /dev/hda  # 查看磁盘参数(仅适用于IDE设备)   
# dmesg | grep IDE  # 查看启动时IDE设备检测状况   
网络:   
# ifconfig   # 查看所有网络接口的属性   
# iptables -L   # 查看防火墙设置   
# route -n   # 查看路由表   
# netstat -lntp   # 查看所有监听端口   
# netstat -antp   # 查看所有已经建立的连接   
# netstat -s   # 查看网络统计信息   
进程:   
# ps -ef   # 查看所有进程   
# top    # 实时显示进程状态(另一篇文章里面有详细的介绍)   
用户:   
# w    # 查看活动用户   
# id <用户名>   # 查看指定用户信息   
# last    # 查看用户登录日志   
# cut -d: -f1 /etc/passwd # 查看系统所有用户   
# cut -d: -f1 /etc/group # 查看系统所有组   
# crontab -l   # 查看当前用户的计划任务   
服务:   
# chkconfig –list  # 列出所有系统服务   
# chkconfig –list | grep on # 列出所有启动的系统服务   
程序:   
# rpm -qa   # 查看所有安装的软件包   
 

相关内容

    暂无相关文章