如何使用psacct或acct工具监控Linux用户的活动?


监控Linux系统中的用户活动对于确保系统安全、优化资源使用和识别潜在问题至关重要。通过跟踪用户操作,管理员可以深入了解系统行为,检测未经授权的活动并排除性能问题。

为了有效监控用户活动,需要可靠的工具。Linux 社区广泛使用的两个此类工具是 psacct 和 acct。这些工具提供了全面的功能来跟踪和分析用户操作,允许系统管理员维护一个强大且安全的环境。

在这篇博文中,我们将探讨 psacct 和 acct 的功能,并提供关于如何在 Linux 系统中使用它们来监控用户活动的详细指南。我们将介绍这些工具的安装和配置,并通过实际示例和代码片段演示其用法。

理解Psacct和Acct

为了有效监控Linux系统中的用户活动,了解可用的工具至关重要。让我们仔细看看psacct和acct,它们的目的以及它们提供的益处。

Psacct

psacct,也称为进程会计,是一个强大的实用程序,用于跟踪用户和进程使用的系统资源。它收集详细的信息,例如CPU使用率、内存消耗、磁盘I/O和执行的命令。这些综合数据允许管理员深入了解资源利用模式,识别瓶颈并跟踪单个用户或进程的活动。

psacct的主要功能包括:

  • 资源监控  psacct跟踪进程的资源使用情况,使管理员能够在细粒度级别监控CPU、内存和磁盘使用情况。

  • 命令执行跟踪  它记录用户执行的命令,从而可以了解在系统上执行的操作。

  • 报告和分析  psacct提供生成报告和分析收集数据的工具,允许管理员根据系统使用模式做出明智的决策。

Acct

acct是另一个在Linux系统中提供进程会计功能的实用程序。它通过监控执行的命令、进行的系统调用和文件访问操作来捕获用户活动。acct收集的信息帮助管理员了解用户行为,识别潜在的安全漏洞并优化系统性能。

acct的关键功能包括:

  • 命令执行日志记录  acct记录用户执行的命令,包括它们的论据和执行时间。

  • 系统调用跟踪  它捕获进程进行的系统调用,从而可以了解用户程序和操作系统之间的交互。

  • 文件访问监控  acct记录文件操作,从而可以了解用户或进程执行的文件读取、写入和删除操作。

通过使用psacct和acct,管理员可以全面了解用户活动、资源使用情况和系统行为。这些工具是维护Linux系统安全、效率和稳定性的宝贵辅助工具。

安装和配置Psacct和Acct

要开始使用psacct和acct监控用户活动,您需要适当地安装和配置这些工具。在本节中,我们将引导您完成安装过程,并提供配置psacct和acct的指南。

安装Psacct

安装psacct很简单,可以使用特定于您的Linux发行版的包管理器来完成。以下是安装过程的总体概述:

对于基于Debian的发行版(例如,Ubuntu):

sudo apt-get install psacct

对于基于Red Hat的发行版(例如,CentOS):

sudo yum install psacct

对于Arch Linux:

sudo pacman -S psacct

安装完成后,psacct就可以使用了。

配置Psacct

Psacct提供配置选项,可以根据您的具体要求调整监控行为。psacct的主要配置文件通常位于/etc/psacct/psacct.conf。您可以使用文本编辑器修改此文件以自定义设置。

一些常见的配置选项包括:

  • ENABLE_ACCT  将其设置为YES以启用进程会计。

  • SUSPEND_ACCT  将其设置为YES以暂时挂起进程会计。

  • COMPRESS_ACCOUNTING  将其设置为YES以压缩会计文件。

请确保根据您的监控需求查看和调整这些选项。

安装和配置Acct

acct的安装和配置过程可能略有不同,具体取决于您的Linux发行版。这是一个通用指南:

对于基于Debian的发行版:

sudo apt-get install acct

对于基于Red Hat的发行版:

sudo yum install acct

对于Arch Linux:

sudo pacman -S acct

安装后,acct会自动开始收集会计信息。

psacct和acct的安装和配置部分到此结束。在下一节中,我们将深入探讨使用psacct监控用户活动的细节。

使用Psacct监控用户活动

现在我们已经安装并配置了psacct,让我们探讨如何使用这个强大的工具有效地监控用户活动。在本节中,我们将介绍启用进程会计、查看进程会计记录、分析数据和生成报告。

启用进程会计

