【linux】日志和journalctl 管理查看日志

目录

既看即用

简略介绍

linux的日志类型

系统日志

介绍

区别的简单说明

区别的详细说明

journalctl是什么?(查看系统日志的工具)

详细内容

linux的日志类型

systemd日志(systemd-journald) 放在哪个目录

/var/log/messages、/var/log/dmesg 日志和systemd-journald 日志有什么区别

journalctl 和dmesg、/var/log/messages 、/var/log/dmesg的关系是什么

journalctl 可以查看到/var/log/messages和/var/log/dmesg的内容吗

journalctl 不加--file=参数指定文件访问的是哪些日志文件


既看即用

系统日志的查看

journalctl -xe # -x 是目录(catalog)的意思,在报错的信息下会,附加解决问题的网址    -e  pager-end 从末尾开始看

从尾部开始看
journalctl -r # -r reverse ,加-r表示倒序从尾部看(推荐)

滚屏输出日志
journalctl -f -n 20;  # 和tail -f 一个性质

#查看指定时间的日志
journalctl --since="2017-10-30 18:10:30"
journalctl --since "20 min ago"
journalctl --since yesterday
journalctl --since "2017-01-10" --until "2017-01-11 03:00"
journalctl --since 09:00 --until "1 hour ago"

#只看内核日志(不显示应用日志)
journalctl -k

#查看系统本次启动的日志
journalctl -b
journalctl -b -0


#查看上一次启动的日志(需更改设置)
journalctl -b -1


某用户的日志
id root;
journalctl _UID=0 -n 5


#查看指定服务的日志
journalctl /usr/lib/systemd/systemd


#查看某个 Unit 的日志
journalctl -u nginx.service
journalctl -u httpd.service   # -u  service unit
:https://blog.csdn.net/enthan809882/article/details/104551777/

更多:https://www.cnblogs.com/askword/p/14506430.html

简略介绍

linux的日志类型

在 Linux 系统中,常见的日志类型包括:

1. **系统日志(System Logs)**:
   - `/var/log/messages` 或 `/var/log/syslog`:包含各种系统级别的日志信息,如内核消息、系统服务消息等。
   - `/var/log/auth.log`:记录与身份验证和授权相关的事件,如登录、认证失败等。
   - `/var/log/kern.log`:包含内核相关的日志信息,如内核模块加载、驱动程序事件等。

2. **应用程序日志(Application Logs)**:
   - `/var/log/<应用程序名>/`:许多应用程序会将自己的日志存储在以应用程序名称命名的目录下,例如 `/var/log/apache2/`、`/var/log/nginx/` 等。
   - `/var/log/mail.log`:邮件服务日志。
   - `/var/log/httpd/`:Apache Web 服务器的日志目录。
   - `/var/log/mysql/`:MySQL 数据库服务器的日志目录。

3. **安全日志(Security Logs)**:
   - `/var/log/auth.log`:记录了与身份验证和授权相关的安全事件。
   - `/var/log/secure`:记录了与安全相关的事件,如 SSH 登录、访问控制等。

4. **引导日志(Boot Logs)**:
   - `/var/log/dmesg`:记录了内核启动期间的消息,包括硬件检测和初始化信息。

5. **用户日志(User Logs)**:
   - `/var/log/wtmp`:记录了用户的登录和注销事件。
   - `/var/log/lastlog`:记录了每个用户最后一次登录的详细信息。

`systemd-journald` 日志属于系统日志(System Logs)的一部分。当 `systemd-journald` 服务在 Linux 系统上运行时,它负责收集和管理整个系统的日志信息,包括内核消息、系统服务和用户级别的日志。这些日志通过 `systemd-journald` 存储为二进制格式,并位于 `/var/log/journal/` 目录下。因此,`systemd-journald` 日志属于系统日志的一种。

系统日志

介绍

上面可知系统日志中最重要的是:

/var/log/messages (系统日志文件:组件的消息、警告、错误,记录更高级别的系统日志信息。包括系统服务的启动和停止信息、登录和权限问题、内核模块加载和卸载等信息。)

/var/log/dmesg (特殊的日志文件,保存了内核启动时和运行期间的相关信息。该文件记录了与硬件设备和内核驱动程序有关的信息)

