Questions tagged «systemd-journald»

对于与systemd-journald有关的问题,这是一个收集和存储日志记录数据的系统服务。使用此标记可解决有关systemd-journald本身,使用systemd-journald的问题,或有关在由systemd-journald执行此任务的系统中收集和存储日志数据所引起的问题的问题。

10
如何清除journalctl
我在Google中找不到清除系统日志的任何安全方法。有谁知道安全可靠的方法吗? 假设我正在尝试某些东西,但日志中却堆满了各种错误消息。此外,我正在使用Conky在桌面上显示日记。我真的不想看到这些错误,因为它们让我想起了我正在修理此产品的糟糕一天,我想在经历过这种恐怖之后感觉像个新鲜人。我想每个人都会同意,这是清除日志:P的正当理由。

2
如何在CentOS 7下显示以前启动时的日志消息?
journalctl在CentOS 7系统下执行只会打印上次引导后生成的消息。 命令 # journalctl --boot=-1 版画 Failed to look up boot -1: Cannot assign requested address 并以状态1退出。 将它与当前的Fedora系统进行比较,我注意到CentOS 7没有/var/log/journal(journalctl也没有提供--list-boots)。 因此,我的问题是如何显示上次启动日期之前写入的日志消息。 或者,也许必须在CentOS 7上启用此功能? (journalctl手册页列出了“ systemd 208”作为版本号。)


5
使用系统化的Arch Linux接收Syslog消息
我感觉自己已经忽略了显而易见的东西,但是我不知道如何获得Arch Linux服务器,该服务器使用systemd来接收和记录syslog来自远程系统的消息。 我有一个Cisco 678 DSL调制解调器和DD-WRT WAP,并且都可以配置为将syslog格式的消息发送到其他计算机。我希望那台机器成为我的Arch Linux服务器。 我到处搜寻,发现的只是“ systemd代替syslog”,或者我不再需要运行syslog或者与我的问题无关的东西。 更新 我在Arch论坛上提出了问题,但没有得到相关的答案。我安装了syslog-ng只是为了侦听UDP端口514。syslog-ng从我的Cisco 678和我所拥有的DD-WRT WAP写入消息。不幸的是,这些消息不是最终出现在systemd的日记中,而是最终出现在平面文件中。因此,没有确切的解决方案,而是一种解决方法。我宁愿在日志中存储系统日志消息,而不是在平面文件中。

1
如何从另一个系统检查系统化的system.journal
我在设备上无法使用Arch Linux。该设备没有任何屏幕,也没有响应网络。因此,我拿了它的SD卡,将其插入ubuntu桌面,在那里看到一个新的system.journal,然后...如何查看里面有什么? 从Arch Linux文档中,我知道我可以做到: strings /mnt/arch/var/log/journal/.../system.journal | grep -i message 但这真的很基础。问题是: 有没有比使用字符串更方便的方法来从另一个系统检查system.journal ?例如,我可以指定要为journalctl读取的文件吗?


2
journalctl --verify报告损坏
我只是注意到此verify选项,journalctl并决定尝试一下,它显示出损坏,可能是什么原因导致的?那我该怎么办呢?我应该进一步调查吗? journalctl --verify PASS: /var/log/journal/19184893a1d645c7a43729e79b10a876/user-1000.journal Invalid object contents at 3733856░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 0% File corruption detected at /var/log/journal/19184893a1d645c7a43729e79b10a876/system.journal:3733856 (of 91734016, 4%). FAIL: /var/log/journal/19184893a1d645c7a43729e79b10a876/system.journal (Bad message) Invalid object contents at 21575496░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 45% File corruption detected at /var/log/journal/19184893a1d645c7a43729e79b10a876/system@60e058db556e4de4b256d0b1ff176aa4-0000000000000001-0004e0b436d20aa1.journal:21575496 (of 44052480, 48%). FAIL: /var/log/journal/19184893a1d645c7a43729e79b10a876/system@60e058db556e4de4b256d0b1ff176aa4-0000000000000001-0004e0b436d20aa1.journal (Bad message) PASS: /var/log/journal/19184893a1d645c7a43729e79b10a876/user-1000@60e058db556e4de4b256d0b1ff176aa4-0000000000000a91-0004e0b4ff9a949a.journal PASS: /var/log/journal/19184893a1d645c7a43729e79b10a876/user-1001.journal

2
如何仅清除特定单位的journalctl条目?
我花了几天时间编写一个python脚本,并为其创建一个systemd单元文件。在测试过程中,该脚本记录了许多要记录的错误。现在,我想清除日志中的那些错误。 有多种清除整个日志的方法,如下所述:如何清除journalctl, 包括使用journalctl --vacuum-time=2d,使用journalctl --vacuum-size=500M和临时将SystemMaxUse=/etc/systemd/journald.conf中的值设置为非常低的值。 所有这些似乎清除了整个日志,影响了所有单元。我只需要清除单个单元的条目。这可能吗?

