process-management

了解 systemd 服务中的内存限制:它们是针对每个进程的还是组合的?
process-management

了解 systemd 服务中的内存限制:它们是针对每个进程的还是组合的?

我的 Linux 系统上运行着一个名为 vcoagent.service 的 systemd 服务,我试图了解为该服务 ( Memory: 300.3M (limit: 500.0M)) 指定的内存限制如何应用于它管理的进程。 以下是 systemctl status vcoagent.service 的相关输出: ● vcoagent.service - Observability Agent Loaded: loaded (/etc/systemd/system/vcoagent.service; enabled; vendor preset:...

Admin

识别未通过注销终止的进程
process-management

识别未通过注销终止的进程

我试图更好地了解如何终止所有不需要的进程并重新启动 Linux 会话。我所说的“不需要的”是指崩溃的应用程序遗留下来的任何进程。 事情是这样的: 我是Cairo-Dock从可信来源安装的。使用一段时间后,讽刺的是,当我第二次点击它的帮助图标时,它就冻结了。虽然我可以终止它的主进程,但我不确定它是否正在运行其他进程,因此我决定注销 Linux 会话。重新登录 Linux 后,我Cairo-Dock再次启动。我尝试单击其帮助图标,但它再次冻结。 我再次退出 Linux 并重新登录。这一次,重新登录后,我决定删除 Cairo Dock 的所有配置文件,认为其中一个...

Admin

先决条件信息
process-management

先决条件信息

我正在查看,这是启动程序的dmenu_run默认脚本,并看到其中的这一部分引起了我的兴趣:dmenu [..other stuff..] | dmenu | sh & 所以我做了一些测试。 先决条件信息 我正在运行 GNU/Linux。 sh在dash我的系统上。我的登录外壳是bash. st和xterm是终端模拟器。 替换为测试期间创建的窗口$XTERMPID的 PID 。xterm您可以使用xprop它来获取它。 xterm似乎不会产生日志输出,除非出现问题。您可以将其替换为另一个实际生成日志输出以执行该部分测试的程序。 测试 场景#1 - 运行...

Admin

线程名称:/proc/pid/comm 是否始终与 /proc/pid/status 的 Name: 行和 /proc/pid/stat 的第二个字段相同?
process-management

线程名称:/proc/pid/comm 是否始终与 /proc/pid/status 的 Name: 行和 /proc/pid/stat 的第二个字段相同?

Linux 线程或分叉进程可能会更改文件系统ps中可见的名称和/或其命令行/proc。 使用该python-setproctitle包时,相同的更改发生在/proc/pid/cmdline、/proc/pid/comm、和 的第二个字段中Name:,其中仅显示完整长度,其他三个位置显示更改名称的前 15 个字符。/proc/pid/status/proc/pid/statcmdline 当观察多线程ruby进程时,看起来/proc/pid/cmdline保持不变,但其他三个位置显示线程名称,被截断为 15 个字符。 man prctl告诉 是/proc/pi...

Admin

在“进程组”中启动多个终端窗口,以便在任何一个进程终止时可以杀死剩余的进程
process-management

在“进程组”中启动多个终端窗口,以便在任何一个进程终止时可以杀死剩余的进程

我有一个启动 3 个终端模拟器窗口的脚本: #!/bin/sh terminator --role='terminator-left' 2>/dev/null & sleep 0.1 terminator --role='terminator-center' 2>/dev/null & sleep 0.1 terminator --role='terminator-right' 2>/dev/null & (我使用 --role 选项,以便我可以自动将窗口放置在不同的显示器上,在我的 openbox 配置文件中定...

Admin

使用集群计算机运行任意二进制程序
process-management

使用集群计算机运行任意二进制程序

我有 3 个 VPS。假设master、slave1、slave2。 它们的规格是相同的。 处理器:1CPU 内存:1GB 磁盘:10GB 网络:局域网内互相运行 我希望在主 VPS 上运行的任何任意二进制程序(进程)都被视为一个 VPS。这意味着主 VPS 的工作负载将通过网络分担给从属 VPS。 所以程序将看到的是,它在具有规范的计算机上运行: 处理器:3CPU 内存:3GB 磁盘:30GB 问题是,有没有任何协议或服务可以像这样结合计算能力? 组合内存 (RAM) 或存储 (SSD)。我正在考虑将 ramfs 安装到每个从站的安装点中。然后为每...

Admin

为什么“kill -0”会在不存在的进程上返回成功?
process-management

为什么“kill -0”会在不存在的进程上返回成功?

我使用的是 Ubuntu 22.04.3 LTS(Jammy Jellyfish)。 $ ps -p 1635 PID TTY TIME CMD $ kill -0 1635 ; echo $? 0 $ type kill kill is a shell builtin $ echo $BASH_VERSION 5.1.16(1)-release $ mount|grep proc proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) 我希望kill -0能回来bash: ...

Admin

Nodejs从v10.24.1升级到v16.15.1后pm2无法运行nodejs微服务
process-management

Nodejs从v10.24.1升级到v16.15.1后pm2无法运行nodejs微服务

我已经在我的centos机器上从nodejs 10.24.1升级到16.15.1。并将我的 pm2 更新到最新版本,并运行 pm2 更新所有成功运行的微服务进程。但在 rebbot 上,Pm2 无法启动任何进程并出现错误,因为内存中 Pm2 数据不足。每次重新启动时都会发生这种情况。 ...