区别的简单说明

journalctl 和 /var/log/messages的区别

journalctl 和 /var/log/messages 是 systemd 系统日志的不同访问方式。

`/var/log/messages` 和 `/var/log/dmesg` 是传统的日志文件,可以直接当作文件打开,也可以使用journalctl --file=/var/log/messages 打开。

而 `systemd-journald` 则是现代 Linux 系统中使用的日志记录服务,记录的日志是二进制文件,可以使用journalctl 工具查看。

dmesg 和 /var/log/dmesg区别

dmesg 和 /var/log/dmesg 主要关注内核和硬件信息的记录和查看,dmesg:直接显示内核环缓冲区的内容,即运行时的内核日志。dmesg /var/log/messages:将内核环缓冲区的内容导入到 /var/log/messages 文件中,使得接下来可以使用文件的方式查看内核日志。

区别的详细说明

在 Linux 系统中,/var/log/messages 和 /var/log/dmesg 是两个常见的日志文件,它们记录了系统运行时的不同类型的日志信息,但是它们的内容和用途有所不同。

1. /var/log/messages:这个日志文件包含了系统各个组件的消息、警告和错误日志。它记录了更高级别的日志,可以用于系统的故障排查和问题诊断。例如,系统服务的启动和停止信息、登录和权限问题、内核模块加载和卸载等信息都会被记录在这个文件中。

2. /var/log/dmesg:这个日志文件记录了内核启动时的详细信息。dmesg 是一个命令行工具,用于查看和控制内核环缓冲区的内容,而 /var/log/dmesg 则是将这些内核日志保存到文件中。该文件通常包含与硬件设备、驱动程序和内核相关的信息,例如设备初始化、硬件错误和内核模块加载等。

关于 dmesg 命令和 dmesg /var/log/messages 命令的区别:

- dmesg:这个命令直接显示内核环缓冲区的内容,即运行时的内核日志。它会输出最近发生的内核消息,用于检查系统的运行状态和故障排查。

- dmesg /var/log/messages:这个命令将内核环缓冲区的内容导入到 /var/log/messages 文件中,使得接下来可以使用文件的方式查看内核日志。这样做可以保留日志的历史记录,便于后续分析和查找。

总结起来,/var/log/messages 包含了更广泛的系统级别的日志信息,而 /var/log/dmesg 则更专注于内核和硬件相关的信息。使用 dmesg 命令可以直接查看内核环缓冲区的内容,而使用 dmesg /var/log/messages 命令可以将内核日志保存到文件中以供后续使用。

journalctl是什么?(查看系统日志的工具)

journalctl 是一个用于访问和管理 systemd 日志的命令行工具。systemd 是一个 Linux 系统的初始化系统和服务管理器,它负责启动和管理系统进程。

系统日志有

systemd 日志默认存储在 /var/log/journal/ 目录下,二进制文件

通过使用 journalctl,您可以查看和分析系统日志,以便诊断和解决问题。它可以提供有关服务、进程、启动过程和系统事件的详细信息。

以下是一些常见的 journalctl 用法示例:

1. `journalctl`:显示所有可用日志条目,从最新的开始。
2. `journalctl -b`:显示当前引导过程的日志。
3. `journalctl -u service-name`:仅显示特定服务的日志条目。
4. `journalctl -p priority-level`:按优先级过滤日志条目,例如 `-p err` 只显示错误级别的日志。
5. `journalctl -f`:实时查看新的日志条目。
6. `journalctl --since "YYYY-MM-DD HH:MM:SS"`:仅显示指定时间之后的日志条目。
7. `journalctl --disk-usage`:显示日志存储占用情况。

这只是一些常见的用法示例,journalctl 提供了许多其他选项和过滤功能,以满足不同的需求。您可以使用 `man journalctl` 命令来获取更详细的文档和帮助信息。

journalctl -xe命令(系统日志查询)
 
journalctl -xe是什么意思
-xe是排查问题时最常用的参数:
-e 从结尾开始看
-x 相关目录(如:问题相关的网址)
 
journalctl -xe # -x 是目录(catalog)的意思,在报错的信息下会,附加解决问题的网址    -e  pager-end 从末尾开始看

