我只是想知道什么是范围。然而,这(https://www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface/)是一个很好的总结,同时对我来说有点困惑。
部分文章:
“服务、范围和切片可以由管理员自由创建,也可以由程序动态创建。”
我之前在该主题上发布了这个答案,看看是否为您解答。
简而言之,作用域是为进程树创建 cgroup 的一种方式,而 systemd 不是产生进程本身的那个(因为它总是为服务单元做的)。
Usingsystemd-run --scope
是启动新范围的一个很好的例子(进程本身将由 启动systemd-run
,而不是由 systemd PID 1启动。)
使用自定义范围有什么好处,目的是什么?
从隔离的角度来看,类似于运行一个服务。您可以对特定进程组的 CPU、内存等资源进行记账和限制。
使用服务以外的范围的好处是您可以从当前环境启动进程,而不必通过系统管理器启动它。特别是,这允许您在连接到本地上下文的范围内运行进程,例如 X11 服务器、SSH 连接或访问 ssh-agent 等。您可以移动任何进程(甚至是现有进程) ) 到您创建的范围,而服务将始终启动新进程,并且通常具有经过消毒的环境。
创建范围(无需编程)的唯一方法是
systemd-run --scope
?
还有其他方法可以启动范围。例如,使用该busctl
工具是一种可能性,但很难判断您是否将其视为“编程”...但这将允许您将现有流程移动到新创建的范围,这systemd-run
可以'自己做。
我希望你发现这些指针有帮助。
归档时间: |
|
查看次数: |
3148 次 |
最近记录: |