系统过程分析

为了达到一个目的,而进行的命令组合与分析

新装centos6.5-minimal所必须要做的初始动作,修改一些默认的东西

vi /boot/grub/grub.conf在内核行后加入vga=ask或788就启用了framebuffer
cp /etc/DIR_COLORS ~/.dir_colors
控制台设置白底黑字
setterm -foreground black -background white -store

关闭ipv6支持
centos 6.5min-64下是/etc/modprobe.d/dist.conf中修改,加入以下两行就关闭了内核ipv6支持,但不能关闭其它程序对ipv6的支持,重启机器生效
alias net-pf-10 off
alias ipv6 off
一。先列出系统中进程的pid,用ps或pstree都可以,哪个方便用哪个
[root@250-shiyan ~]# pstree -p
init(1)─┬─auditd(934)───{auditd}(935)
        ├─crond(1130)
        ├─master(1120)─┬─pickup(9284)
        │              └─qmgr(1129)
        ├─mfsmount(5061)─┬─{mfsmount}(5062)
        │                ├─{mfsmount}(5063)
        │                ├─{mfsmount}(5064)
        │                ├─{mfsmount}(5065)
        │                ├─{mfsmount}(5066)
        │                ├─{mfsmount}(5067)
        │                ├─{mfsmount}(5068)
        │                ├─{mfsmount}(5069)
        │                ├─{mfsmount}(5071)
        │                ├─{mfsmount}(5072)
        │                └─{mfsmount}(5089)
        ├─mingetty(1143)
        ├─mingetty(1145)
        ├─mingetty(1147)
        ├─mingetty(1149)
        ├─mingetty(1151)
        ├─mingetty(1153)
        ├─rpc.idmapd(14858)
        ├─rpc.mountd(14820)
        ├─rpc.statd(991)
        ├─rpcbind(973)
        ├─rsyslogd(2453)─┬─{rsyslogd}(2454)
        │                ├─{rsyslogd}(2456)
        │                └─{rsyslogd}(2457)
        ├─sshd(12432)─┬─sshd(3634)───bash(3636)
        │             └─sshd(7655)───bash(7657)───pstree(9361)
        └─udevd(379)─┬─udevd(1159)
                     └─udevd(1160)
[root@250-shiyan ~]# ps -C rsyslogd
  PID TTY          TIME CMD
 2453 ?        00:00:00 rsyslogd

二。再查看相关线程信息
[root@250-shiyan ~]# pstack 2453
Thread 4 (Thread 0x7f59c23ac700 (LWP 2454)):
#0  0x00007f59c3a005bc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f59c4078184 in wtiWorker ()
#2  0x00007f59c4077c1a in ?? ()
#3  0x00007f59c39fc9d1 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f59c3127b6d in clone () from /lib64/libc.so.6
Thread 3 (Thread 0x7f59c19ab700 (LWP 2456)):
#0  0x00007f59c31205e3 in select () from /lib64/libc.so.6
#1  0x00007f59c25c4d51 in ?? () from /lib64/rsyslog/imuxsock.so
#2  0x00007f59c4086b6a in ?? ()
#3  0x00007f59c39fc9d1 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f59c3127b6d in clone () from /lib64/libc.so.6
Thread 2 (Thread 0x7f59c0faa700 (LWP 2457)):
#0  0x00007f59c3a0375d in read () from /lib64/libpthread.so.0
#1  0x00007f59c23afd04 in klogLogKMsg () from /lib64/rsyslog/imklog.so
#2  0x00007f59c23af16c in ?? () from /lib64/rsyslog/imklog.so
#3  0x00007f59c4086b6a in ?? ()
#4  0x00007f59c39fc9d1 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f59c3127b6d in clone () from /lib64/libc.so.6
Thread 1 (Thread 0x7f59c403c700 (LWP 2453)):
#0  0x00007f59c31205e3 in select () from /lib64/libc.so.6
#1  0x00007f59c40592f5 in ?? ()
#2  0x00007f59c405a9fa in realMain ()
#3  0x00007f59c305dd1d in __libc_start_main () from /lib64/libc.so.6
#4  0x00007f59c4056629 in _start ()
对待每一个守护进程都是这个过程。
一。先查看系统中都有哪些进程在运行
[root@84-monitor logs]# pstree
init─┬─auditd───{auditd}
     ├─crond───4*[crond─┬─sendmail───postdrop]
     │                  └─sh───sh───sh───sh───mail───mail]
     ├─httpd───8*[httpd]
     ├─java───23*[{java}]
     ├─master─┬─cleanup
     │        ├─local
     │        ├─pickup
     │        └─qmgr
     ├─6*[mingetty]
     ├─mysqld_safe───mysqld───9*[{mysqld}]
     ├─rpc.statd
     ├─rpcbind
     ├─rsyslogd───3*[{rsyslogd}]
     ├─sshd─┬─sshd───bash───pstree
     │      └─3*[sshd───bash───bash───ssh]
     └─udevd───2*[udevd]

