小编STe*_*yaK的帖子

优雅地获取后代进程列表

我想获得从$pid. 这是我想出的最简单的方法:

pstree -p $pid | tr "\n" " " |sed "s/[^0-9]/ /g" |sed "s/\s\s*/ /g"
Run Code Online (Sandbox Code Playgroud)

是否有任何命令或任何更简单的方法来获取所有后代进程的完整列表?

process ps

28
推荐指数
3
解决办法
2万
查看次数

优雅地获取子进程列表

我想获得父进程为 $pid 的所有进程的列表。这是我想出的最简单的方法:

pstree -p $pid | tr "\n" " " |sed "s/[^0-9]/ /g" |sed "s/\s\s*/ /g"

是否有任何命令或任何更简单的方法来获取子进程列表?

谢谢!

process ps

14
推荐指数
1
解决办法
4万
查看次数

交换使用率太高?

我有一个 Debian Sid 盒子,大约一个月前刚安装,目前没有运行桌面应用程序。

我尝试运行的任何命令(通过 ssh)都会使硬盘工作非常困难。几周前,该系统在运行 Ubuntu 8.04 时完美运行。硬件应该没问题,智能工具报告没有问题,也没有进行内存检查等。

我怀疑问题与交换有关:

$ free -h
             total       used       free     shared    buffers     cached
Mem:          998M       986M        12M         0B       464K       904M
-/+ buffers/cache:        81M       917M
Swap:         511M       511M         0B
Run Code Online (Sandbox Code Playgroud)

测试的东西,我看到我无法在不重新启动的情况下禁用交换,即使大多数物理内存用于缓存:

# swapoff  -a
swapoff: /swapfile: swapoff failed: Cannot allocate memory
Run Code Online (Sandbox Code Playgroud)

运行此stackoverflow answer 中提到的脚本时,交换使用率最高的进程仅使用了 1.5megs,总数为:

"Overall swap used: 18376 kB"
Run Code Online (Sandbox Code Playgroud)

...这远不是 htop 或免费报告的一半。

我试图改变swappiness1半个月前,但没有区别(相同的内存使用模式)。

知道什么可能是罪魁祸首吗?

编辑:这里的/proc/meminfo内容(类似的情况,但 702megs 的缓存而不是 904,并且铬仍然打开):

MemTotal:        1022464 kB
MemFree:           14344 kB
Buffers:             192 …
Run Code Online (Sandbox Code Playgroud)

linux memory debian swap

9
推荐指数
1
解决办法
7万
查看次数

标签 统计

process ×2

ps ×2

debian ×1

linux ×1

memory ×1

swap ×1