syslogd 是一种守护进程,它负责记录(写到磁盘)从其它程序发送到系统的消息。这个服务尤其常被某些守护进程所使用,这些守护进程不会有另外的方法来发出可能有问题存在的信号或向用户发送消息。

1.文件格式

/etc/syslog.conf是syslog守护程序的配置文件.syslog守护程序为记录来自运行于系统之上的程序的消息提供了一种成熟的客户机 -服务器机制。syslog 接收来自守护程序或程序的消息,根据优先级和类型将该消息分类,然后根据由管理员可配置的规则将它写入日志。结果是一个健壮而统一的管理日志的方法。

这个文件由一条条的规则组成.每条规则应该写在一行内.但是如果某行以反斜线 \ 结尾的话,他的下个物理行将被认为与此行同属于一行.空白行和以 # 开始的行将被忽略.

每条规则都是下面这种形式:

facility.priority[;facility.priority .....] action

facility和priority之间用一个英文句点分隔.他们的整体称为selector. 每条规则可以有多个selector,selector之间用分号隔开. 而selector和action之间则用空格或者tab隔开.

facility 指定 syslog 功能,主要包括以下这些:

auth 由 pam_pwdb 报告的认证活动。

authpriv 包括特权信息如用户名在内的认证活动

cron 与 cron 和 at 有关的信息。

daemon 与 inetd 守护进程有关的信息。

kern 内核信息,首先通过 klogd 传递。

lpr 与打印服务有关的信息。

mail 与电子邮件有关的信息

mark syslog 内部功能用于生成时间戳

news 来自新闻服务器的信息

syslog 由 syslog 生成的信息

user 由用户程序生成的信息

uucp 由 uucp 生成的信息

local0----local7 与自定义程序使用,例如使用 local5 做为 ssh 功能

* 通配符代表除了 mark 以外的所有功能

priority指定消息的优先级. 与每个功能对应的优先级是按一定顺序排列的,emerg 是最高级,其次是 alert,依次类推。缺省时,在 /etc/syslog.conf 记录中指定的级别为该级别和更高级别。如果希望使用确定的级别可以使用两个运算符号!(不等)和=。

user.=info

表示告知 syslog 接受所有在 info 级别上的 user 功能信息。

可用的 syslog 优先级如下:

emerg 或 panic 该系统不可用

alert 需要立即被修改的条件

crit 阻止某些工具或子系统功能实现的错误条件

err 阻止工具或某些子系统部分功能实现的错误条件

warning 预警信息

notice 具有重要性的普通条件

info 提供信息的消息

debug 不包含函数条件或问题的其他信息

none 没有重要级,通常用于排错

* 所有级别,除了none

action字段所表示的活动具有许多灵活性,特别是,可以使用名称管道的作用是可以使 syslogd 生成后处理信息。

syslog 主要支持以下action

file

指定文件的绝对路径,如: /var/log/messages . log信息将写到此文件中

terminal 或 printer

完全的串行或并行设备标志符,如/dev/console . log信息将送到此设备

@host

远程的日志服务器. log信息将送到此日志服务器

username

发送信息给指定用户

named pipe

指定使用 mkfifo 命令来创建的 FIFO 文件的绝对路径。

如果对此文件作了改动, 想要使改动生效,您需要向 syslog 守护程序通知所做的更改。向它发送 SIGHUP 是个正确的办法,您可以用 killall 命令轻松地做到这一点:

# killall -HUP syslogd

2.安全性

您应该清楚如果 syslogd 写的日志文件还不存在的话,程序将创建它们。无论您当前的 umask 如何设置,该文件将被创建为可被所有用户读取。如果您关心安全性,那么您应该用 chmod 命令将该文件设置为仅 root 用户可读写。此外,可以用适当的许可权配置 logrotate 程序(在下面描述)以创建新的日志文件。syslog 守护程序始终会保留现有日志文件的当前属性,因此一旦创建了文件,您就不需要担心它。

3.相关命令

logrotate

klogd

syslogd

dmesg