Admin

Fuser 显示不存在的进程,因此 NVIDIA GPU 重置失败
process-management

Fuser 显示不存在的进程,因此 NVIDIA GPU 重置失败

我正在尝试重置仍占用内存但没有进程使用它的 NVIDIA A100 卡。首先,我使用任何 NVIDIA 卡杀死了所有进程 sudo fuser -k /dev/nvidia* 然后运行重置命令 sudo nvidia-smi -r 然而,它告诉我,仍然有进程使用 GPU。当我运行时sudo fuser -v /dev/nvidia*,它会列出一些gpustat进程nvidia-smi及其 PID。但是,ps aux | grep $PID不会返回任何内容(grep进程本身除外)并sudo kill $PID产生kill: ($PID): No such ...

Admin

如何使用 pgrep (或其他工具)查找同名的多个进程之一?
process-management

如何使用 pgrep (或其他工具)查找同名的多个进程之一?

我有几个正在运行的 bash 脚本。它们之间唯一不同的是 pid。我想写一个像这样的脚本这只监视一个特定的 bash 进程并排除任何子进程。我见过这问题,但在这种情况下,进程名称不同,您只需编写精确的正则表达式即可。 目前,如果我这样做 % pgrep bash 40583 47095 48133 49244 如果我这样做 % pgrep -P 47095 47099 50151 我想做类似的事情 % pgrep bash -P 47095 然后得到结果 47095 # (i.e. no daughte...

Admin

我怎样才能强制linux限制我每天玩“游戏”的时间,这样可以防止root覆盖?
process-management

我怎样才能强制linux限制我每天玩“游戏”的时间,这样可以防止root覆盖?

问题: 与电子游戏成瘾作斗争。 https://www.reddit.com/r/Steam/comments/v0wj7i/is_there_a_way_to_limit_gaming_time/ 几乎没有现有的方法来限制游戏、外部治疗。 我需要root工作。 root赋予超越任何发明限制的权力。 工具: 我是一个相当有才华的 Qt 程序员,但我对 Linux 架构只是中等程度的熟悉。如果需要的话我愿意接触内核代码。 我有很多是时候解决这个问题了。 想法: 如果我拥有一台机器: 我可以用它做任何事。 没有我克服不了的障碍。 然而,重新...

Admin

语境
process-management

语境

语境 在里面主管文件,我可以读取以下参数,用于supervisorctl add和supervisorctl remove控制命令: 添加<名称> [...] 激活进程/组配置中的任何更新 删除<名称> [...] 从活动配置中删除进程/组 问题 我不确定系统上运行的进程“激活”配置更新的具体含义,也不确定从“活动配置”中“删除”进程/组的具体含义。 问题 这两个命令到底是做什么的? 当没有事先修改supervisord配置文件时? 在使用这些配置文件之前何时修改过配置文件? (使用过和未使用过的情况supervisorct...

Admin

将脚本嵌入到 docker 容器中以在主进程启动后运行
process-management

将脚本嵌入到 docker 容器中以在主进程启动后运行

对于特定的 docker 映像(基于 alpine),我想运行一些自定义代码后容器启动。我希望该代码位于容器内,因此它易于使用并且一切都是独立的。通常我会覆盖容器的入口点或命令,但在这种情况下这是不可能的。 我的解决方案: docker-compose.yml volumes: - ./entrypoint-custom.sh:/entrypoint-custom.sh:ro entrypoint: /entrypoint-custom.sh # override Dockerfile default of '/someapp' entryp...

Admin

如何在脚本中停止“tail -f”并在满足特定条件时退出?
process-management

如何在脚本中停止“tail -f”并在满足特定条件时退出?

我正在尝试编写一个用于管理超级计算机上的作业的脚本。细节并不重要,但关键是脚本tail -f一旦出现就会启动到文件。现在这将永远运行,但我想在检测到作业完成后彻底停止它并退出脚本。 不幸的是我被困住了。我尝试了多种解决方案,但它们都没有退出脚本,即使在检测到作业退出后它仍然继续运行。下面的版本似乎是最合乎逻辑的版本,但这个版本也将永远运行。 我应该如何解决这个问题?我对 bash 很熟悉,但还不是很高级。 #!/bin/bash # get the path to the job script, print help if not passed jobsc...

Admin

识别可疑的 bash 进程(CPU 和 RAM 使用率较高)
process-management

识别可疑的 bash 进程(CPU 和 RAM 使用率较高)

几天前,我注意到我的 Arch 系统上的 htop 中有一个 bash 进程,其 cpu 和 RAM 使用率相对较高且波动。开始一一关闭窗口以尝试精确定位它,当我关闭 Firefox 时,它也杀死了该进程。 然后我上网寻找答案,发现了这个位置第二次和第三次我注意到它时,我尝试了一些建议,但我不知道如何解释输出(下面发布)。 作为参考,在第二次和第三次目击中,它的 PID 分别为 6774 和 13054。每次关闭 Firefox 都会杀死它。我在两天的时间里注意到了这一点。 当我启动 Firefox 时,它并不总是启动。登录后,我在 htop 中过滤了“...

Admin