如何查找进程名称?

如何查找进程名称?

每个正在运行的服务是否都有一个可以通过pslinux命令看到的进程?

如果是,我该如何找到相关的进程名称?

例如,如果ntp正在运行,我应该通过名称查看它ntpps -aux | grep ntp

答案1

每个正在运行的服务是否都有一个可以通过 Linux 上的 ps 命令看到的进程

是的。

例如,如果 ntp 正在运行,我是否应该在 ps -aux | grep ntp 中通过名称 ntp 查看它?谢谢

是的。

$ ps -aux | grep ntp
ntp       1142  0.0  0.0  40264  1456 ?        Ss   Feb25   5:07 
/usr/sbin/ntpd -p /var/run/ntpd.pid -g -c /var/lib/ntp/ntp.conf.dhcp -u 105:112

它至少会显示守护进程和用户的名称。对于“ntp”,则显示“ntpd”和“ntp”。但有些服务(默认情况下)使用其他用户名而不是进程名称:apache 用户“www-data”作为用户名,“apache2”是进程。

来自评论:

那么我如何才能找到服务的确切进程名称?

我倾向于了解系统上运行的所有进程的名称。通过 systemd 搜索时,Apache 不起作用:

$ ps -ef | grep apache
www-data  9799  1638  0 11:21 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 12293  1638  0 12:00 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 12727  1638  0 12:02 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 13122  1638  0 12:08 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 13711  1638  0 12:18 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 14004  1638  0 12:20 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 14013  1638  0 12:20 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 14120  1638  0 12:22 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 15079  1638  0 12:41 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 15557  1638  0 12:51 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 15783  1638  0 12:57 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 15786  1638  0 12:57 ?        00:00:00 /usr/sbin/apache2 -k start
$ sudo systemctl list-unit-files | grep apache
$ sudo systemctl list-unit-files | grep https
$ sudo systemctl list-unit-files | grep http

不,一切都是 systemd 服务 ;)

相关内容