linux服务之日志

[[email protected] ~]# rpm -qa|grep log
sysklogd-1.4.1-46.el5
logwatch-7.3-9.el5_6
logrotate-3.7.4-12
rsyslog-3.22.1-7.el5

[[email protected] ~]# rpm  -qa|grep init
initscripts-8.45.42-1.el5.centos

[[email protected] ~]# rpm -qa|grep psacct
psacct-6.3.2-44.el5

/var/run/utmp 当前的,/var/log/wtmp 历史的,/var/log/btmp 失败的

[[email protected] ~]# last
root     pts/0        36.44.101.18     Sat Jul 19 19:19   still logged in
root     pts/0        36.44.101.18     Sat Jul 19 18:59 - 19:18  (00:19)
root     pts/0        172.16.1.18      Fri Jul 18 22:18 - 01:47  (03:28)
wtmp begins Mon Jul 14 19:02:38 2014
[[email protected] ~]# last -f /var/log/btmp  查看失败纪录的
root     ssh:notty    36.44.101.18     Sat Jul 19 19:18   still logged in
root     ssh:notty    36.44.101.18     Sat Jul 19 19:18 - 19:18  (00:00)
btmp begins Sat Jul 19 19:18:54 2014

wtmp和utmp文件都是二进制文件,他们不能被诸如tail命令剪贴或合并(使用cat命令)。用户需要使用who、w、users、last和ac来使用这两个文件包含的信息。
last命令往回搜索wtmp来显示自从文件第一次创建以来登录过的用户
lastlog命令查看各个用户最后一次登录时间
users用单独的一行打印出当前登录的用户,每个显示的用户名对应一个登录会话
w命令查询utmp文件并显示当前系统中每个用户和它所运行的进程信息
who命令查询utmp文件并报告当前登录的每个用户
ac命令根据当前的/var/log/wtmp文件中的登录进入和退出来报告用户连结的时间(小时)

ac -d按天计算登录的时间,ac -p按用户计算登录时间,ac -d lzb查找此用户每天的登录时间
 
包含下列结构的一个二进制记录写入这两个文件中:
  struct utmp {
  char ut_line[8]; /* tty line: "ttyh0", "ttyd0", "ttyp0", ... */
  char ut_name[8]; /* login name */
  long ut_time; /* seconds since Epoch */
  };
登录时,login程序填写这样一个结构,然后将其写入到utmp文件中,同时也将其添写到wtmp文件中。

销时,init进程将utmp文件中相应的记录擦除(每个字节都填以0
),并将一个新记录添写到wtmp文件中。读wtmp文件中的该注销记录,其ut_name字段清除为0。在系统再启动时,以及更改系统时间和日期的前
后,都在wtmp文件中添写特殊的记录项。who( 1 )程序读utmp文件,并以可读格式打印其内容。后来的UNIX版本提供last( 1
)命令,它读wtmp文件并打印所选择的记录。wtmp文件,它跟踪各个登录和注销事件。
wted
wtmp/utmp日志编辑程序。你可以使用这个工具编辑所有wtmp或者utmp类型的文件。
z2
utmp/wtmp/lastlog日志清理工具。可以删除utmp/wtmp/lastlog日志文件中有关某个用户名的所有条目。不过,如果用于Linux系统需要手工修改其源代码,设置日志文件的位置。

连接时间日志
进程统计日志
错误日志

[[email protected] ~]# rpm -qa|grep psacct
psacct-6.3.2-63.el6_3.3.x86_64
[[email protected] ~]# service psacct stop
Shutting down process accounting:                          [  OK  ]
[[email protected] account]# service psacct start    服务启动
Starting process accounting:                               [  OK  ]
[[email protected] account]# /etc/init.d/psacct start  脚本启动
Starting process accounting:                               [  OK  ]

[[email protected] ~]# lastcomm pts/0          通过终端名
[[email protected] ~]# lastcomm ls               通过命令名
[[email protected] ~]# lastcomm oracle         通过用户名查询
[[email protected] ~]# lastcomm
crond             SF    root     __         0.03 secs Sat Jul 19 20:01
run-parts               root     __         0.03 secs Sat Jul 19 20:01
S 命令由超级用户执行
F 命令由fork产生,但没有exec
D 命令终止并创建一个core文件
X 命令被sigterm信号终止
[[email protected] ~]# sa
      90   32918.77re       0.02cp    15590k
       2     103.78re       0.00cp    17840k   sshd
       2       0.00re       0.00cp    40344k   rpm
      15   32719.14re       0.00cp    15922k   ***other*
       4       0.00re       0.00cp    27552k   ps
       3      95.59re       0.00cp    14420k   sftp-server
       3       0.00re       0.00cp    27104k   psacct
       6       0.00re       0.00cp     4355k   unix_chkpwd
       4       0.00re       0.00cp    29324k   ls
       7       0.00re       0.00cp    13053k   bash*

0.36re "实际时间" 单位为分钟。
0.12cp 系统和用户时间总数(CPU时间, 单位为分钟)。
31156K 核心使用所占的平均CPU时间, 一个单元的大小为1KB。
up2date 命令名。
显示每一个用户:
[[email protected] ~]# sa -u
root       0.00 cpu      917k mem accton
root       0.00 cpu    15806k mem touch
root       0.00 cpu    16060k mem psacct
oracle     0.07 cpu    35696k mem oracle
oracle     0.00 cpu   327296k mem oracle           *
[[email protected] ~]# sa -a
     245     107.25re       0.12cp    74539k
      44      57.27re       0.05cp    35697k   oracle
       4       0.04re       0.04cp    28412k   rpmq
       1       0.12re       0.03cp    78080k   yum-updatesd-he
       2      24.14re       0.00cp    16330k   sshd
       2      23.90re       0.00cp    16576k   bash
