我想允许用户在我的系统中设置nice
低于 0 的级别(nice
实际上可以是任何级别)。设置更改后,我以受影响用户组的用户身份再次登录进行测试,并尝试:
nice -n -18 sleep 1
它会不断产生以下消息:
nice: cannot set niceness: Permission denied
我还检查ulimit -a
在保存我的更改后哪些没有改变limits.conf
。
我尝试阅读一些谷歌搜索结果。并在我的搜索结果中得出了以下结论/etc/security/limits.conf
:
@mygroup soft nice -20
@mygroup hard nice 18
我也尝试了相反的操作,因为 nice 是反转的(所以hard -20
和soft 18
),但没有效果。
正如一些谷歌搜索结果所建议的那样,我确认了以下行:
session required pam_limits.so
在我的文件中没有注释/etc/pam.d/login
(我第一次检查时没有)。
关于如何实现此功能有什么建议吗?
我正在使用 Ubuntu 12.04 precise。
答案1
我最终启动了一个可以进行更多操作的服务器,并尝试了更多组合。我无法获得hard
或soft
玩得愉快(明白了吗?),所以我尝试了一下,-
它成功了。我也确认了 Ubuntu 14.04 的可靠性。
我认为-
很难和软限制:
@mygroup - nice -20
一旦你登录和退出,这确实有效。你不会看到任何与 相关的条目nice
。ulimit -a
你应该寻找的是:
scheduling priority (-e) 40
稍后nice
可能会被视为 [-20 19]。此项的默认值为 0。
使用破折号似乎可以任何优先权。所以如果有人能得到hard
并soft
工作,请发表评论或回答。谢谢。