二。其次列出以rsys开头的进程打开的所有文件
[root@84-monitor 972]# lsof -c rsys
COMMAND  PID USER   FD   TYPE             DEVICE SIZE/OFF       NODE NAME
rsyslogd 972 root  cwd    DIR              253,0     4096          2 /
rsyslogd 972 root  rtd    DIR              253,0     4096          2 /
rsyslogd 972 root  txt    REG              253,0   396064     521732 /sbin/rsyslogd
rsyslogd 972 root  mem    REG              253,0    27232     521711 /lib64/rsyslog/imklog.so
rsyslogd 972 root  mem    REG              253,0   340568     521717 /lib64/rsyslog/imuxsock.so
rsyslogd 972 root  mem    REG              253,0   110960     521867 /lib64/libresolv-2.12.so
rsyslogd 972 root  mem    REG              253,0    27424     521245 /lib64/libnss_dns-2.12.so
rsyslogd 972 root  mem    REG              253,0    65928     521865 /lib64/libnss_files-2.12.so
rsyslogd 972 root  mem    REG              253,0    26984     521718 /lib64/rsyslog/lmnet.so
rsyslogd 972 root  mem    REG              253,0  1921176     521231 /lib64/libc-2.12.so
rsyslogd 972 root  mem    REG              253,0    90880     521844 /lib64/libgcc_s-4.4.7-20120601.so.1
rsyslogd 972 root  mem    REG              253,0    43880     521868 /lib64/librt-2.12.so
rsyslogd 972 root  mem    REG              253,0    19536     521861 /lib64/libdl-2.12.so
rsyslogd 972 root  mem    REG              253,0   142640     521255 /lib64/libpthread-2.12.so
rsyslogd 972 root  mem    REG              253,0    88600     521285 /lib64/libz.so.1.2.3
rsyslogd 972 root  mem    REG              253,0   154624     521489 /lib64/ld-2.12.so
rsyslogd 972 root    0u  unix 0xffff88001fbd06c0      0t0      10252 /dev/log
rsyslogd 972 root    1w   REG              253,0      292     786284 /var/log/messages
rsyslogd 972 root    2w   REG              253,0  1191255     785232 /var/log/cron
rsyslogd 972 root    3r   REG                0,3        0 4026532040 /proc/kmsg
rsyslogd 972 root    4w   REG              253,0   564219     785245 /var/log/maillog
rsyslogd 972 root    5w   REG              253,0     1004     786285 /var/log/secure

三。随后进入到972的fd目录,列出文件列表,打开了5个文件
[root@84-monitor 972]# cd /proc/972/fd
[root@84-monitor fd]# ll
total 0
lrwx------. 1 root root 64 Mar 18 09:39 0 -> socket:[10252]
l-wx------. 1 root root 64 Mar 18 09:39 1 -> /var/log/messages
l-wx------. 1 root root 64 Mar 18 09:39 2 -> /var/log/cron
lr-x------. 1 root root 64 Mar 18 09:39 3 -> /proc/kmsg
l-wx------. 1 root root 64 Mar 18 09:39 4 -> /var/log/maillog
l-wx------. 1 root root 64 Mar 18 09:39 5 -> /var/log/secure

