哪个程序使用哪个包?

哪个程序使用哪个包?

对我来说,更新 Linux 服务器是一个压力很大的部分。好像今天。通过 yum update,我看到了 NodeJS 的新版本,但据我所知,nodejs 已被一个需要仔细更改的程序使用。

所以我想,应该有一个命令如何找出哪个程序正在使用 NodeJS,但不幸的是我找不到这样的命令。

是否有 yum 命令可以告诉我谁在我的系统上使用 NodeJS?所以我可以检查是否可以更新?

答案1

如果其他程序作为 RPM 包安装,那么您可以查看哪些程序需要nodejs

rpm -q --whatrequires nodejs

如果其他程序没有作为 RPM 包安装,那么就没有简单的方法了。依赖信息是使用包管理器的主要好处之一,而不是仅仅复制文件。

您可以在执行时设置日志记录/usr/bin/nodejs,并运行系统几天以查看执行的内容。如果该文件通过舍邦行,您可以使用审计子系统

auditctl -w /usr/bin/nodejs

并观看/var/log/audit/audit.log。如果nodejs显式调用,那么这不会告诉您哪个程序执行了它,但它确实记录了前几个命令行参数,其中希望包含一个脚本路径,这对您来说是足够的信息。手表监控什么程序调用可执行文件以获得其他解决方案。

或者,如果您知道该程序的存储位置,则可以搜索字符串nodejs。但这可能会返回很多误报(例如文档文件)。

相关内容