结尾看日志,开头看日志
默认从开头,加-r表示倒序
 
journalctl -r # -r reverse 从尾部看(推荐)
journalctl # 从开头看(一般用不到,因为都是看最新的日志)

滚屏输出日志
journalctl -f -n 20;  # 

时间段的日志
journalctl --since "2020-01-01 20:00:00" --until "2020-02-01 20:15:00"

某用户的日志
id root;
journalctl _UID=0 -n 5

某个服务的日志
journalctl -u httpd.service   # -u  service unit
:https://blog.csdn.net/enthan809882/article/details/104551777/

详细内容

linux的日志类型

在 Linux 系统中,常见的日志类型包括:

1. **系统日志(System Logs)**:
   - `/var/log/messages` 或 `/var/log/syslog`:包含各种系统级别的日志信息,如内核消息、系统服务消息等。
   - `/var/log/auth.log`:记录与身份验证和授权相关的事件,如登录、认证失败等。
   - `/var/log/kern.log`:包含内核相关的日志信息,如内核模块加载、驱动程序事件等。

2. **应用程序日志(Application Logs)**:
   - `/var/log/<应用程序名>/`:许多应用程序会将自己的日志存储在以应用程序名称命名的目录下,例如 `/var/log/apache2/`、`/var/log/nginx/` 等。
   - `/var/log/mail.log`:邮件服务日志。
   - `/var/log/httpd/`:Apache Web 服务器的日志目录。
   - `/var/log/mysql/`:MySQL 数据库服务器的日志目录。

3. **安全日志(Security Logs)**:
   - `/var/log/auth.log`:记录了与身份验证和授权相关的安全事件。
   - `/var/log/secure`:记录了与安全相关的事件,如 SSH 登录、访问控制等。

4. **引导日志(Boot Logs)**:
   - `/var/log/dmesg`:记录了内核启动期间的消息,包括硬件检测和初始化信息。

5. **用户日志(User Logs)**:
   - `/var/log/wtmp`:记录了用户的登录和注销事件。
   - `/var/log/lastlog`:记录了每个用户最后一次登录的详细信息。

`systemd-journald` 日志属于系统日志(System Logs)的一部分。当 `systemd-journald` 服务在 Linux 系统上运行时,它负责收集和管理整个系统的日志信息,包括内核消息、系统服务和用户级别的日志。这些日志通过 `systemd-journald` 存储为二进制格式,并位于 `/var/log/journal/` 目录下。因此,`systemd-journald` 日志属于系统日志的一种。

systemd日志(systemd-journald) 放在哪个目录

systemd 日志默认存储在 `/var/log/journal/` 目录下。具体而言,系统的二进制日志文件存储在 `/var/log/journal/system.journal` 中。

在 `/var/log/journal/` 目录下,您还会找到其他文件和目录,包括:

- `system.journal~`:这是系统日志的旧版本备份文件,当系统进行日志轮转(log rotation)时,旧的 `system.journal` 文件会被重命名为此文件。

- `user` 目录:该目录包含每个用户的个人日志目录。每个用户的日志以其用户ID号命名,例如 `/var/log/journal/user/1000` 是用户ID为1000的用户的个人日志目录。

请注意,这些路径是默认设置,实际可能因为操作系统的配置和定制而有所不同。

/var/log/messages、/var/log/dmesg 日志和systemd-journald 日志有什么区别

`/var/log/messages` 和 `/var/log/dmesg` 是传统的日志文件,而 `systemd-journald` 则是现代 Linux 系统中使用的日志记录服务。

区别如下:

1. **格式和存储方式**:

`/var/log/messages` 和 `/var/log/dmesg` 是文本文件,使用传统的 Syslog 格式记录日志。它们通常由 rsyslogd 等传统日志记录器处理。

而 `systemd-journald` 则使用二进制格式来存储日志,它将日志存储在 `/var/log/journal` 目录下的 `system.journal` 文件中。

2. **日志来源和内容**:

`/var/log/messages` 文件包含了各种系统服务和应用程序的日志信息,通常包括重要的系统级别日志。