2
`logger'在Arch Linux中将消息记录到哪里?
该logger命令通过syslog记录一个条目,该条目通常将该行放入诸如之类的文件中/var/log/messages。 如果我在Arch Linux中正确理解了文档,则所有日志记录都是通过systemd完成的,但是我找不到logger使用的条目journalctl。 logger在Arch Linux中给出的消息究竟会发生什么? 日志条目存储在哪里?(快速grep建议/var/log/journal/*/system.journal。) 如何访问此日志?(我需要任何特殊选择journalctl吗?)

1
如何避免在系统日志中将/ usr / bin / env标记为可执行文件
我已经根据本文中的信息创建了一个systemd服务来运行tomcat应用程序。本文的简短版本建议避免使用Shell脚本包装程序,并使用适当的环境和命令行直接执行Java。 这是整个systemd服务(已替换应用名称): [Unit] Description=MyApp Tomcat Container [Service] EnvironmentFile=/opt/myapp/environment ExecStart=/usr/bin/env ${JAVA_HOME}/bin/java $JAVA_OPTS $CATALINA_OPTS \ -classpath ${CLASSPATH} \ -Dcatalina.base=${CATALINA_BASE} \ -Dcatalina.home=${CATALINA_HOME} \ -Djava.endorsed.dirs=${JAVA_ENDORSED_DIRS} \ -Djava.io.tmpdir=${CATALINA_TMPDIR} \ -Djava.util.logging.config.file=${CATALINA_BASE}/conf/logging.properties \ -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager \ org.apache.catalina.startup.Bootstrap start ExecStop=/usr/bin/env $JAVA_HOME/bin/java $JAVA_OPTS \ -classpath $CLASSPATH \ -Dcatalina.base=$CATALINA_BASE \ -Dcatalina.home=$CATALINA_HOME \ -Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS \ -Djava.io.tmpdir=$CATALINA_TMPDIR \ -Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties \ -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager \ org.apache.catalina.startup.Bootstrap …

2
如何配置带有日志的单位日志存储策略?
我有一项特别的服务,它会记录罕见但重要的信息。我已经在几个月前进行了设置,而今天我journalctl -n 50 --unit=my-service只发现没有条目。 我对大多数单位的这种行为感到非常满意-我要么需要立即(或最多几天前)发生的事情,而且我不在乎已有数月历史的记录。 但是,有没有办法告诉journald您为单个特定单位的记录制定独立的存储和保留策略?我想将这些特殊的日志保存5年,无论它需要多大大小。其他单位的日志应不受此影响,并保留其现有行为。 我有点不了解journald.conf(5),无法确定每单位的配置是否可行。如果是的话(请看一个简短的具体示例),我应该编辑/创建哪个文件,我应该写什么。或者,如果您确定肯定不可行,那也是一个很好的答案。 注意:我的特殊情况涉及Arch Linux主机,但是我想这应该没多大关系。


4
我如何查看何时启动/停止/重新启动systemd服务?
我有一个在Debian(Jessie)服务器上运行的服务(由我自己编写),该服务自己的日志恰好表明它在特定时间重新启动。没有迹象表明存在段错误或其他崩溃,因此我现在试图确定应用程序是否以某种方式静默失败并被systemd重新生成,或者用户是否通过故意重新启动了服务systemctl。 外壳程序历史记录未显示此类活动,但是export HISTCONTROL=ignoreboth由于SSH会话可能已超时,从而阻止了先前登录名的bash历史记录写入磁盘,因此尚无定论。当时服务器未重启。 但是我希望systemd本身应该保留一个日志,指示何时有意重新启动服务。令我惊讶的是,我找不到任何journalctl有关如何获取此类日志的文档(例如)。 其他一些帖子(例如,哪里/为什么普通用户systemd服务没有日志?)似乎表明应该有这样的日志消息: Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Starting chatty.service... Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Started chatty.service. 但是我在系统上看不到这样的日志消息。 有没有办法找出何时启动,停止或重新启动systemd服务? 编辑:看来人们可能遇到的典型问题是他们journalctl以非特权用户身份运行。对我来说不是这样,我一直都在工作root。作为对评论的回应,运行grep systemd /var/log/syslog仅给我以下内容: Jun 6 09:28:35 server systemd[22057]: Starting Paths. Jun 6 09:28:35 server systemd[22057]: Reached target Paths. Jun 6 09:28:35 server systemd[22057]: Starting Timers. Jun 6 09:28:35 server …


2
如何确切确定Systemd为什么进入紧急模式
我的运行Debian Jessie的台式计算机在每次启动时都进入紧急模式外壳。屏幕显示journalctl -xb用于查找原因,并systemctl default用于继续引导。当我执行时systemctl default,系统会继续启动,并且在使用系统几周后,没有任何明显的错误。 放眼望去journalctl -xb,没有任何事情成为跌落到紧急状态的原因。是否有一种简单的方法可以准确确定其决定进入紧急模式的原因?是否还有其他标志或启动选项可让您清楚地了解问题所在?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.