如何为所有远程登录的用户设置默认进程调度优先级(“nice”值)?

Posted

技术标签:

【中文标题】如何为所有远程登录的用户设置默认进程调度优先级(“nice”值)?【英文标题】:How to set default process scheduling priority ('nice' value) for all remotely logged users? 【发布时间】:2010-08-30 12:17:42 【问题描述】:

我的桌面允许远程访问。我在本地工作,有时其他人使用 ssh/telnet/ftp/rsh 登录。他们的流程与我的流程具有相同的优先级。

我想将远程登录的人的所有进程的优先级(“nice”值)设置为更高的值,例如10. 我该怎么做?

我尝试使用 pam_group 为这样的人动态分配一个组,然后 pam_limits 设置优先级,但是有两个问题:

    似乎 pam_limits 不使用/查看 pam_group 设置的组。我检查了远程登录后设置了组,并且在限制用户名时正确更改了优先级,而不是动态设置组。

    我不确定是否可以为所有服务设置限制,例如 telnet 或 rsh - 至少我在 /etc/pam.d 中没有看到任何具有此类名称的文件

    李>

我无法在limits.conf 中对用户列表进行硬编码,因为我使用的是NIS。 还有其他方法吗?我想要实现的是能够在不因其他(远程)用户导致性能下降的情况下工作......

【问题讨论】:

这个问题属于 serverfault.com。也许你更容易给自己更高的优先级,而不是给其他人更低的优先级.. 【参考方案1】:

默认优先级(良好级别)可以通过/etc/security/limits.conf 设置。示例:

#<domain>      <type>  <item>         <value>
mary           hard    priority       15

请注意,&lt;item&gt; 必须是 priority,而不是 nice,其含义不同。

【讨论】:

【参考方案2】:

如果您只想为当前运行的应用程序设置 nice 优先级,您可以查看“renice”。它甚至需要一个用户/组参数,因此您可以为所述用户/组指定所有进程。

至于设置默认优先级,我不确定。我目前正在研究它,如果有什么我会添加另一个答案。

【讨论】:

嗨@Eddie Parker 你不能通过更改应用程序(比如说缩放)运行组来实现这一点,并将该组设置为在/securty 中具有这样的限制吗?

以上是关于如何为所有远程登录的用户设置默认进程调度优先级(“nice”值)?的主要内容,如果未能解决你的问题,请参考以下文章

Linux系统进程调度

代码优先迁移:如何为新属性设置默认值?

如何为SVN的所有本地用户设置默认代理设置?

如何为某些 HTML 页面部分的屏幕阅读器设置优先级?

如何为所有远程用户要求 SSL

如何为运行 WHM 的服务器设置默认的 Apache 登录页面?