而 `/var/log/dmesg` 文件包含了内核启动过程中的消息,提供了与硬件和内核交互的有关信息。 `systemd-journald` 服务收集了整个系统的日志信息,包括内核日志、系统服务和用户级别的日志。

3. **查询和分析工具**:

`/var/log/messages` 和 `/var/log/dmesg` 文件可以使用常见的文本处理工具(如grep、sed等)进行查询和分析。

而 `systemd-journald` 提供了专用的工具 `journalctl`,它允许您以更灵活和强大的方式查询和分析日志,包括可使用时间戳、服务名、日志级别和其他标准或自定义字段进行过滤和排序。

总之,`/var/log/messages` 和 `/var/log/dmesg` 是传统的文本日志文件,而 `systemd-journald` 是现代的二进制日志记录服务。与传统的日志文件相比,`systemd-journald` 提供了更强大、更灵活的日志管理和查询功能,同时还能够处理更多来源的日志信息。

journalctl 和dmesg、/var/log/messages 、/var/log/dmesg的关系是什么

journalctl、dmesg、/var/log/messages 和 /var/log/dmesg 是 Linux 系统中不同的日志记录和查看方式,它们之间有一定的关系和区别。

1. journalctl:它是一个用于访问和管理 systemd 日志的命令行工具。systemd 是现代 Linux 系统中常用的初始化系统和服务管理器。journalctl 可以访问和查询 systemd-journald 服务所管理的日志。它提供了更高级别的日志管理功能,可以查看系统和服务的详细日志,按照时间、服务、优先级等进行过滤和排序。

2. dmesg:它是一个用于显示和控制内核环缓冲区内容的命令行工具。它用于查看内核启动时的详细信息和运行时的内核消息。dmesg 命令直接访问内核环缓冲区,输出最近发生的内核消息。它主要用于检查硬件设备、驱动程序和内核相关的信息。

3. /var/log/messages:这是一个常见的系统日志文件,记录了各个组件的消息、警告和错误日志。它是传统 Syslog 协议的一部分,用于记录更高级别的系统日志信息。包括系统服务的启动和停止信息、登录和权限问题、内核模块加载和卸载等信息。这个文件通常由 Syslog 或类似的服务管理。

4. /var/log/dmesg:这是一个特殊的日志文件,保存了内核启动时和运行期间的相关信息。该文件记录了与硬件设备和内核驱动程序有关的信息,如设备初始化、硬件错误和内核模块加载等。它可以被视为 dmesg 命令的日志输出文件。

综上所述,journalctl 和 /var/log/messages 是 systemd 系统日志的不同访问方式,而 dmesg 和 /var/log/dmesg 则主要关注于内核和硬件信息的记录和查看。它们可以提供不同级别的日志,用于系统故障排查和问题诊断。

journalctl 可以查看到/var/log/messages和/var/log/dmesg的内容吗

是的,通过使用 journalctl 命令,您可以查看到 /var/log/messages 和 /var/log/dmesg 的内容。

journalctl 命令提供了一个统一的接口来访问系统的日志信息,包括 systemd-journald 日志、内核日志以及传统的 Syslog 日志。它能够检索并显示这些日志的信息。

默认情况下,journalctl 命令会显示当前系统的全部日志。要查看特定文件(如 /var/log/messages 和 /var/log/dmesg)的日志内容,您可以使用 `journalctl --file` 或 `-f` 选项,后面跟上文件的路径。例如:

```
journalctl --file=/var/log/messages
```

或者:

```
journalctl --file=/var/log/dmesg
```

这样,您将能够查看和检索指定文件的日志条目。

请注意,使用 journalctl 查看传统的 Syslog 文件时,需要确保已启用 rsyslog 服务和其对应的配置,以确保日志正确记录到 /var/log/messages 文件中。如果未启用 rsyslog,则可能无法显示相关的日志内容。

journalctl 不加--file=参数指定文件访问的是哪些日志文件

如果已经开启了rsyslog日志,但是日志不是记录在/var/log/messages文件中,而是记录在其他文件中如:/var/log/hw.log,那执行journalctl 不加--file=参数指定文件,能看到/var/log/hw.log内记录的日志吗

不加 `--file` 参数执行 `journalctl` 命令时,默认情况下会显示 systemd-journald 日志,而不会直接显示其他日志文件(如 /var/log/hw.log)中的内容。