linux守护进程fifo,linux守护进程配置文件相关推荐

  1. ASP.NET Core Linux下为 dotnet 创建守护进程(必备知识)

    前言 在上篇文章中<ASP.NET Core Docker部署>中介绍了如何在 Docker 容器中部署我们的 asp.net core 应用程序,本篇主要是怎么样为我们在 Linux 或 ...

  2. linux php 守护进程,PHP程序员玩转Linux系列 使用supervisor实现守护进程

    PHP程序员玩转Linux系列文章: 首先遇到的问题是,部署nodejs的博客程序时,我把执行nodejs的命令放到后台,使用加&和nohup命令 如:nodejs index.js & ...

  3. Linux中的两种守护进程stand alone和xinetd

    Linux中的两种守护进程stand alone和xinetd --http://www.cnblogs.com/itech/archive/2010/12/27/1914846.html#top 一 ...

  4. linux守护进程写法_Linux守护进程的深入理解

    守护进程也称为精灵进程,是生存期较长的一种进程,常常在系统自举时启动,仅在系统关闭时终止.没有控制终端,仅仅在后台运行,Linux有很多守护进程执行日常事务活动.是不受终端控制的进程.想要脱离所有终端 ...

  5. Linux多进程开发(三)进程创建之守护进程的学习

       之前发过一篇守护进程的文章,但是解析的不够详细,这次,详细来解释守护进程的一些概念和特性.   概念: 后台运行.没有控制端与之相连的进程.独立于控制终端,通常周期性的执行某种任务.    Wh ...

  6. Linux系统编程---11(会话,守护进程,创建守护进程)

    会话 创建会话 创建一个会话需要注意以下6点注意事项 调用进程不能是进程组组长,该进程变成新会话首进程 该进程成为一个新进程组的组长进程 需要root权限(nbuntu不需要) 新会话丢弃原有的控制终 ...

  7. linux 创建精灵进程,linux 进程通信之 守护进程

    守护进程(Daemon) Daemon(精灵)进程,是linux中的后台服务进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的时间.一般采用以d结尾的名字.从下面的进程信息可以看出, ...

  8. Linux进程实践(5) --守护进程

    概述 守护进程是在需要在后台长期运行不受终端控制的进程,通常情况下守护进程在系统启动时自动运行,在服务器关闭的时候自动关闭:守护进程的名称通常以d结尾,比如sshd.xinetd.crond.atd等 ...

  9. Linux进程学习(孤儿进程和守护进程)

    孤儿进程和守护进程 通过前面的学习我们了解了如何通过fork()函数和vfork()函数来创建一个进程.现在 我们继续深入来学习两个特殊的进程:孤儿进程和守护进程 一.孤儿进程 1.什么是 孤儿进程 ...

最新文章

  1. python——字符串常用方法
  2. STM32开发 -- 4G模块开发详解(2)
  3. cocos2d 屏幕適配_Cocos2d-x 3.1 一步步做屏幕适配
  4. 将本地文件上传到gitlab上
  5. ubuntu上安装python3.7教程_Day1: 如何在ubuntu 18.04中升级python 3.6到3.7
  6. layui的tree实现 struts 2+layui+jsp
  7. 计算机第四次评估报告,建议置顶,天天那么多问计算机的。看看第四轮评估的结果。...
  8. C# 提取字符串中的数字,去除字符串中的重复字符逗号分隔
  9. 错误解决:src/cpp/cuda.hpp:  fatal error: cuda.h
  10. 百度换肤怎么实现的html,JavaScript 实现百度换肤功能
  11. Java个人财务管理小软件
  12. 苹果手机图片如何同步鸿蒙,教你如何在两台iPhone之间传照片
  13. 教育企业邮箱购买哪个好用,还有英文邮件系统?
  14. pandas取两个dataframe中不同的行
  15. python多个条件组合_python – 组合选择器条件
  16. 技术团队人员管理:组建团队的目的和基本规则
  17. SIMATIC S7-300 Profibus通讯——(2)EM277与S7-300通讯
  18. IE浏览器登录Tomcat报错
  19. 清华计算机408考研真题资料经验分享
  20. mysql重新初始化

热门文章

  1. css实现3D立方体旋转特效
  2. 关于HTML的面试题-html5/css3篇
  3. OS X EI Captain 下解决 There was a problem confirming the ssl certificate 问题
  4. Cmder - 在右键菜单添加Cmder Here
  5. 使用PHP创建一个REST API(Create a REST API with PHP)
  6. (转)Asp.net 中 Get和Post 的用法
  7. java 读取ppt文件_java使用poi读取ppt文件和poi读取excel、word示例
  8. android最新知识点总结,学习android之 知识点总结
  9. 信息隐藏将txt文件合并到jpg文件中_使用Kali Linux在图像内隐藏机密消息—可在任何Linux发行版使用
  10. 查看PLC IP 端口_西门子828D数控系统X130接口通讯怪异现象(X130手动设置的 IP)...