ulimit -r返回不同的值

我在系统范围的/etc/security/limits.conf中添加了以下两行:

* soft rtprio 55 * hard rtprio 55 

在系统重新启动之后,根据我在机器上访问我的用户帐户的方式,我得到了两个不同的结果。

 user@client# ssh user@server user@server# ulimit -r 55 

然后我注销并以root身份重新login

 user@client# ssh root@server root@server# su - user user@server# ulimit -r 0 

我在.bashrc和其他地方都没有特殊的设置,至less我是这么认为的。

为什么发生这种情况?

你必须看看sshsu的PAM配置。 我想他们是不一样的。

例如在我的系统:

 $ grep limit /etc/pam.d/su # Sets up user limits, please uncomment and read /etc/security/limits.conf # (Replaces the use of /etc/limits in old login) # session required pam_limits.so $ grep limit /etc/pam.d/sshd # access limits that are hard to express in sshd_config. # Set up user limits from /etc/security/limits.conf. session required pam_limits.so 

正如您在其中一种情况下所看到的那样, pam_limits行被注释了。 我想你也有这样的事情。