四。查漏补缺
FD列
txt  program text (code and data);
rtd  root directory;
cwd  current working directory;
cwd,rtd这两个经常是一样的,因为如果没有具体的目录的话,默认全放到根下。
mem  memory-mapped file;
u    for read and write access;
TYPE列
unix     for a UNIX domain socket;
REG    for a regular file;
DIR    for a directory;

一。
[root@84-monitor fd]# lsof -c rpcbind
COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF    NODE NAME
rpcbind 32580  rpc  cwd    DIR              253,0     4096       2 /
rpcbind 32580  rpc  rtd    DIR              253,0     4096       2 /
rpcbind 32580  rpc  txt    REG              253,0    54408  521226 /sbin/rpcbind
rpcbind 32580  rpc  mem    REG              253,0    65928  521865 /lib64/libnss_files-2.12.so
rpcbind 32580  rpc  mem    REG              253,0  1921176  521231 /lib64/libc-2.12.so
rpcbind 32580  rpc  mem    REG              253,0   142640  521255 /lib64/libpthread-2.12.so
rpcbind 32580  rpc  mem    REG              253,0    19536  521861 /lib64/libdl-2.12.so
rpcbind 32580  rpc  mem    REG              253,0    36584  521220 /lib64/libgssglue.so.1.0.0
rpcbind 32580  rpc  mem    REG              253,0   113432  521863 /lib64/libnsl-2.12.so
rpcbind 32580  rpc  mem    REG              253,0   162016  521225 /lib64/libtirpc.so.1.0.10
rpcbind 32580  rpc  mem    REG              253,0    40792  521329 /lib64/libwrap.so.0.7.6
rpcbind 32580  rpc  mem    REG              253,0   154624  521489 /lib64/ld-2.12.so
rpcbind 32580  rpc    0u   CHR                1,3      0t0    3782 /dev/null
rpcbind 32580  rpc    1u   CHR                1,3      0t0    3782 /dev/null
rpcbind 32580  rpc    2u   CHR                1,3      0t0    3782 /dev/null
rpcbind 32580  rpc    3r   REG              253,0        0  786245 /var/run/rpcbind.lock
rpcbind 32580  rpc    4u  sock                0,6      0t0 3617563 can't identify protocol
rpcbind 32580  rpc    5u  unix 0xffff88001dfc3080      0t0 3617538 /var/run/rpcbind.sock
rpcbind 32580  rpc    6u  IPv4            3617540      0t0     UDP *:sunrpc
rpcbind 32580  rpc    7u  IPv4            3617542      0t0     UDP *:955
rpcbind 32580  rpc    8u  IPv4            3617543      0t0     TCP *:sunrpc (LISTEN)
rpcbind 32580  rpc    9u  IPv6            3617545      0t0     UDP *:sunrpc
rpcbind 32580  rpc   10u  IPv6            3617547      0t0     UDP *:955
rpcbind 32580  rpc   11u  IPv6            3617548      0t0     TCP *:sunrpc (LISTEN)