`journalctl` 命令通过访问 systemd-journald 服务收集和管理的系统日志来提供日志的查看和查询功能。这些日志通常存储在 `/var/log/journal` 目录下。

要在 `journalctl` 中查看其他日志文件(如 /var/log/hw.log)中的内容,您可以使用 `--file` 参数,并指定文件的路径,例如:

```
journalctl --file=/var/log/hw.log
```

这样,您就可以查看并检索指定文件内记录的日志条目。

请确保已经启用 rsyslog 以正确记录日志到所指定的文件中。如果没有正确配置或启用 rsyslog 服务,`journalctl` 命令将无法访问和显示其他非 systemd-journald 日志。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/106239.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux系统编程详解

Linux 多线程编程 什么是线程&#xff1f; 与线程类似&#xff0c;线程是允许应用程序并发执行多个任务的一种机制 线程是轻量级的进程&#xff08;LWP&#xff1a;Light Weight Process&#xff09;&#xff0c;在 Linux 环境下线程的本 质仍是进程。 一个进程可以包含多个线…

[ROS2系列] ubuntu 20.04测试rtabmap 3D建图(二)

接上文我们继续 如果我们要在仿真环境中进行测试&#xff0c;需要将摄像头配置成功。 一、配置位置 sudo vim /opt/ros/foxy/share/turtlebot3_gazebo/models/turtlebot3_waffle/model.sdf 二、修改 <joint name"camera_rgb_optical_joint" type"fixed&…

介绍6种解决电脑找不到vcomp140.dll,无法继续执行代码的方法。

在编程和软件开发领域&#xff0c;我们经常会遇到各种错误和问题。其中&#xff0c;找不到vcomp140.dll文件导致无法继续执行代码是一个非常常见的问题。这个问题可能会影响到软件的正常运行&#xff0c;甚至导致整个项目延期。因此&#xff0c;我们需要找到解决方案来解决这个…

如何导出带有材质的GLB模型?

1、为什么要使用 GLB 模型? GLB格式&#xff08;GLTF Binary&#xff09;是一种用于存储和传输3D模型及相关数据的文件格式&#xff0c;具有以下优点和作用&#xff1a; 统一性&#xff1a;GLB是一种开放标准的3D文件格式&#xff0c;由Khronos Group制定和维护。它融合了GL…

C# 图解教程 第5版 —— 第6章 方法

文章目录 6.1 方法的结构6.2 方法体内部的代码执行6.3 局部变量6.3.1 类型推断和 var 关键字6.3.2 嵌套块中的局部变量 6.4 局部常量6.5 控制流6.6 方法调用&#xff08;*&#xff09;6.7 返回值&#xff08;*&#xff09;6.8 返回语句和 void 方法6.9 局部函数6.10 参数&#…

mysql面试题50:500台数据库,如何在最快时间之内重启

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:500台db,如何在最快时间之内重启呢? 如果需要在最快时间内重启500台数据库,可以考虑采用并行化和自动化的方法来提高效率。比如: 编写自动化脚…

vh、vw、vmin、vmax

1、分别是什么&#xff1f; vh:指屏幕可见视窗的高&#xff0c; vw:指屏幕可见视窗的宽&#xff0c; vmin:vh和vw之间选较小的值&#xff0c; vmax:vh和vw之间选较大的值。 2、和百分比的区别 百分比时基于父元素的宽高&#xff0c;而vh\vw\vmin\vmax基于屏幕可见视图的宽…

protobuf 插件(option)使用

protobuf的option使用 一、需求 来源于工作中的一个需求&#xff1a;在传递message时需要对message中不同的字段进行不同的处理&#xff0c;而处理方式通过注释标注在了每个字段的定义后。 类似于有下面这样一个消息&#xff1a; 其中字段1是始终需要的&#xff0c;字段2和3…

Mall脚手架总结(五) —— SpringBoot整合MinIO实现文件管理

前言 在项目中我们经常有资源的上传和下载的功能需求&#xff0c;比如用户头像、产品图片、配置文件等等&#xff0c;大数据量的文件存储无疑需要更高性能的数据存储服务&#xff0c;对于无需对结构实现复杂查询的文件对象来说&#xff0c;对象存储服务无疑是一个较好的选择&am…

