Linux 通过终止进程查找应用程序

Linux 通过终止进程查找应用程序,linux,bash,Linux,Bash,假设我不小心用随机pid手动杀死了某个进程: kill -9 pid 现在我想得到一些关于这个过程的信息,例如,我杀死了什么实际的程序以及如何恢复它 我在Red Hat Enterprise Linux Server 7.4版(Maipo)上 编辑: 我不认为这是重复的 完全不同的问题和建议的解决方案对我不起作用您可以在系统日志/var/log/syslog和/var/log/messages中找到这些信息 例如,grep-i'kill'/var/log/messages 尝试检查/var/l

假设我不小心用随机pid手动杀死了某个进程:

kill -9 pid
现在我想得到一些关于这个过程的信息,例如,我杀死了什么实际的程序以及如何恢复它

我在Red Hat Enterprise Linux Server 7.4版(Maipo)上

编辑:

我不认为这是重复的
完全不同的问题和建议的解决方案对我不起作用

您可以在系统日志
/var/log/syslog
/var/log/messages
中找到这些信息

例如,
grep-i'kill'/var/log/messages

尝试检查/var/log/*。如果你在那里什么地方都得不到信息,那么我认为你运气不好

正如triplee指出的,您的kill进程在默认情况下不会被记录。但正如你所说,你没有sudo权限,我想你一定是在某个组织工作。因此,用户活动有可能被记录下来。所以我的答案可能有用

不幸的是,如果没有日志,您无法返回时间并检索正在运行的进程列表

使用一个简单的脚本可以保存进程的运行日志。使用日志,您可以返回并查看正在运行和未运行的内容

#!/bin/bash

mkdir -p "$HOME/ps_logs"

while true; do
    ps aux > "$HOME/ps_logs/ps_$(date +%Y-%m-%d_%H:%M:%S).log"
    sleep 60 # Logging interval in seconds.
done

您可以在系统日志
/var/log/syslog
/var/log/messages
中找到该信息

例如,
grep-i'kill'/var/log/messages

尝试检查/var/log/*。如果你在那里什么地方都得不到信息,那么我认为你运气不好

正如triplee指出的,您的kill进程在默认情况下不会被记录。但正如你所说,你没有sudo权限,我想你一定是在某个组织工作。因此,用户活动有可能被记录下来。所以我的答案可能有用

不幸的是,如果没有日志,您无法返回时间并检索正在运行的进程列表

使用一个简单的脚本可以保存进程的运行日志。使用日志,您可以返回并查看正在运行和未运行的内容

#!/bin/bash

mkdir -p "$HOME/ps_logs"

while true; do
    ps aux > "$HOME/ps_logs/ps_$(date +%Y-%m-%d_%H:%M:%S).log"
    sleep 60 # Logging interval in seconds.
done

我看不到/proc下的流程。我想自从我杀了它之后它就不在那里了。对吗?命令很好,我不需要自动化@achal No的可能副本,指定的副本似乎是关于相反的问题(哪个用户和命令杀死了我的进程,而不是我杀死的是什么东西),我在/proc下看不到该进程。我想自从我杀了它之后它就不在那里了。对吗?命令很好,我不需要自动化@achal No的可能副本,指定的副本似乎是关于相反的问题(哪个用户和命令杀死了我的进程,而不是我杀死了什么东西),谢谢您的快速回复!我得到:cat:/var/log/syslog:没有这样的文件或目录,并且在尝试读取/var/log/messages时被拒绝了权限。很奇怪,我可以杀死进程,但不能读取日志。我没有sudo访问权限。在许多平台上,普通用户无法读取日志。在Debian上,如果这是您可以控制的,您可能希望将您的用户添加到组
adm
;默认情况下,常规用户发出的常规
kill
命令将不会被记录。感谢更新!完全有理由快速回复!我得到:cat:/var/log/syslog:没有这样的文件或目录,并且在尝试读取/var/log/messages时被拒绝了权限。很奇怪,我可以杀死进程,但不能读取日志。我没有sudo访问权限。在许多平台上,普通用户无法读取日志。在Debian上,如果这是您可以控制的,您可能希望将您的用户添加到组
adm
;默认情况下,常规用户发出的常规
kill
命令将不会被记录。感谢更新!完全有道理