要开始使用psacct监控用户活动,我们需要启用进程会计。这允许psacct收集有关用户和进程使用的系统资源的详细信息。要启用进程会计,请按照以下步骤操作:

  • 打开终端并以root权限运行以下命令以启动psacct服务:

sudo systemctl start psacct
  • 为了确保psacct在系统启动时自动启动,请运行以下命令:

sudo systemctl enable psacct

启用进程会计后,psacct将开始收集有关用户活动的数据。

查看进程会计记录

要监控用户活动并查看进程会计记录,我们可以使用psacct提供的sa命令。此命令允许我们访问有关用户行为和系统资源使用情况的宝贵信息。以下是一些常用的选项:

  • 要查看用户汇总统计信息:

sudo sa -u

此命令显示用户活动的摘要,包括执行的命令总数、使用的CPU时间等等。

  • 要显示详细的进程摘要:

sudo sa -m

sa -m命令提供执行进程的详细摘要,包括CPU使用率、内存消耗和磁盘I/O。

  • 要查看特定用户执行的命令:

sudo sa -u <username>

通过指定用户名,我们可以缩小结果范围并查看特定用户执行的命令。

分析进程会计数据

分析进程会计数据使我们可以更深入地了解用户行为和系统资源利用情况。Psacct提供了一些工具来协助数据分析:

  • sar 命令

    sar 命令(系统活动报告器)根据进程会计数据提供系统活动报告。它允许我们分析 CPU 使用率、内存消耗、磁盘 I/O 等。例如,要查看 CPU 利用率统计信息,我们可以运行

sudo sar -u
  • sadf 命令 

    sadf 命令(系统会计数据格式化程序)将进程会计数据转换为人类可读的格式。这对于进一步分析或生成自定义报告非常有用。例如,要将进程会计数据转换为文本文件,我们可以使用

sudo sadf -p /var/log/account/pacct > accounting_data.txt

生成报告

Psacct 提供报告功能,允许我们根据收集的用户活动数据生成简洁且有见地的报告。accton 命令用于生成报告。例如,要在 /var/log/account/pacct 文件中生成报告,我们可以运行 

sudo accton /var/log/account/pacct

此报告提供了有关用户活动、资源使用情况和系统行为的宝贵信息。

使用 psacct,您可以有效地监控用户活动,分析系统资源利用率并生成信息丰富的报告。

在下一节中,我们将探讨如何使用 acct 监控用户活动。

使用 Acct 监控用户活动

除了 psacct 之外,Linux 系统还提供 acct 工具来监控用户活动。acct 通过监控执行的命令、进行的系统调用和文件访问操作来捕获用户活动。让我们探讨如何有效地利用 acct 进行用户活动监控。

启用 Acct

默认情况下,acct 通常已安装并在 Linux 系统上激活。要验证其状态,可以使用以下命令 

sudo systemctl status acct

如果 acct 未激活,可以使用以下命令启动它 

sudo systemctl start acct

查看用户活动

要查看 acct 记录的用户活动,我们可以使用 lastcomm 命令。此命令显示有关用户执行的命令的信息,包括用户名、命令名称和执行时间。例如 

lastcomm

要查看特定用户执行的命令,可以使用 

lastcomm <username>

文件访问监控

acct 的关键功能之一是文件访问监控。它记录用户或进程执行的文件操作,例如读取、写入和删除。可以使用 ac 命令访问文件访问数据。例如 

ac -d

此命令提供文件访问操作的摘要,包括读取、写入和删除的文件数量。

生成报告

Acct 提供生成用户活动摘要报告的功能。与 psacct 一起使用的 sa 命令也可以与 acct 一起使用。例如 

sa -u

此命令生成用户活动的摘要报告,包括执行的命令总数和使用的 CPU 时间。

Acct 还提供其他报告工具,例如 action,用于根据收集的数据生成自定义报告。这些报告可以提供对用户行为和系统使用模式的宝贵见解。

结论

在这篇博文中,我们探讨了用于监控 Linux 系统中用户活动的强大工具 psacct 和 acct。通过安装和配置这些工具,您可以有效地跟踪用户行为,分析系统资源利用率并生成有见地的报告。

使用 psacct,您可以启用进程会计,查看会计记录并使用 sar 和 sadf 等工具分析数据。Acct 通过提供命令监控和文件访问跟踪等附加功能来补充 psacct。通过利用这些工具,系统管理员可以深入了解用户活动,增强系统安全性和优化资源分配。

更新于:2023年8月9日

652 次浏览

开启您的职业生涯

通过完成课程获得认证

开始
广告