二。查漏补缺
TYPE列
sock    for a socket of unknown domain;
IPv4    for an IPv4 socket;
IPv6    for an open IPv6 network file - even if its address is IPv4, mapped in an IPv6 address;
程序占用内存分析
一。
[root@250-shiyan ~]# top PID USER PR NI VIRT RES SHR S
%CPU %MEM TIME+ COMMAND 5061 root 1 -19 649m 17m 908 S 0.0 3.6 1:17.03 mfsmount 二。 [root@250-shiyan ~]# lsof -c mfsmount COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mfsmount 5061 root cwd DIR 253,0 4096 781826 /root mfsmount 5061 root rtd DIR 253,0 4096 2 / mfsmount 5061 root txt REG 253,0 236648 403887 /usr/bin/mfsmount mfsmount 5061 root mem REG 253,0 65928 260640 /lib64/libnss_files-2.12.so mfsmount 5061 root mem REG 253,0 1921216 260624 /lib64/libc-2.12.so mfsmount 5061 root mem REG 253,0 142640 260648 /lib64/libpthread-2.12.so mfsmount 5061 root mem REG 253,0 596264 260632 /lib64/libm-2.12.so mfsmount 5061 root mem REG 253,0 43832 260652 /lib64/librt-2.12.so mfsmount 5061 root mem REG 253,0 258504 402028 /usr/lib64/libpcap.so.1.4.0 mfsmount 5061 root mem REG 253,0 19536 260630 /lib64/libdl-2.12.so mfsmount 5061 root mem REG 253,0 221728 261115 /lib64/libfuse.so.2.8.3 mfsmount 5061 root mem REG 253,0 154520 260617 /lib64/ld-2.12.so mfsmount 5061 root 0u CHR 1,3 0t0 3782 /dev/null mfsmount 5061 root 1u CHR 1,3 0t0 3782 /dev/null mfsmount 5061 root 2u CHR 1,3 0t0 3782 /dev/null mfsmount 5061 root 3r FIFO 0,8 0t0 1586590 pipe mfsmount 5061 root 4u IPv4 1892119 0t0 TCP 192.168.2.250:44567->mfsmaster:9421 (ESTABLISHED) mfsmount 5061 root 5u unix 0xffff88001fb876c0 0t0 1616111 socket mfsmount 5061 root 6u IPv4 1616113 0t0 TCP localhost:44911 (LISTEN) mfsmount 5061 root 8u CHR 10,229 0t0 6954 /dev/fuse [root@250-shiyan ~]# bc bc 1.06.95 Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc. This is free software with ABSOLUTELY NO WARRANTY. For details type `warranty'. 65928+1921216+142640+596264+43832+258504+19536+221728+154520 3424168 [root@250-shiyan ~]# ll /usr/bin/mfsmount -rwxr-xr-x 1 root root 236648 Feb 10 19:27 /usr/bin/mfsmount [root@250-shiyan ~]# size /usr/bin/mfsmount text data bss dec hex filename 229679 4352 16923472 17157503 105cd7f /usr/bin/mfsmount 229679+4352+16923472=17157503 [root@250-shiyan ~]# pmap -x 5061 5061: mfsmount /mnt/mfs1 Address Kbytes RSS Dirty Mode Mapping ---------------- ------ ------ ------ total kB 664836 17980 17072 三。分析 top中显示的某一个进程的RES列大小,与size某个文件显示的dec列是一样的,lsof中的SIZE列只是size命令中所显示的text列 即: top-RES=size-dec lsof-SIZE=size-text
一。先查看哪个用户从哪来,时长等信息。w与who都可以
[root@109-com1 ~]# w
 09:55:16 up 106 days, 21:48,  2 users,  load average: 1.11, 1.14, 1.02
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/2    192.168.2.84     09:43    0.00s  0.08s  0.00s w
root     pts/3    1.85.49.230      09:44    7:17   0.08s  0.04s vi FLTPsThread.cpp
[root@109-com1 ~]# who -a
           system boot  2014-12-02 11:59
           run-level 3  2014-12-02 11:59
LOGIN      tty2         2014-12-02 12:04              1499 id=2
LOGIN      tty3         2014-12-02 12:04              1501 id=3
LOGIN      tty1         2014-12-02 12:04              1497 id=1
LOGIN      tty4         2014-12-02 12:04              1505 id=4
LOGIN      tty5         2014-12-02 12:04              1507 id=5
LOGIN      tty6         2014-12-02 12:04              1509 id=6
           pts/0        2015-02-09 13:51             27045 id=ts/0  term=0 exit=0
           pts/1        2015-03-10 22:16             11075 id=ts/1  term=0 exit=0