[[email protected] ~]# sa -b
     249     110.34re       0.12cp    74947k
       4       0.04re       0.04cp    28412k   rpmq
      13       1.24re       0.03cp    14194k   ***other
      46      60.35re       0.06cp    35697k   oracle
       2      24.14re       0.00cp    16330k   sshd
       2      23.90re       0.00cp    16576k   bash
       2       0.00re       0.00cp    16464k   ps

[[email protected] ~]# sa -m
                                      252     111.34re       0.13cp    75499k
root                                  156      49.77re       0.07cp    12392k
oracle                                 94      61.36re       0.06cp   181496k
sshd                                    2       0.22re       0.00cp    16000k
你可以通过查看re, k, cp/cpu(见上面输出解释)时间来找出可疑的活动, 或某个用户/命令占用了所有的CPU时间。如果CPU/Memeory使用数(命令)在不断增加, 可以说明命令存在问题。

linux服务之日志

时间: 2024-10-23 21:41:19

linux服务之日志的相关文章

使用linux服务logrotate归档tomcat日志文件

使用notepad++编辑本地文件 tomcat: /usr/tomcat/logs/catalina.out { copytruncate daily dateext nocompress missingok }   参考下图部署此文件到linux服务器: 使用linux服务logrotate归档tomcat日志文件,布布扣,bubuko.com

Linux服务启动报错日志分析

先使用 systemctl status 服务名称,查看服务运行状态,注意红色字体的错误信息,比如权限不够(关闭selinux试试),端口被占用(netstat -tunlp | grep 端口号): 若仍然无法解决问题,查看Linux系统的日志文件/var/log/messages,再配合grep查看相应信息 从上图可以发现,http服务的配置文件/etc/httpd/conf/httpd.conf的第118行有错误. 总结一下:服务报错一脸懵逼?cat一下/var/log/messages吧

linux下syslog-ng日志集中管理服务部署记录

syslog是Linux系统默认的日志守护进程,默认的syslog配置文件是/etc/syslog.conf文件.syslog守护进程是可配置的,它允许人们为每一种类型的系统信息精确地指定一个存放地点.比较 syslog ,syslog-ng 具有众多高级的功能:更好的网络支持,更加方便的配置,集中式的网络日志存储,并且更具有弹性.比如,使用syslogd时,所有的iptables日志与其他内核日志一起全部存储到了kern.log文件里.Syslog-ng则可以让你有选择性的将iptables部

linux 学习 14 日志管理

第十四讲 日志管理 14.1 日志管理-简介 1.日志服务 ?在CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论该服务的使用,还是日志文件的格式其实都是和syslogd服务相兼容的,所以学习起来基本和syslogd服务一致. ?rsyslogd的新特点: ?基于TCP网络协议传输日志信息; ?更安全的网络传输方式: ?有日志消息的及时分析框架: ?后台数据库: ?配置文件中可以写简单的逻辑判断: ?与sysl

Linux系统的日志服务器syslogd

系统日志是记录系统中硬件.软件和系统问题的信息,同时还可以监控系统中发生的事件.用户可以通过它来检查错误发生的的原因,或者寻找受到攻击时攻击者留下的痕迹. Windows的事件查看器就是一个日志系统.Linux的日志系统则是通过安装sysklogd这个软件包形成了两个服务: /sbin/klogd 针对硬件(针对内核所产生的,很多和硬件相关) /sbin/syslogd 针对软件(系统的日志服务器) 查看硬件方面的日志: [[email protected] ~]# dmesg |grep -i

[Linux]服务管理:rpm包, 源码包

--------------------------------------------------------------------------------------------------- |--- 1. 独立的服务  |---- rpm包默认安装的服务 |--- 2. 基于xinetd服务 linux服务分类: | |---- 源码包安装的服务 查询已安装的服务: rpm包安装的服务:chkconfig --list( 查看服务自启动状态,可以看到所有rpm包安装的服务 ) ( 7个

辛星浅析linux中的日志

linux中对于连接时间的日志,一般由/var/log/wtmp和/var/run/utmp这两个文件记录,不过这两个文件无法直接使用cat查看,并且该文件由系统自动更新,我们可以通过w.who.finger.id.last.lastlog.ac命令进行查看. linux中对于进程的监控日志,首先说进程监控日志在监控用户的操作指令是很有效的,当服务器最近发现经常发生无故宕机或者无故被人删除文件等现象时,可以通过使用进程统计日志来查看.我们使用accton  /var/account/pacct来

Linux服务的简单配置(homework)

Linux服务也学习一个礼拜啦,趁这闲暇之际,归纳一下这周所学的服务. 应用环境:Redhat 5.9 一.DHCP DHCP是动态主机配置协议,可自动分配入网参数,实现各客户机IP的自动获取 1.为服务器配置一个固定的Ip地址如192.168.4.2 2.确认已安装dhcp软件包 3.建立dhcpd.conf配置文件. [[email protected] ~]# vim/etc/dhcpd.conf subnet 192.168.4.0 netmask 255.255.255.0 { opt

linux服务之udevd

http://www.ibm.com/developerworks/cn/linux/l-cn-udev/[[email protected] ~]# uname -r2.6.32-431.el6.x86_64udev-147-2.51.el6.x86_64此版本的udev变动较大 什么是 udev?udev 是 Linux2.6 内核里的一个功能,它替代了原来的 devfs,成为当前 Linux 默认的设备管理工具.udev 以守护进程的形式运行,通过侦听内核发出来的 uevent 来管理 /