如何找出程序做了什么

use*_*own 5 documentation process

当我调用 时ps ax,我会得到一个正在运行的进程列表。

  • 其中一些我知道名字(firefox,java,scala,你说出来)。
  • 大多数其他人,我可以通过 找到man NAME并尝试找出他们在做什么。
  • 如果程序没有手册页,我会很生气。但是有apt-cache search NAME,我可以在那里找到它来自哪个包,希望能找到解释。示例:apt-cache search wpa_supplicant产量wpagui - graphical user interface for wpa_supplicant
  • 如果 apt-cache 没有显示任何内容,那么仍然有希望file $(locate NAME)找到脚本或其他包含更多信息的内容。
  • 但是,因为rkit-daemon我没有发现任何有用的东西。
  • 因为file $(locate gvfs-gphoto2-volume-monitor)我只找到了一个二进制可执行文件,但没有找到任何信息。

我可能会尝试破译gnome-virtual-file-sytem ...和猜测,如果连接到 PC,它可能是检测照片 SD 卡等的工具,但是有没有更好的方法来找出在我的 PC 上运行的进程正在做什么? 我真的需要谷歌吗?

为什么没有关于这些过程的一些文档或者我在哪里可以找到它们?是否有一个有组织的位置可以搜索它们,还是我必须根据具体情况进行搜索?

我想我可以下载整个系统的源代码,并搜索源代码,但很少有附加信息供用户使用,而是供开发人员使用。

Rob*_*ans 4

我使用的过程是:设置
sudo apt-get install htop apt-file
sudo apt-file update
htop
f2时使用
箭头键导航Down Arrow,切换树视图,返回菜单(因为您无法轻松发送到 gnome 终端)。您也可以使用鼠标执行此操作。 Right ArrowSpaceEscF10

现在,您可以获得有关每个进程如何启动以及它可能加载的其他文件的更多信息。例如 oneconf-service。

man oneconf-service并且man oneconf一无所获。 apt-cache search oneconf-service什么也不产生。

apt-file search oneconf-service产量oneconf: /usr/share/oneconf/oneconf-service
apt-cache search oneconf产量oneconf - synchronize your configuration data over the network

回到您所讨论的特定问题:
因为apt-file search gvfs-gphoto2-volume-monitor您得到:

gvfs-backends: /usr/lib/gvfs/gvfs-gphoto2-volume-monitor
gvfs-dbg: /usr/lib/debug/usr/lib/gvfs/gvfs-gphoto2-volume-monitor
Run Code Online (Sandbox Code Playgroud)

apt-cache search gvfs-backends产生:
gvfs-backends - userspace virtual filesystem - backends

apt-file search 'rtkit-daemon'产量:

rtkit: /lib/systemd/system/rtkit-daemon.service
rtkit: /usr/lib/rtkit/rtkit-daemon
Run Code Online (Sandbox Code Playgroud)

apt-cache search rtkit产量:
rtkit - Realtime Policy and Watchdog Daemon

编辑以解决评论:我推荐 htop 因为您可以看到其他加载的模块而不仅仅是进程名称。如果某些东西以一种有趣的方式启动, ps/process name 的输出可能不会向您显示一些非常有用的东西。

apt-file 可以找到名称与包名称不同且不在包描述中的内容。它允许您跟踪包安装的任何文件回到包。

userspace用户可以控制它,virtual filesystem不完全是一个文件系统,但它的作用就像- backends你看不到的部分。如果您检查 htop,它会通过 dbus 进行通信(它显示在加载的模块中)。这让我觉得它可以让用户通过 dbus 操作文件系统/挂载/设备(一种授予超级用户权限的常见方法,无需 sudo 并使用 package-kit 代替)。因此,当您结合 htop 输出、了解 dbus 的常见用途以及描述时,它会变得更加清晰。

Watchdog一个监视另一个进程以确保它不会失去控制的进程,daemon该进程作为服务运行。因此,它是一个监视其他进程以确保调度不会失控的进程。