root     + pts/2        2015-03-19 09:43   .         12395 (192.168.2.84)
root     + pts/3        2015-03-19 09:44 00:07       12448 (1.85.49.230)
           pts/4        2015-03-11 10:29             24135 id=ts/4  term=0 exit=0
二。再根据终端,pid,目录查看他在干什么,运用了哪些资源
[root@109-com1 ~]# lsof /dev/pts/3
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
bash    12448 root    0u   CHR  136,3      0t0    6 /dev/pts/3
bash    12448 root    1u   CHR  136,3      0t0    6 /dev/pts/3
bash    12448 root    2u   CHR  136,3      0t0    6 /dev/pts/3
bash    12448 root  255u   CHR  136,3      0t0    6 /dev/pts/3
vi      12736 root    0u   CHR  136,3      0t0    6 /dev/pts/3
vi      12736 root    1u   CHR  136,3      0t0    6 /dev/pts/3
vi      12736 root    2u   CHR  136,3      0t0    6 /dev/pts/3
[root@109-com1 ~]# lsof -p 12448
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF   NODE NAME
bash    12448 root  cwd    DIR  253,0     4096 141592 /usr/local/ps/src
bash    12448 root  rtd    DIR  253,0     4096      2 /
bash    12448 root  txt    REG  253,0   903336 651864 /bin/bash
bash    12448 root  mem    REG  253,0 99158576 138120 /usr/lib/locale/locale-archive
bash    12448 root  mem    REG  253,0    65928 651834 /lib64/libnss_files-2.12.so
bash    12448 root  mem    REG  253,0  1921216 651818 /lib64/libc-2.12.so
bash    12448 root  mem    REG  253,0    19536 651824 /lib64/libdl-2.12.so
bash    12448 root  mem    REG  253,0   135896 651863 /lib64/libtinfo.so.5.7
bash    12448 root  mem    REG  253,0   154520 655746 /lib64/ld-2.12.so
bash    12448 root  mem    REG  253,0    26060 264514 /usr/lib64/gconv/gconv-modules.cache
bash    12448 root    0u   CHR  136,3      0t0      6 /dev/pts/3
bash    12448 root    1u   CHR  136,3      0t0      6 /dev/pts/3
bash    12448 root    2u   CHR  136,3      0t0      6 /dev/pts/3
bash    12448 root  255u   CHR  136,3      0t0      6 /dev/pts/3
[root@109-com1 ~]# lsof +D /usr/local/ps
COMMAND     PID USER   FD   TYPE DEVICE  SIZE/OFF   NODE NAME
FLTServic 11167 root  cwd    DIR  253,0      4096 141580 /usr/local/ps/log
FLTServic 11167 root  txt    REG  253,0   2264102 141634 /usr/local/ps/bin/FLTService
FLTServic 11167 root    3u   REG  253,0 626612286 136213 /usr/local/ps/log/debug20150319.log
bash      12448 root  cwd    DIR  253,0      4096 141592 /usr/local/ps/src
vi        12736 root  cwd    DIR  253,0      4096 141592 /usr/local/ps/src
vi        12736 root    4u   REG  253,0     16384 141668 /usr/local/ps/src/.FLTPsThread.cpp.swp
目的:分析出uid与euid
一。linux系统中每个进程都有2个ID,分别为用户ID(uid)和有效用户ID(euid),UID一般表示进程的创建者(属于哪个用户创建),而EUID表示进程对于文件和资源的访问权限(具备等同于哪个用户的权限)。C语言中,可以通过函数getuid()和geteuid()来获得进程的两个ID值。
当一个用户登陆系统时,系统会将UID和EUID都赋值为/etc/passwd文件中的UID,一般情况下2个ID是相同的,但是某些情况下会出现2个ID不同的情况。gid和egid同理。

新建用户
[root@250-shiyan ~]# useradd test2
[root@250-shiyan ~]# passwd test2
用新用户去登录
[test2@250-shiyan ~]$ id
uid=503(test2) gid=503(test2) groups=503(test2)
下面一段C代码将解释区别:"printid.c"
[test2@250-shiyan ~]$ vi printid.c
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>

