加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 使用systemd启动的进程正在记录到/ var / log / syslog

发布时间:2020-12-14 02:14:13 所属栏目:Linux 来源:网络整理
导读:我在Beaglebone Black上运行了几个 python脚本,两者都是在initd上由systemd启动的.昨天我注意到我的eMMC闪存完全已满,原因是我有1.8 GB的日志文件.似乎这些脚本的标准输出(它们为调试目的生成大量数据)被记录到/ var / log / syslog和/var/log/daemon.log中.
我在Beaglebone Black上运行了几个 python脚本,两者都是在initd上由systemd启动的.昨天我注意到我的eMMC闪存完全已满,原因是我有1.8 GB的日志文件.似乎这些脚本的标准输出(它们为调试目的生成大量数据)被记录到/ var / log / syslog和/var/log/daemon.log中.此外,/ var / log / messages有大量关于“速率限制”的条目.

现在,我假设我可以通过在这些脚本上禁用标准输出来解决这个问题.但是,我宁愿保留该功能,并以某种方式告诉systemd不要记录该数据.但是,我一直无法找到相关信息.

以下是我当前.service文件的示例:

[Unit]
Description=Description of my process
After=network.target
[Service]
Type=simple
ExecStart=/opt/myprocess
[Install]
WantedBy=multi-user.target

我应该注意到我最初将syslog.target作为“After”目标,只是因为我跟随的例子有它.但我已经删除它,它似乎没有解决问题.

任何有关此问题的帮助或见解将不胜感激.

编辑:我可能在这里找到答案:

http://www.kibinlabs.com/systemd-logging-tricks/

添加StandardOutput = null并查看是否修复了它.看起来很有希

编辑2:确实如此.

解决方法

SystemD不会自行记录/ ??var / log中的文件.

如果日志消息显示在/ var / log中,则表明您的系统正在运行“syslog”守护程序,该守护程序通过读取systemd日志或(b)直接使用syslog的应用程序接收日志消息.

简单地禁用syslog守护程序会阻止文件写入/ var / log.消息仍将写入系统日志,但您可以使用相当灵活的控件来限制这些文件使用的空间.有关更多信息,请参见the journald docs.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读