发现 find 命令运行的根本原因

发现 find 命令运行的根本原因

今天早上我进来时发现我的硬盘灯一直亮着。这是不寻常的,所以我运行iotop并看到一个find命令正在搜索我的文件系统。

我决定运行ps auxZ转储带有 SELinux 标签的进程。事实证明该find命令是在安全上下文下运行的locate_t

基于此,我得出的结论是locate数据库更新。

我想知道如何在不查看进程的安全标签的情况下快速得出相同的结论?

答案1

我想到了两个想法:

  1. 的父进程find将指示哪个进程调用了它;遵循该流程树可能会引导您locate;这是我从 bash shell 调用它的示例:

    (sample "ps" output to capture the "find" command)
    UID        PID  PPID  C STIME TTY          TIME CMD
    user     26847 20786  0 09:01 pts/0    00:00:00 find ..
    
    $ ps -fp 20786
    UID        PID  PPID  C STIME TTY          TIME CMD
    user     20786 20785  0 07:35 pts/0    00:00:00 -bash
    

    或者,作为CAS建议,运行pstree -a -p | less当前进程的图形表示;找到该find命令并向左和向上追踪它的线。

  2. 识别命令的开始时间find可以为您指明计划的 cron 作业;查看系统 crontab 文件(/etc/anacrontab、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly、/var/spool/cron/root 等)。

相关内容