int main(void)
{
    printf(" UID	= %d
", getuid());
    printf(" EUID	= %d
", geteuid());
    printf(" GID	= %d
", getgid());
    printf(" EGID	= %d
", getegid());

    return EXIT_SUCCESS;
}
[test2@250-shiyan ~]$ gcc -o printid printid.c
[test2@250-shiyan ~]$ id
uid=503(test2) gid=503(test2) groups=503(test2)
[test2@250-shiyan ~]$ ./printid
 UID    = 503
 EUID   = 503
 GID    = 503
 EGID   = 503
看看/etc/passwd里uid和gid:
[test2@250-shiyan ~]$ cat /etc/passwd|grep "<test2>"|awk -F ':' '{print "uid:"$3,"tgid:"$4}'
uid:503 tgid:503
以上是相同的例子。


下面演示uid和euid不同的例子。
首先,修改一下文件属性,setuid或setgid
[test2@250-shiyan ~]$ chmod u+s printid #这样一来,文件在执行阶段具有文件所有者的权限。
还可以再补充一个:
[test2@250-shiyan ~]$ chmod g+s printid #这样一来,文件在执行阶段具有文件所属组的权限。
其次,变成其他用户,再来试验一下,比如变成root;
[test2@250-shiyan ~]$ su
Password:
[root@250-shiyan test2]# ll
total 12
-rwsrwxr-x 1 test2 test2 7055 Mar 24 10:31 printid
-rw-rw-r-- 1 test2 test2  284 Mar 24 10:30 printid.c
[root@250-shiyan test2]# ./printid
 UID    = 0
 EUID   = 503
 GID    = 0
 EGID   = 0
这时uid虽是0,但EUID却是503,即文件所有者的权限
Linux系统就是使用setuid来解决这个矛盾的问题:如果一个程序被设置了setuid位,那么它无论被哪个用户启用,都会具备程序所有者的权限。而passwd程序的所有者是root用户,passwd的权限如下所示,那么任何用户执行该程序,程序的EUID就会变成root用户的EUID,而不是执行该程序的UID。

可以使用chmod u+s 或chmod g+s来设置二进制的可执行文件的euid。setuid只能对二进制的可执行设置。
[root@84-monitor httpd]# vi /etc/httpd/conf/httpd.conf
# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# ServerLimit: maximum value for MaxClients for the lifetime of the server
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule prefork.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>
[root@84-monitor httpd]# pstree -p|grep httpd
        |-httpd(13367)-+-httpd(13370)
        |              |-httpd(13371)
        |              |-httpd(13372)
        |              |-httpd(13373)
        |              |-httpd(13374)
        |              |-httpd(13375)
        |              |-httpd(13376)
        |              |-httpd(13377)

在客户端浏览器F5刷新http://125.76.228.16:2002/about.php这个页面,就产生下面13个资源请求
总共13个对象,总共有8个进程在循环等待请求到来
[root@84-monitor httpd]# tail -f access_log.1428364800
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13372 "GET /about.php HTTP/1.1" 200 10569 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13375 "GET /cacti/include/main.css HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13377 "GET /cacti/include/layout.js HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13376 "GET /cacti/images/left_border.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13371 "GET /cacti/images/tab_console_down.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13373 "GET /cacti/images/tab_graphs.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13374 "GET /cacti/images/transparent_line.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13370 "GET /cacti/images/cacti_logo.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"

1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13372 "GET /images/cacti_about_logo.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13377 "GET /cacti/images/cacti_backdrop.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13375 "GET /cacti/images/shadow_gray.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13376 "GET /cacti/images/shadow.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
1.85.49.230 - - [07/Apr/2015:16:00:08 +0800] 13371 "GET /cacti/images/menu_line.gif HTTP/1.1" 304 - "http://125.76.228.16:2002/about.php" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0"
原文地址:https://www.cnblogs.com/createyuan/p/4346606.html