linux系统日志文件介绍

原文出处:鸟哥笔记:linux系统日志文件介绍

简单的说日志文件就是记录系统活动信息的几个文件,例如:何时、何地(来源ip)、何人(什么服务名称)、做了什么操作。换句话说就是:记录系统在什么时候由哪个进程做了什么样的行为时,发生了什么事件等。

日志文件可以帮助我们了解很多系统重要的事件,包括登入者的部分信息,因此日志文件的权限通常设置为仅有root能够读取而已。常见的日志文件有下面几个:

分类

  • /var/log/cron

这个文件记录了系统例行性工作调度的相关信息,如你的crontab调度有没有实际被进行?进行过程中有没有发生错误?/etc/crontab是否编写正确?在这个日志文件内都可以查询。

  • /var/log/dmesg

该文件记录系统在开机时内核检测过程中所产生的各项信息。由于centos默认将开机时内核的硬件检测过程取消显示,因此额外将数据记录在此文件中。

  • /var/log/lastlog

该文件记录了系统上所有帐号最近一次登入系统时的相关信息。lastlog命令就是利用这个文件所记录的信息来显示结果。

  • /var/log/maillog或/var/log/mail/*

该文件或目录记录邮件的来往信息,其实主要记录SMTP和POP3(IMAP)协议提供者所产生的信息。

  • /var/log/messages

该文件几乎记录了系统发生的所有错误信息(或者是重要的信息),所以这个文件相当重要;如果系统发生莫名的错误时,这个文件是必查的日志文件之一。

之前有遇到过一个问题就是jetty 进程突然消失,然后就查看此系统日志,发现由于内存不足导致进程被kill掉,后面对内存做了调整

Out of memory: Kill process 11401 (java) score 552 or sacrifice child

具体如下

cat /var/log/messages | grep kill
Dec 26 04:59:08 GZSB-CJB-SHH1-14-MAEGIS-0 mfsmount[23068]: master: tcp recv error: ETIMEDOUT (Operation timed out) (1)
Dec 26 04:59:09 GZSB-CJB-SHH1-14-MAEGIS-0 mfsmount[23068]: master: register error (read header: ETIMEDOUT (Operation timed out))
Dec 26 04:59:16 GZSB-CJB-SHH1-14-MAEGIS-0 mfsmount[23068]: registered to master
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: java invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=0, oom_score_adj=0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: java cpuset=/ mems_allowed=0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Pid: 21798, comm: java Not tainted 2.6.32-358.14.1.el6.mz150203.x86_64 #1
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Call Trace:
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff810ce041>] ? cpuset_print_task_mems_allowed+0x91/0xb0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff81120340>] ? dump_header+0x90/0x1b0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff8122930c>] ? security_real_capable_noaudit+0x3c/0x70
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff8112004e>] ? find_lock_task_mm+0x2e/0x70
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff81120952>] ? oom_kill_process+0x82/0x160
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff81120c50>] ? out_of_memory+0x220/0x3c0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff811301af>] ? __alloc_pages_nodemask+0x8bf/0x8f0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff81165c4a>] ? alloc_pages_current+0xaa/0x110
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff8111d287>] ? __page_cache_alloc+0x87/0x90
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff8111cc6e>] ? find_get_page+0x1e/0xa0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff8111e18e>] ? filemap_fault+0x1ce/0x670
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff811481b4>] ? __do_fault+0x54/0x530
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff81148787>] ? handle_pte_fault+0xf7/0xb90
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff810acd1e>] ? futex_wake+0x10e/0x120
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff8114945a>] ? handle_mm_fault+0x23a/0x310
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff810474e9>] ? __do_page_fault+0x139/0x480
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff81013956>] ? native_read_tsc+0x6/0x20
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff8103c7d8>] ? pvclock_clocksource_read+0x58/0xd0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff8152e7be>] ? do_page_fault+0x3e/0xb0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [<ffffffff8152bb75>] ? page_fault+0x25/0x30
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Mem-Info:
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Node 0 DMA per-cpu:
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: CPU    0: hi:    0, btch:   1 usd:   0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: CPU    1: hi:    0, btch:   1 usd:   0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Node 0 DMA32 per-cpu:
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: CPU    0: hi:  186, btch:  31 usd:  38
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: CPU    1: hi:  186, btch:  31 usd:  91
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Node 0 Normal per-cpu:
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: CPU    0: hi:  186, btch:  31 usd:  47
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: CPU    1: hi:  186, btch:  31 usd: 173
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: active_anon:680634 inactive_anon:260526 isolated_anon:0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: active_file:57 inactive_file:561 isolated_file:0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: unevictable:0 dirty:21 writeback:8 unstable:0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: free:6954 slab_reclaimable:5081 slab_unreclaimable:8394
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: mapped:113 shmem:44 pagetables:4794 bounce:0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Node 0 DMA free:15744kB min:28kB low:32kB high:40kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15356kB mlocked:0kB dirty:0kB writeback:0kB mapped:0kB shmem:0kB slab_reclaimable:0kB slab_unreclaimable:0kB kernel_stack:0kB pagetables:0kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: lowmem_reserve[]: 0 3000 4010 4010
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Node 0 DMA32 free:10096kB min:6052kB low:7564kB high:9076kB active_anon:2244104kB inactive_anon:563676kB active_file:0kB inactive_file:1056kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:3072072kB mlocked:0kB dirty:16kB writeback:0kB mapped:0kB shmem:4kB slab_reclaimable:8608kB slab_unreclaimable:9016kB kernel_stack:10928kB pagetables:11044kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:94 all_unreclaimable? yes
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: lowmem_reserve[]: 0 0 1010 1010
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Node 0 Normal free:1976kB min:2036kB low:2544kB high:3052kB active_anon:478432kB inactive_anon:478428kB active_file:276kB inactive_file:1188kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:1034240kB mlocked:0kB dirty:68kB writeback:40kB mapped:500kB shmem:172kB slab_reclaimable:11716kB slab_unreclaimable:24560kB kernel_stack:3768kB pagetables:8132kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:928 all_unreclaimable? yes
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: lowmem_reserve[]: 0 0 0 0
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Node 0 DMA: 2*4kB 1*8kB 1*16kB 1*32kB 1*64kB 0*128kB 1*256kB 0*512kB 1*1024kB 1*2048kB 3*4096kB = 15744kB
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Node 0 DMA32: 690*4kB 61*8kB 4*16kB 12*32kB 6*64kB 1*128kB 1*256kB 1*512kB 1*1024kB 0*2048kB 1*4096kB = 10096kB
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Node 0 Normal: 44*4kB 9*8kB 4*16kB 0*32kB 4*64kB 3*128kB 2*256kB 1*512kB 0*1024kB 0*2048kB 0*4096kB = 1976kB
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: 34398 total pagecache pages
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: 33640 pages in swap cache
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Swap cache stats: add 5089724, delete 5056084, find 1978066/2365289
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Free swap  = 0kB
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Total swap = 2097144kB
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: 1048575 pages RAM
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: 67405 pages reserved
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: 490 pages shared
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: 968020 pages non-shared
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ pid ]   uid  tgid total_vm      rss cpu oom_adj oom_score_adj name
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [  383]     0   383     2743        0   1     -17         -1000 udevd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [  927]     0   927    23300       42   1     -17         -1000 auditd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [  956]     0   956   102457      329   0       0             0 rsyslogd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [  976]    32   976     4744       15   1       0             0 rpcbind
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1004]     0  1004     5773        1   1       0             0 rpc.idmapd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1025]    81  1025     5874        4   0       0             0 dbus-daemon
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1049]     0  1049     1020        0   1       0             0 acpid
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1058]    68  1058     6821       95   0       0             0 hald
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1059]     0  1059     4526        1   0       0             0 hald-runner
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1087]     0  1087     5055        1   0       0             0 hald-addon-inpu
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1100]    68  1100     4451        1   1       0             0 hald-addon-acpi
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1120]     0  1120    98035       37   0       0             0 automount
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1142]     0  1142    16115        0   0     -17         -1000 sshd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1150]     0  1150    29303       24   0       0             0 crond
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1163]   501  1163     4935        4   0       0             0 zabbix_agentd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1169]   501  1169     4935       61   0       0             0 zabbix_agentd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1170]   501  1170     4935        3   1       0             0 zabbix_agentd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1171]   501  1171     4935        3   0       0             0 zabbix_agentd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1172]   501  1172     4935        3   0       0             0 zabbix_agentd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1178]     0  1178     5364        4   0       0             0 atd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1301]     0  1301     1016        1   0       0             0 mingetty
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1303]     0  1303     1016        1   0       0             0 mingetty
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1304]     0  1304     1019        1   0       0             0 agetty
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1306]     0  1306     1016        1   0       0             0 mingetty
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1308]     0  1308     1016        1   0       0             0 mingetty
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1310]     0  1310     1016        1   0       0             0 mingetty
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1317]     0  1317     1016        1   1       0             0 mingetty
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1318]     0  1318     2742        0   1     -17         -1000 udevd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [ 1319]     0  1319     2742        0   1     -17         -1000 udevd
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [23030]     0 23030   400107     2040   1       0             0 python
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [23068]     0 23068   315785      119   1       0             0 mfsmount
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [  919]     0   919   745957   260982   1       0             0 java
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [19132]     0 19132   274307       47   1       0             0 redis-server
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [20939]     0 20939    17503        5   0       0             0 nginx
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [21739]     0 21739   576514       91   0       0             0 java
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [21760]     0 21760   635298    24352   0       0             0 java
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [22179]   505 22179    22388       22   0       0             0 nginx
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [22180]   505 22180    22388       22   1       0             0 nginx
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [22181]   505 22181    22388        5   0       0             0 nginx
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [22182]   505 22182    22388       22   0       0             0 nginx
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [11369]     0 11369   586819       63   0       0             0 java
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: [11401]     0 11401  1805039   619478   0       0             0 java
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Out of memory: Kill process 11401 (java) score 552 or sacrifice child
Dec 26 05:11:23 GZSB-CJB-SHH1-14-MAEGIS-0.131 kernel: Killed process 11401, UID 0, (java) total-vm:7220156kB, anon-rss:2477764kB, file-rss:156kB

  • /var/log/secure

基本上,只要牵扯到需要输入帐号密码的软件,当登入时(不管登入正确与否)都会被记录到这个文件中。包括系统的login程序、图形界面登入所使用的gdm程序、su、sudo等程序,还有网络联机的ssh、telnet等程序,登入信息都会被记载在这里。

  • /var/log/wtmp,/var/log/faillog

这两个文件可以记录正确登入系统者的账户信息(wtmp)与错误登入时所使用的账户信息(faillog)。这个文件对追踪一般帐号者的使用行为很有帮助。

  • /var/log/httpd/,/var/log/news/,/var/log/samba/*

不同的网络服务会使用它自己的日志文件案来记载它们自己产生的各项信息。上述的目录内则是个别服务所制定的日志文件。

常见的日志文件就是这几个,但是不同的linux distributions中,通常日志文件的文件名不会相同(除了/var/log/messages之外)。所以说,还需要查看linux主机上的日志文件设置数据才能知道自己主机上的日志文件主要的文件名。

日志文件的产生主要有两种方式,一种是由软件开发商自行定义写入的日志文件与相关服务,例如www软件apache就是这样处理的;另一种则是由linux distribution提供的日志文件管理服务来同一管理,只要将信息丢给这个服务后,它会自动分门别类地将各种信息放置到相关的日志文件中去。在centos中提供syslogd这个服务来同一管理日志文件。

除了这个syslogd之外,系统内核也需要额外的登入服务来记录内核产生的各项信息,这个专门记录内核信息的日志文件服务就是klogd。所以,日志文件所需服务主要就是syslogd和klogd这两个。

除了以上两个外还有一个叫logrotate(日志文件轮换)的程序,由于系统产生的信息每天都有,如果任凭日志文件持续记录的话,日志文件容量就会持续增大,这可能导致大文件读写效率不佳的问题,所以,需要对日志文件进行备份与更新。而logrotate就是用来解决这个问题的。

logrotate基本上就是将旧的日志文件更改名称,然后新建一个空白的日志文件,如此一来,新的日志文件将重新开始记录,然后只要将就的日志文件保留一段时间就可达到将日志文件“轮转“的目的。此外,如果旧的记录(大概要保存几个月吧)保存一段时间后没有问题,就可让系统自动删除,避免占掉过多的硬盘空间。

总结

针对日志文件所需的功能,需要的服务与程序有:

  • syslogd:主要记录系统与网络等服务的信息;
  • klogd:主要记录内核产生的各项信息;
  • logrotate:主要进行日志文件的轮替功能。
  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值