当我调用 时ps ax,我会得到一个正在运行的进程列表。
man NAME并尝试找出他们在做什么。apt-cache search NAME,我可以在那里找到它来自哪个包,希望能找到解释。示例:apt-cache search wpa_supplicant产量wpagui - graphical user interface for wpa_supplicant。file $(locate NAME)找到脚本或其他包含更多信息的内容。rkit-daemon我没有发现任何有用的东西。file $(locate gvfs-gphoto2-volume-monitor)我只找到了一个二进制可执行文件,但没有找到任何信息。我可能会尝试破译gnome-virtual-file-sytem ...和猜测,如果连接到 PC,它可能是检测照片 SD 卡等的工具,但是有没有更好的方法来找出在我的 PC 上运行的进程正在做什么? 我真的需要谷歌吗?
为什么没有关于这些过程的一些文档或者我在哪里可以找到它们?是否有一个有组织的位置可以搜索它们,还是我必须根据具体情况进行搜索?
我想我可以下载整个系统的源代码,并搜索源代码,但很少有附加信息供用户使用,而是供开发人员使用。
我注意到在我的系统监视器上,我的一个名为pulseaudio的进程具有非常高的优先级,而我所有其他正在运行的应用程序具有正常的优先级。我不记得曾经改变过它,所以它一定是它的默认优先级,对吧?有没有其他类似的应用程序?
我想运行一个命令sudo apt-get update &。但是,在按 Enter 后,当我按 for 时jobs,它会显示这些命令的状态为已停止。我的猜测是,通过将进程推入后台,我没有为其提供询问密码的机会。有没有办法在后台运行需要密码的进程?
我想弄清楚是什么程序不断杀死网络指示器:
$ nm-applet
** Message: applet now removed from the notification area
** Message: PID 31340 (we are 28924) sent signal 15, shutting down...
Run Code Online (Sandbox Code Playgroud)
PID 每次都会改变。有没有办法使用该 PID 来查找停止它的进程的名称?
无论如何,有没有办法防止进程被杀死?我知道,nice但我不确定是否给诸如长时间运行的内存密集型rake任务之类的任务提供最高优先级会阻止它被杀死:
nice -n -20 rake xyz
Run Code Online (Sandbox Code Playgroud)
编辑:即使服务器资源不足,原始海报也很可能希望它具有高优先级,以至于其他进程首先被杀死。
我正在尝试卸载 logstash,但sudo apt-get remove logstash由于某个进程正在使用该用户而失败。如果我尝试手动删除logstash用户,则无法删除,因为即使我终止该进程,也会立即弹出一个新用户。例如,如果我使用logstash以下命令检查进程:
ps -fp $(pgrep -u logstash)
Run Code Online (Sandbox Code Playgroud)
我得到
UID PID PPID C STIME TTY TIME CMD
logstash 17376 1 99 10:04 ? 00:00:10 /usr/bin/java -Djava.io.tmpdir=/
Run Code Online (Sandbox Code Playgroud)
然后我尝试终止进程并删除用户:
sudo killall -KILL -u logstash
sudo userdel logstash
Run Code Online (Sandbox Code Playgroud)
但是现在logstash已经被另一个进程使用了:
userdel: user logstash is currently used by process 17794
Run Code Online (Sandbox Code Playgroud)
如何删除logstash用户?
列出我的用户的所有进程名称。
我可以做到
ps aux | grep username
Run Code Online (Sandbox Code Playgroud)
但输出将是这样的:
maythux 18343 0.0 0.1 1070868 34504 ? Sl Jun03 0:07 empathy
maythux 21562 0.0 0.1 703716 32104 ? Sl Jun10 0:00 /usr/bin/python /usr/bin/blueman-applet
maythux 21574 0.0 0.0 53532 2408 ? S Jun10 0:00 /usr/bin/obex-data-server --no-daemon
maythux 25197 0.0 1.0 2199840 258576 ? Sl May27 0:24 remmina
Run Code Online (Sandbox Code Playgroud)
但我只希望输出看起来像:
empathy
blueman-applet
obex-data-serve
remmina
Run Code Online (Sandbox Code Playgroud)
那么最简单的方法是什么?
我正在尝试并行启动 16 个 python 脚本。
我试着做
for i in {0..15}
do
python my_script.py "$i"
done
Run Code Online (Sandbox Code Playgroud)
但是检查我的htop这仅在一个处理器上运行。我猜这个过程是按顺序执行的。
我当然可以打开一个新选项卡并在每个选项卡中运行一个进程,但这似乎是多余的。什么是正确的方法呢?
我跑了ps -aux,我看到了其中的 4 个
name 1696 0.0 0.3 337052 11892 tty2 SNl+ 06:46 0:00 /usr/lib/tracker
name 1698 0.3 0.4 502776 19272 tty2 SNl+ 06:46 0:24 /usr/lib/tracker
name 1704 0.0 0.3 302752 12000 tty2 SNl+ 06:46 0:00 /usr/lib/tracker
name 1705 0.0 1.5 1326320 61316 tty2 SNl+ 06:46 0:02 /usr/lib/tracker
Run Code Online (Sandbox Code Playgroud)
任何人都知道这是什么的任何信息?我在谷歌上搜索了路径,找到了 0 个匹配的结果。我也在这里搜索了相同的结果。
我的系统出现问题,phantomjs在完成工作后仍然运行。为了调试这个问题,两天前我重新启动了系统:
今天跑步的时候top看到了这个:
如果我理解正确,这两个phantomjs过程已经存在大约 5 天了。所以他们以某种方式在重启后幸存下来?
process ×10
command-line ×2
bash ×1
cpuinfo ×1
nice ×1
ps ×1
pulseaudio ×1
services ×1
top ×1
users ×1