第十一章 系统服务和日志

第十一章 系统服务和日志

  1. Linux系统服务也称守护程序,在Linux系统启动时自动加载,在Linux退出时自动停止

  2. linux系统常见服务及作用

    服务名称功能简介建议
    acpid电源管理接口。如果是笔记本电脑用户,则建议开启,可以监听内核层的相关电源事件开启
    anacron系统的定时任务程序。是 cron 的一个子系统,如果定时任务错过了执行时间,则可以通过 anacron 继续唤醒执行关闭
    alsasoundalsa 声卡驱动。如果使用 alsa 声卡,则开启关闭
    apmd电源管理模块。如果支持 acpid,就不需要 apmd,可以关闭关闭
    atd指定系统在特定时间执行某个任务,只能执行一次。如果需要则开启,但我们一般使用 crond 来执行循环定时任务关闭
    auditd审核子系统。如果开启了此服务,那么 SELinux 的审核信息会写入 /var/log/audit/ audit.log 文件;如果不开启,那么审核信息会记录在 syslog 中开启
    autofs让服务器可以自动挂载网络中其他服务器的共享数据,一般用来自动挂载 NFS 服务。如果没有 NFS 服务,则建议关闭关闭
    avahi-daemonavahi 是 zeroconf 协议的实现,它可以在没有 DNS 服务的局域网里发现基于 zeroconf 协议的设备和服务。除非有兼容设备或使用 zeroconf 协议,否则关闭关闭
    bluetooth蓝牙设备支持。一般不会在服务器上启用蓝牙设备,关闭它关闭
    capi仅对使用 ISND 设备的用户有用关闭
    chargen-dgram使用 UDP 协议的 chargen server。其主要提供类似远程打字的功能关闭
    chargen-stream同上关闭
    cpuspeed可以用来调整 CPU 的频率。当闲置时,可以自动降低 CPU 频率来节省电量开启
    crond系统的定时任务,一般的 Linux 服务器都需要定时任务来协助系统维护。建议开启开启
    cvs一个版本控制系统关闭
    daytime-dgram使用 TCP 协议的 daytime 守护进程,该协议为客户机实现从远程服务器获取日期和时间的功能关闭
    daytime-slream同上关闭
    dovecot邮件服务中 POP3/IMAP 服务的守护进程,主要用来接收信件。如果启动了邮件服务则开启:否则关闭关闭
    echo-dgram服务器回显客户服务的进程关闭
    echo-stream同上关闭
    firstboot系统安装完成后,有一个欢迎界面,需要对系统进行初始设定,这就是这个服务的作用。既然不是第一次启动了,则建议关闭关闭
    gpm在字符终端 (ttyl~tty6) 中可以使用鼠标复制和粘贴,这就是这个服务的功能开启
    haldaemon检测和支持 USB 设备。如果是服务器则可以关闭,个人机则建议开启关闭
    hidd蓝牙鼠标、键盘等蓝牙设备检测。必须启动 bluetooth 服务关闭
    hplipHP 打印机支持,如果没有 HP 打印机则关闭关闭
    httpdapache 服务的守护进程。如果需要启动 apache,就开启开启
    ip6tablesIPv6 的防火墙。目前 IPv6 协议并没有使用,可以关闭关闭
    iptables防火墙功能。Linux 中的防火墙是内核支持功能。这是服务器的主要防护手段,必须开启开启
    irdaIrDA 提供红外线设备(笔记本电脑、PDA’s、手机、计算器等)间的通信支持。建议关闭关闭
    irqbalance支持多核处理器,让 CPU 可以自动分配系统中断(IRQ),提高系统性能。目前服务器多是多核 CPU,请开启开启
    isdn使用 ISDN 设备连接网络。目前主流的联网方式是光纤接入和 ADSL,ISDN 己经非常少见,请关闭关闭
    kudzu该服务可以在开机时进行硬件检测,并会调用相关的设置软件。建议关闭,仅在需要时开启关闭
    lvm2-monitor该服务可以让系统支持LVM逻辑卷组,如果分区采用的是LVM方式,那么应该开启。建议开启开启
    mcstransSELinux 的支持服务。建议开启开启
    mdmonitor该服务用来监测 Software RAID 或 LVM 的信息。不是必需服务,建议关闭关闭
    mdmpd该服务用来监测 Multi-Path 设备。不是必需服务,建议关闭关闭
    messagebus这是 Linux 的 IPC (Interprocess Communication,进程间通信)服务,用来在各个软件中交换信息。建议关闭关闭
    microcode _ctlIntel 系列的 CPU 可以通过这个服务支持额外的微指令集。建议关闭关闭
    mysqldMySQL 数据库服务器。如果需要就开启;否则关闭开启
    namedDNS 服务的守护进程,用来进行域名解析。如果是 DNS 服务器则开启;否则关闭关闭
    netfs该服务用于在系统启动时自动挂载网络中的共享文件空间,比如 NFS、Samba 等。 需要就开启,否则关闭关闭
    network提供网络设罝功能。通过这个服务来管理网络,建议开启开启
    nfsNFS (Network File System) 服务,Linux 与 Linux 之间的文件共享服务。需要就开启,否则关闭关闭
    nfslock在 Linux 中如果使用了 NFS 服务,那么,为了避免同一个文件被不同的用户同时编辑,所以有这个锁服务。有 NFS 时开启,否则关闭关闭
    ntpd该服务可以通过互联网自动更新系统时间.使系统时间永远准确。需要则开启,但不是必需服务关闭
    pcscd智能卡检测服务,可以关闭关闭
    portmap用在远程过程调用 (RPC) 的服务,如果没有任何 RPC 服务,则可以关闭。主要是 NFS 和 NIS 服务需要关闭
    psacct该守护进程支持几个监控进程活动的工具关闭
    rdisc客户端 ICMP 路由协议关闭
    readahead_early在系统开启的时候,先将某些进程加载入内存整理,可以加快启动速度关闭
    readahead_later同上关闭
    restorecond用于给 SELinux 监测和重新加载正确的文件上下文。如果开启 SELinux,则需要开启关闭
    rpcgssd与 NFS 有关的客户端功能。如果没有 NFS 就关闭关闭
    rpcidmapd同上关闭
    rsync远程数据备份守护进程关闭
    sendmailsendmail 邮件服务的守护进程。如果有邮件服务就开启;否则关闭关闭
    setroubleshoot该服务用于将 SELinux 相关信息记录在日志 /var/log/messages 中。建议开启开启
    smartd该服务用于自动检测硬盘状态。建议开启开启
    smb网络服务 samba 的守护进程。可以让 Linux 和 Windows 之间共享数据。如果需要则开启关闭
    squid代理服务的守护进程。如果需要则开启:否则关闭关闭
    sshdssh 加密远程登录管理的服务。服务器的远程管理必须使用此服务,不要关闭开启
    syslog日志的守护进程开启
    vsftpdvsftp 服务的守护进程。如果需要 FTP 服务则开启;否则关闭关闭
    xfs这是 X Window 的字体守护进程,为图形界面提供字体服务。如果不启动图形界面,就不用开启关闭
    xinetd超级守护进程。如果有依赖 xinetd 的服务,就必须开启开启
    ypbind为 NIS (网络信息系统)客户机激活 ypbind 服务进程关闭
    yum-updatesdyum 的在线升级服务关闭
  3. 依据守护程序的启动与管理方式来区分,基本上可以将守护程序分为可独立启动的服务(Stand Alone)和通过一个总管程序来统一管理的程序(Super Deamon)两大类

    Stand Alone:此类程序可以自行启动不必通过其他机制管理,守护程序启动并加载到内存后就一直占有内存与系统资源

    Super Deamon:这一启动方式是通过统一的守护程序来负责唤起的系统

  4. 独立服务启动的两种方法

    • 使用/etc/init.d/目录中的启动脚本来启动独立服务

      基本格式:/etc/init.d/ 独立服务名 start|stop|status|restart

      start:启动服务

      stop:停止服务

      status:暂停服务

      restart:重启服务

    • 使用service命令启动独立服务

      基本格式:service 独立服务名 start|stop|status|restart

      同/etc/init.d/

      基本格式:service --status -all

      查看所有独立服务的启动状态

  5. 系统中大部分日志文件由rsyslogd服务来统一管理,/var/log/目录是系统日志的保存位置

  6. 系统中的重要日志文件

    日志文件说明
    /var/log/croncron计划定时任务的日志,每当cron任务被执行的时候都会在这个文件里面记录。
    /var/log/cups涉及所有打印信息的日志,即cups打印服务运行的日志。
    /var/log/dmesg包含内核缓冲信息(kernel ring buffer)。在系统启动时,会在屏幕上显示许多与硬件有关的信息。可以直接查看这个文件或者使用dmesg这个命令查看。
    /var/log/btmp记录所有失败登录信息。非文本文件,可以使用last -f /var/log/btmp进行查看。
    /var/log/maillog包含来着系统运行电子邮件服务器的日志信息。
    /var/log/message包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。
    /var/log/secure包含验证和授权方面信息。例如,sshd会将所有信息记录(其中包括失败登录)在这里。
    /var/log/wtmp该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件
    /var/run/utmp该日志文件记录有关当前登录的每个用户的信息
  7. 除了默认日志,采用RPM包安装的系统服务也会默认把日志记录在/var/log/中,报告这些日志不是由rsyslogd服务来记录和管理,而是各个服务使用自己管理

  8. rsyslogd记录的日志文件格式一样,包含4列:事件产生事件、产生事件的服务器的主机名、产生事件的服务名或程序名、事件具体信息

  9. rsyslogd服务依赖配置文件/etc/rsyslog.conf来确定各个服务不同等级的日志信息会被记录的位置,也就是说日志服务的配置文件中主要定义了服务名称,日志等级和日志记录位置

    基本格式:服务名称[连接符号] 日志等级 日志记录位置

    服务名称:表示哪些服务委托rsyslogd来管理日志

    服务名称说 明
    auth(LOG AUTH)安全和认证相关消息 (不推荐使用authpriv替代)
    authpriv(LOG_AUTHPRIV)安全和认证相关消息(私有的)
    cron (LOG_CRON)系统定时任务cront和at产生的日志
    daemon (LOG_DAEMON)与各个守护进程相关的曰志
    ftp (LOG_FTP)ftp守护进程产生的曰志
    kern(LOG_KERN)内核产生的曰志(不是用户进程产生的)
    Iocal0-local7 (LOG_LOCAL0-7)为本地使用预留的服务
    lpr (LOG_LPR)打印产生的日志
    mail (LOG_MAIL)邮件收发信息
    news (LOG_NEWS)与新闻服务器相关的日志
    syslog (LOG_SYSLOG)存syslogd服务产生的曰志信息(虽然服务名称己经改为reyslogd,但是很多配罝依然沿用了 syslogd服务的,所以这里并没有修改服务名称)
    user (LOG_USER)用户等级类别的日志信息
    uucp (LOG_UUCP>uucp子系统的日志信息,uucp是早期Linux系统进行数据传递的协议,后来 也常用在新闻组服务中

    连接符号:

    “.”:代表只要比后面的等级高的(包含该等级)日志都记录。比如,“cron.info”代表cron服务产生的日志,只要日志等级大于等于info级别,就记录。

    “.=”:代表只记录所需等级的日志,其他等级的日志都不记录。比如,“*.=emerg”代表人和日志服务产生的日志,只要等级是emerg等级,就记录。

    “.!”:代表不等于,也就是除该等级的日志外,其他等级的日志都记录。

    日志等级

    等级名称说 明
    debug (LOG_DEBUG)一般的调试信息说明
    info (LOG_INFO)基本的通知信息
    nolice (LOG_NOTICE)普通信息,但是有一定的重要性
    warning(LOG_WARNING)警吿信息,但是还不会影响到服务或系统的运行
    err(LOG_ERR)错误信息, 一般达到err等级的信息已经可以影响到服务成系统的运行了
    crit (LOG_CRIT)临界状况信思,比err等级还要严®
    alert (LOG_ALERT)状态信息,比crit等级还要严重,必须立即采取行动
    emerg (LOG_EMERG)疼痛等级信息,系统已经无法使用了
    *代表所有日志等级。比如,“authpriv.*”代表amhpriv认证信息服务产生的日志,所有的日志等级都记录

    日志等级还可以被识别为“none”。如果日志等级是none,就说明忽略这个日志服务,该服务的所有日志都不再记录。

    日志记录位置:

    • 日志文件的绝对路径。这是最常见的日志保存方法,如“/var/log/secure”就是用来保存系统验证和授权信息日志的。
    • 系统设备文件。如“/dev/lp0”代表第一台打印机,如果日志保存位置是打印机设备,当有日志时就会在打印机上打印。
    • 转发给远程主机。因为可以选择使用 TCP 和 UDP 协议传输日志信息,所以有两种发送格式:如果使用“@192.168.0.210:514”,就会把日志内容使用 UDP 协议发送到192.168.0.210 的 UDP 514 端口上;如果使用“@@192.168.0.210:514”,就会把日志内容使用 TCP 协议发送到 192.168.0.210 的 TCP 514 端口上,其中 514 是日志服务默认端口。当然,只要 192.168.0.210 同意接收此日志,就可以把日志内容保存在日志服务器上。
    • 用户名。如果是“root”,就会把日志发送给 root 用户,当然 root 要在线,否则就收不到日志信息了。发送日志给用户时,可以使用“*”代表发送给所有在线用户,如“mail.**”就会把 mail 服务产生的所有级别的日志发送给所有在线用户。如果需要把日志发送给多个在线用户,则用户名之间用“,”分隔。
    • 忽略或丢弃日志。如果接收日志的对象是“~”,则代表这个日志不会被记录,而被直接丢弃。如“local3.* ~”代表忽略 local3 服务类型所有的日志都不记录。
  10. logrotate

    日志轮转,其配置文件存储在/etc/logrotate.conf

    # rotate log files weekly
    weekly                             //设置每周转储一次(daily、weekly、monthly当然可以使用这些参数每天、星期,月 )
    # keep 4 weeks worth of backlogs
    rotate 4                           //最多转储4次
    # create new (empty) log files after rotating old ones
    create                             //当转储后文件不存在时创建它
    # uncomment this if you want your log files compressed
    compress                          //通过gzip压缩方式转储(nocompress可以不压缩)
    # RPM packages drop log rotation information into this directory
    include /etc/logrotate.d           //其他日志文件的转储方式配置文件,包含在该目录下
    # no packages own wtmp -- we'll rotate them here
    /var/log/wtmp {                    //设置/var/log/wtmp日志文件的转储参数
        monthly                        //每月转储
        create 0664 root utmp          //转储后文件不存在时创建它,文件所有者为root,所属组为utmp,对应的权限为0664
        rotate 1                       //最多转储一次
    
  11. logwatch日志分析第一次使用需要安装,复制模板,以后明天以邮件发给管理员

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值