uniapp编译到小程序Component is not found in path “components/energy/illumination“

Component is not found in path "components/energy/illumination" 直接清除缓存重新编译

Ubuntu下怎么配置vsftpd

2023年10月12日&#xff0c;周四中午 目录 首先要添加一个系统用户然后设置这个系统用户的密码给新创建的系统用户创建主目录启动vsftpd服务查看vsftpd服务的状态打开外界访问vsftpd服务所需的端口获取服务器的IP地址大功告成 首先要添加一个系统用户 useradd 用户名然后设置…

APP备案避坑指南,值得收藏

目录 什么时间节点前需完成备案&#xff1f; APP/小程序一定要做备案吗&#xff1f; 涉及前置审批的APP有哪些&#xff1f; APP 支持安卓、IOS 多个运行平台&#xff0c;应该备案多少次&#xff1f; 企业是自有服务器&#xff0c;该如何进行APP备案&#xff1f; APP备案可…

【Spring框架】Spring监听器的简介和基本使用

目录 一、观察者模式 1.1 模型介绍 1.2 观察者模式Demo 1.2.1 观察者实体 1.2.2 主题实体 1.2.3 测试代码 二、Spring监听器的介绍 2.1 事件&#xff08;ApplicationEvent&#xff09; 2.1.1 Spring内置事件 2.1.2 Spring内置事件 2.2 事件监听器&#xff08;Applic…

三大方法快速发现商业规律

文章目录 三大方法快速发现商业规律一、市场调研二、数据分析三、案例分析 &#x1f4d5;我是廖志伟&#xff0c;一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专家博主、阿里云专家博主、清华大学出版社签约作者、产品软文创造者、技术文章评审老师、问卷调查…

PHP LFI 利用临时文件Getshell

PHP LFI 利用临时文件 Getshell 姿势-安全客 - 安全资讯平台 LFI 绕过 Session 包含限制 Getshell-安全客 - 安全资讯平台 目录 PHP LFI 利用临时文件Getshell 临时文件 linux 和 windows的 临时文件存储规则 linux和windows对临时文件的命名规则 PHPINFO()特性 原理 条…

Python点击exe后报错:Failed to execute script xxxx问题的解决办法

最近工作在弄人脸识别的问题&#xff0c;从gitee来pull了一个但是发现报了一个Failed to execute script XXX的问题 造成这个问题的原因是执行文件exe存放的目录不对&#xff0c;可能在打包前exe文件并不是存在在这个位置。 解决方案将exe文件尝试存在在不同目录下&#xff…

详解Pinia和Vuex

一、vuex介绍 1.什么是vuex&#xff1f;为什么要使用vuex? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 库。它采用集中式存储管理应用的所有组件的状态&#xff0c;并以相应的规则保证状态以一种可预测的方式发生变化。 在vue最重要的就是数据驱动和组件化&#x…

Qt之submodule编译

工作中会遇到这样一种情况&#xff1a;qt应用程序在运行时提示找不到某个qt的动态库。我遇到的是缺少libQt5Websocket.so&#xff0c;因为应用程序是在x86平台银河麒麟v10上开发&#xff0c;能够正常编译运行&#xff0c;然后移植到rk3588&#xff08;aarch64架构&#xff09;上…

NeuroImage | 右侧颞上回在语义规则学习中的作用:来自强化学习模型的证据

在现实生活中&#xff0c;许多规则的获取通常需要使用语言作为桥梁&#xff0c;特别是语义在信息传递中起着至关重要的作用。另外&#xff0c;个体使用的语言往往具有明显的奖励和惩罚元素&#xff0c;如赞扬和批评。一种常见的规则是寻求更多的赞扬&#xff0c;同时避免批评。…

【翻译】Efficient Data Loader for Fast Sampling-Based GNN Training on Large Graphs

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] 此内容为机器翻译的结果&#xff0c;若有异议的地方&#xff0c;建议查看原文。 机器翻译的一些注意点&#xff0c;比如&#xff1a; 纪元、时代 > epoch工人 > worker火车、培训、训练师 > train Effic…